//======Name========================================// Poring Catcher Event//======Version=====================================// 1.0//======Author(s)===================================// Sandbox, Clydelion//======Comments====================================// In loving memory of AstralRO//==================================================prontera,156,184,3 script Poring Catcher Warper 1_SHADOW_NPC,{if(getgmlevel() >= .gmsetting){if(!.start){mes"start the event ?";next;if(select("Yes", "No")==2)close;donpceventstrnpcinfo(0)+"::OnStart";close;}else{mes"Join or Abort the event ?";next;if(select("Join", "Abort")==1){warp"poring_w03", rand(102,104), 101;end;} .skip=1;awakestrnpcinfo(0);// donpcevent strnpcinfo(0)+"::OnEnd";close;}}elseif( .start==1){mes"Do you want to join the Poring Catcher Event?";select("Yes");warp"poring_w03", rand(102,104), 101;end;}elseif( .start==2){mes"Too late, the event has already started";close;}mes"No Event right now";close;OnInit: .eventlasting=30*60; // how many seconds the event will last ? default : 30*60 = 30 minutes .gmsetting=60; // in which level the GMs can control this event ? .fakes=3; // the amount of fakes poring * 12 * number of players in the mapssetarray .rewardwin, 20003, 10; // edit the reward items here .seconds=1000; // for debug purpose only, how many mili-second = 1 second ?bindatcmd"poring_catcher", strnpcinfo(0)+"::OnStart", .gmsetting, 100; .rewardwinsize=getarraysize( .rewardwin);getmapxy .map$, .x, .y, 1;mapwarp"poring_w03", .map$, .x, .y;end;OnClock0705:// put all the start timer hereOnClock1105:OnClock1905:OnClock2305:OnStart: .start=1;announce"Poring Catcher Event: We are going to have a Poring Catcher Event",bc_all,0xFF7F50;sleep1* .seconds*!.skip;announce"Poring Catcher Event: For those who want to join, please come to Prontera!",bc_all,0xFF7F50; //Edit to where would you place the warpersleep1* .seconds*!.skip;announce"Poring Catcher Event: The Warper would be open for 1 minute",bc_all,0xFF7F50;sleep30* .seconds*!.skip;announce"Poring Catcher Event: Last 30 Seconds.",bc_all,0xFF7F50;sleep30* .seconds*!.skip;announce"Poring Catcher Event: Warper Closed.",bc_all,0xFF7F50;if(!getmapusers("poring_w03"))goto OnEnd; .start=2;mapannounce"poring_w03","We are about to start the Poring Catcher Event.",bc_blue;sleep1* .seconds*!.skip;mapannounce"poring_w03","Rules are simple:",bc_blue;sleep1* .seconds*!.skip;mapannounce"poring_w03","In a few seconds I'm going to spawn tons of porings..",bc_blue;sleep1* .seconds*!.skip;mapannounce"poring_w03","..All you need to do is kill the Poring with the right name..",bc_blue;sleep1* .seconds*!.skip;mapannounce"poring_w03","..Which would be Poring.",bc_blue;sleep1* .seconds*!.skip;mapannounce"poring_w03","If you kill the wrong one, you will be freeze for seconds!",bc_blue;sleep3* .seconds*!.skip;mapannounce"poring_w03","That's it.. Now let's get this on!",bc_blue;sleep3* .seconds*!.skip;mapannounce"poring_w03","Ready...",bc_blue;sleep1* .seconds*!.skip;mapannounce"poring_w03","Get Set..",bc_blue;sleep1* .seconds*!.skip;mapannounce"poring_w03","Go!",bc_blue;sleep1* .seconds*!.skip;areamonster"poring_w03",95,108,113,87,"Poring",1002,1, strnpcinfo(0)+"::OnCorrectKilled";areamonster"poring_w03",95,108,113,87,"Poking",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";areamonster"poring_w03",95,108,113,87,"Poiring",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";areamonster"poring_w03",95,108,113,87,"Poling",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";areamonster"poring_w03",95,108,113,87,"Porng",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";areamonster"poring_w03",95,108,113,87,"pH0ur1n6",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";areamonster"poring_w03",95,108,113,87,"P0ring",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";areamonster"poring_w03",95,108,113,87,"Porong",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";areamonster"poring_w03",95,108,113,87,"Powing",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";areamonster"poring_w03",95,108,113,87,"Poriing",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";areamonster"poring_w03",95,108,113,87,"Boring",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";areamonster"poring_w03",95,108,113,87,"Lolwut!?",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";areamonster"poring_w03",95,108,113,87,"Kill me to win!",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";sleep .eventlasting* .seconds*!.skip; .skip=0;if(getmapusers("poring_w03"))goto OnEnd;end;OnEnd:announce"No one won the Poring Catcher Event!",bc_all,0xFF7F50;killmonsterall"poring_w03";mapwarp"poring_w03", .map$, .x, .y; .start=0;end;OnCorrectKilled:for( .@i =0; .@i < .rewardwinsize; .@i +=2)getitem .rewardwin[ .@i ], .rewardwin[ .@i +1];announcestrcharinfo(0)+" won the Poring Catcher Event!",bc_all,0xFF7F50;killmonsterall"poring_w03";mapwarp"poring_w03", .map$, .x, .y; .start=0;awakestrnpcinfo(0);end;OnFakeKilled:// dispbottom "You killed the wrong Poring! Yerrrrrrrrrrrr out!";// warp .map$, .x, .y;// if ( !getmapusers( "poring_w03" ) ) goto OnEnd;dispbottom"You killed the wrong Poring!";sc_start2SC_FREEZE, 9000,0,10000; // 9 seconds to freeze// sc_start2 SC_STONE, 9000,0,10000;// sc_start2 SC_STUN, 9000,0,10000;// sc_start2 SC_SLEEP, 9000,0,10000;end;}poring_w03 mapflag nopenaltyporing_w03 mapflag nolootporing_w03 mapflag noskillporing_w03 mapflag nowarptoporing_w03 mapflag nowarpporing_w03 mapflag noteleportporing_w03 mapflag nomemoporing_w03 mapflag nosave SavePointporing_w03 mapflag nobranchporing_w03 mapflag nodrop