Jump to content

Question

1 answer to this question

Recommended Posts

Posted (edited)

prontera,162,173,4	script	SafeZoneEvent	100,{
	if(.event==2)end;
	if(!.event&&getgmlevel()<10) {
		mes "Sorry but the event isn't active right now.";
		mes "Please come back at a later time.";
		close;
	} else if (!.event&&getgmlevel()>10) {
		mes "Would you like to start the event?";
		next;
		if(select("Yes:No")&2) { mes "Alright, maybe later then."; emotion e_sigh,0; close; }
		set .event,1;
		initnpctimer;
		announce "["+strcharinfo(0)+"] Started the safe zone event in Prontera!",bc_all|bc_yellow;
		close;
	}
	select("[Join]");
	warp "ggpro",19,19;
	set .event,1;
	close;
OnTimer5000:
	mapannounce "ggpro","[System]:Game Start",bc_map;
	sleep 3000;
	for(set .@i,1;.@i<=10;set .@i,.@i+1)
		callsub Start;
	mapannounce "ggpro","[System]:Game Over",bc_map;
	sleep 3000;
	callsub WarpNoSafe;
	end;
Start:
	set .event,2;
	set .e_x,rand(1,35);
	set .e_y,rand(1,35);
	set .e_t,5;
	callsub WarpShow,.e_x,.e_y;
	while(1) {
		sleep 1000;
		if(set(.e_t,.e_t-1) < 0)
			break;
		else
			callsub ShowEffect;
	}
	callsub WarpNoSafe,.e_x,.e_y;
	sleep 1000;
	return;
OnInit:
	callsub WarpNoSafe;
	end;
WarpNoSafe:
	if(!getarg(0,0)&&!getarg(1,0))
	{
		mapwarp "ggpro","kurag",155,166;
		set .event,0;
		set .e_x,0;
		set .e_y,0;
		set .e_t,0;
		return;
	}
	areawarp	"ggpro",0,0,40,getarg(1)-1,"prontera",150,180;
	areawarp	"ggpro",0,getarg(1)+3,40,40,"prontera",150,180;
	areawarp	"ggpro",0,getarg(1),getarg(0)-1,getarg(1)+2,"prontera",150,180;
	areawarp	"ggpro",getarg(0)+3,getarg(1),40,getarg(1)+2,"prontera",150,180;
	return;
ShowEffect:
	for(set .@i,1; .@i<=8; set .@i,.@i+1)
		initnpctimer "SafeZoneEvent#Effect"+.@i;
	return;
WarpShow:
	movenpc	"SafeZoneEvent#Effect1",getarg(0),getarg(1);
	movenpc	"SafeZoneEvent#Effect2",getarg(0)+1,getarg(1);
	movenpc	"SafeZoneEvent#Effect3",getarg(0)+2,getarg(1);
	movenpc	"SafeZoneEvent#Effect4",getarg(0),getarg(1)+1;
	movenpc	"SafeZoneEvent#Effect5",getarg(0),getarg(1)+2;
	movenpc	"SafeZoneEvent#Effect6",getarg(0)+1,getarg(1)+2;
	movenpc	"SafeZoneEvent#Effect7",getarg(0)+2,getarg(1)+2;
	movenpc	"SafeZoneEvent#Effect8",getarg(0)+2,getarg(1)+1;
	return;

OnMinute00:
	if(!.event ) {
		announce "SafeZoneEvent started in Prontera!",bc_all|bc_yellow;
		set .event,1;
		initnpctimer;
	}
	end;
}
ggpro,1,1,0	script	SafeZoneEvent#Effect1	139,{
OnTimer1:
	specialeffect 59;
	end;
	
}
ggpro,1,1,0	duplicate(SafeZoneEvent#Effect1)	SafeZoneEvent#Effect2	139
ggpro,1,1,0	duplicate(SafeZoneEvent#Effect1)	SafeZoneEvent#Effect3	139
ggpro,1,1,0	duplicate(SafeZoneEvent#Effect1)	SafeZoneEvent#Effect4	139
ggpro,1,1,0	duplicate(SafeZoneEvent#Effect1)	SafeZoneEvent#Effect5	139
ggpro,1,1,0	duplicate(SafeZoneEvent#Effect1)	SafeZoneEvent#Effect6	139
ggpro,1,1,0	duplicate(SafeZoneEvent#Effect1)	SafeZoneEvent#Effect7	139
ggpro,1,1,0	duplicate(SafeZoneEvent#Effect1)	SafeZoneEvent#Effect8	139
Please stop remaking topics this is the second time you've done it. /pif

Edit: Replaced test maps and added timer to the right npc.

Edited by Skorm

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...