dice event.
event will start every 2 hours as requested
prize set already as requested 501,502,503,504,#event_points,
//##########################################################################
//By: ____ _ __ __ ____ _____
// | \ ___ __ __ _ | | \ \ / /_ _ _ / ___\ / ____|
// | || | / _ \\ \ / /| || | \ \ / /| || \ | || | ___ | (___
// | || || __/ \ \/ / | || |__ \ \/\/ / | || \| || |___|\ \___ \
// __|____/__\___|__\__/__|_||____|_____\_/\_/__|_||_|\__|_\_____/_____) |
//|_____________________________________________________________________/
//
//##########################################################################
//
//== Dice Event
//
//##########################################################################
//== Edited by King R
//== Removed 30 Min Timer and added trigger NPC
//== Able to set prize and amount via the NPC
//== Added Mapflags
//== Edited area warps
//##########################################################################
- script Dice#disable -1,{
end;
OnInit:
disablenpc "prtevent";
hideonnpc "Dice#evnt1";
end;
OnMinute120:
announce "Mr. Dice: The Dice event will be starting shortly.",0;
sleep2 10000;
announce "Mr. Dice: Those who want to play, please proceed to the glemior 235 327.",0;
sleep2 10000;
announce "Mr. Dice: After 1 Minute the Portal will close.",0;
sleep2 10000;
announce "Mr. Dice: Please go to the glemior 235 327 and enter the Warp Portal now if you want to join.",0;
enablenpc "prtevent";
initnpctimer;
end;
OnTimer30000:
announce "Mr. Dice: Last 30 seconds.",0;
sleep2 5000;
announce "Mr. Dice: If you want to join please enter the Warp Portal in glemior 235 327.",0;
end;
OnTimer50000:
announce "Mr. Dice: Last 10 seconds.",0;
end;
OnTimer55000:
announce "Mr. Dice: 5.",0;
end;
OnTimer56000:
announce "Mr. Dice: 4.",0;
end;
OnTimer57000:
announce "Mr. Dice: 3.",0;
end;
OnTimer58000:
announce "Mr. Dice: 2.",0;
end;
OnTimer59000:
announce "Mr. Dice: 1.",0;
end;
OnTimer60000:
announce "Mr. Dice: Time's up.",0;
end;
OnTimer61000:
announce "Mr. Dice: The next Dice event will start after 30 minutes.",0;
end;
OnTimer67000:
disablenpc "prtevent";
donpcevent "Dice#evnt1::OnEnable";
stopnpctimer;
end;
}
glemior,237,334,4 script Mrs. Dice 667,{
if (getgmlevel() == 99) goto Dice_Admin;
mes "[Mrs. Dice]";
mes "Hello " + strcharinfo(0) + ", my husband Mr. Dice is currently out gambling.";
mes "That buffoon is always losing our money... *sigh*";
close;
Dice_Admin:
mes "[Mrs. Dice]";
mes "Hello GM " + strcharinfo(0) + ", what do you want to do?";
menu "Check Prize",checkprize,"Set Prize",setprize,"No Thanks",enddice;
startdice:
next;
mes "[Mrs. Dice]";
mes "Ok, I'll call him this instant.";
close2;
goto startdiceevent;
checkprize:
next;
mes "[Mrs. Dice]";
mes "The current prize is ^008000"+ $get_item_amount +" "+ getitemname($get_item_id) +"^000000";
next;
goto Dice_Admin;
setprize:
next;
mes "[Mrs. Dice]";
mes "What should the prize for winning be? Please input the ID";
input $get_item_id;
next;
mes "[Mrs. Dice]";
mes "How many if this item should we give away?";
input $get_item_amount;
next;
mes "[Mrs. Dice]";
mes "So, the prize is ^008000"+ $get_item_amount +" "+ getitemname($get_item_id) +"^000000? Wonderful dear.";
next;
goto Dice_Admin;
enddice:
next;
mes "[Mrs. Dice]";
mes "Ok darling, nice seeing you.";
close;
}
//--------------------------------------------------
glemior,235,327,0 warp prtevent 2,2,quiz_01,204,90
//--------------------------------------------------
quiz_01,204,93,6 script Dice#evnt1 715,{
//--------------------------------------------------
mes "[Mr. Dice]";
mes "Please tell me your name.";
next;
input .@name$;
if(.@name$ != strcharinfo(0)) {
mes "[Mr. Dice]";
mes "Are you sure thats your character name?";
close;
}
mes "[Mr. Dice]";
mes "Congrats. You've won.";
close2;
announce "Mr. Dice: We have a winner! well done "+.@name$+".",0;
getitem 501,5;
getitem 502,5;
getitem 503,5;
getitem 504,5;
#CASHPOINT += 1;
warp "glemior",237,332;
hideonnpc "Dice#evnt1";
end;
OnEnable:
mapannounce "quiz_01","Mr. Dice: We are about to start the Dice event.",0;
sleep2 5000;
mapannounce "quiz_01","Mr. Dice: But before we start the event here's how to play the game...",0;
sleep2 5000;
mapannounce "quiz_01","Mr. Dice: I'm only gonna say this once so read carefully.",0;
sleep2 5000;
mapannounce "quiz_01","Mr. Dice: I'm going to roll a number, 1 to 4. Then I'll do a count down from 5 to 0.",0;
sleep2 5000;
mapannounce "quiz_01","Mr. Dice: All you have to do is go stand on the box of the number you want.",0;
sleep2 5000;
mapannounce "quiz_01","Mr. Dice: For example, If I roll a number 4, All the players standing on numbers 1 to 3 will be warped back to town.",0;
sleep2 5000;
mapannounce "quiz_01","Mr. Dice: We will do it until we only have 1 player left on the map.",0;
sleep2 5000;
mapannounce "quiz_01","Mr. Dice: Oh yeah! Before I forget you MUST GO INSIDE THE BOX, because if you're caught standing on the stairs you'll be automatically disqualified.",0;
sleep2 5000;
mapannounce "quiz_01","Mr. Dice: Simple huh?.. Let's play...",0;
sleep2 5000;
goto L_Start;
end;
L_Start:
if(getmapusers("quiz_01") == 1) goto L_Champ;
if(getmapusers("quiz_01") == 0) goto L_None;
if(getmapusers("quiz_01") > 1) {
mapannounce "quiz_01","Mr. Dice: . . . . .",0;
set $@number, rand(1,4);
sleep2 10000;
mapannounce "quiz_01","Mr. Dice: I have rolled. Please pick a number and go stand there.... GO!",0;
sleep2 10000;
mapannounce "quiz_01","Mr. Dice: 5",0;
sleep2 5000;
mapannounce "quiz_01","Mr. Dice: 4",0;
sleep2 4000;
mapannounce "quiz_01","Mr. Dice: 3",0;
sleep2 3000;
mapannounce "quiz_01","Mr. Dice: 2",0;
sleep2 2000;
mapannounce "quiz_01","Mr. Dice: 1",0;
sleep2 1000;
mapannounce "quiz_01","Mr. Dice: Time's up.",0;
donpcevent "evnt#1::OnEnable";
mapannounce "quiz_01","Mr. Dice: The winning number is "+$@number+".",0;
if(($@number != 1) && ($@number != 2) && ($@number != 3)) goto L_Lose1;
if(($@number != 1) && ($@number != 2) && ($@number != 4)) goto L_Lose2;
if(($@number != 1) && ($@number != 3) && ($@number != 4)) goto L_Lose3;
if(($@number != 2) && ($@number != 3) && ($@number != 4)) goto L_Lose4;
end;
}
L_Lose1:
areawarp "quiz_01",183,81,191,59,"glemior",237,332;
areawarp "quiz_01",195,81,203,59,"glemior",237,332;
areawarp "quiz_01",207,81,215,59,"glemior",237,332;
goto L_Start;
end;
L_Lose2:
areawarp "quiz_01",183,81,191,59,"glemior",237,332;
areawarp "quiz_01",195,81,203,59,"glemior",237,332;
areawarp "quiz_01",219,81,227,59,"glemior",237,332;;
goto L_Start;
end;
L_Lose3:
areawarp "quiz_01",183,81,191,59,"glemior",237,332;
areawarp "quiz_01",207,81,215,59,"glemior",237,332;
areawarp "quiz_01",219,81,227,59,"glemior",237,332;
goto L_Start;
end;
L_Lose4:
areawarp "quiz_01",195,81,203,59,"glemior",237,332;
areawarp "quiz_01",207,81,215,59,"glemior",237,332;
areawarp "quiz_01",219,81,227,59,"glemior",237,332;
goto L_Start;
end;
L_Champ:
mapannounce "quiz_01","Mr. Dice: Come to me and tell me your name.",0;
hideoffnpc "Dice#evnt1";
end;
L_None:
//disablenpc "Dice#evnt1";
hideonnpc "Dice#evnt1";
end;
}
- script evnt#1 -1,{
OnEnable:
areawarp "quiz_01",182,94,228,88,"glemior",237,332;
areawarp "quiz_01",185,87,188,82,"glemior",237,332;
areawarp "quiz_01",197,87,200,82,"glemior",237,332;
areawarp "quiz_01",209,87,212,82,"glemior",237,332;
areawarp "quiz_01",221,87,224,82,"glemior",237,332;
end;
}
// -- Mapflags
quiz_01 mapflag nowarp
quiz_01 mapflag nowarpto
quiz_01 mapflag noteleport
quiz_01 mapflag nosave
quiz_01 mapflag nomemo
quiz_01 mapflag nobranch
poring event.
event will start every 1 and half hour as requested
prize set already as requested 501,502,503,504,#event_points,
//= Poring Catcher - Auto Event Script
//===== By: =================================================================================
//= Washi - www.EarthBound-RO.com
//===== Compatible With: ====================================================================
//= Any eAthena Version
//===== Description: ========================================================================
//= Single NPC that starts automatically starts every hour.
//===== Additional Comments: ================================================================
//= This script is a combenation of the Dice Event by [Mahina]
//= and the origonal Poring Catcher Event by [Wild Karrd]
//===========================================================================================
//= OnMinute - Change this to the minute you would like this script to load. [ LINE 22 ]
//= getitem - Change this to the Item ID of your prize. [ LINE 118 ]
//===========================================================================================
- script poring#announcer -1,{
OnInit:
disablenpc "poringevent";
hideonnpc "Poring Catcher#evnt2";
end;
OnMinute90: // SET THE 30 TO THE MINUTE YOU WANT THE EVENT TO START EACH HOUR.
announce "Poring Catcher : It's time to play some Poring Catcher!",0;
killmonster "poring_w01","All";
sleep2 10000;
announce "Poring Catcher : Please make your way to the centre of glemior.",0;
sleep2 10000;
announce "Poring Catcher : After one minute the portal will close.",0;
sleep2 10000;
announce "Poring Catcher : Enter the warp portal now if you want to join.",0;
enablenpc "poringevent";
initnpctimer;
end;
OnTimer30000:
announce "Poring Catcher : Last 30 seconds.",0;
sleep2 5000;
announce "Poring Catcher : Hurry to the centre of glemior if you want to join.",0;
end;
OnTimer50000:
announce "Poring Catcher : Last 10 seconds.",0;
end;
OnTimer55000:
announce "Poring Catcher : 5.",0;
end;
OnTimer56000:
announce "Poring Catcher : 4.",0;
end;
OnTimer57000:
announce "Poring Catcher : 3.",0;
end;
OnTimer58000:
announce "Poring Catcher : 2.",0;
end;
OnTimer59000:
announce "Poring Catcher : 1.",0;
end;
OnTimer60000:
announce "Poring Catcher : Time's up. Portal Will Open again in one hour.",0;
end;
OnTimer67000:
disablenpc "poringevent";
donpcevent "Poring Catcher#evnt2::OnEnable";
stopnpctimer;
end;
}
//--------------------------------------------------
glemior,158,331,0 warp poringevent 2,2,poring_w01,106,129
//--------------------------------------------------
poring_w01,100,127,4 script Poring Catcher#evnt2 715,{
//--------------------------------------------------
mes "[Poring Catcher]";
if(PORING == 1) goto L_PORING;
mes "Please tell me your name";
next;
input .@name$;
if(.@name$ != strcharinfo(0)) {
mes "[Poring Catcher]";
mes "Are you sure thats your character name?";
close;
}
mes "[Poring Catcher]";
mes "Congrats. You've won.";
close2;
announce "Poring Catcher : All laugh at, "+.@name$+". - This player tried to cheat the system. Muhahahahaha!",0;
warp "glemior",164,328;
end;
L_PORING:
mes "Please tell me your name";
next;
input .@name$;
if(.@name$ != strcharinfo(0)) {
mes "[Poring Catcher]";
mes "Are you sure thats your character name?";
close;
}
mes "[Poring Catcher]";
mes "Congrats. You've won.";
close2;
announce "Poring Catcher : We have a winner, "+.@name$+". - Event Award Won!",0;
getitem 501,5;
getitem 502,5;
getitem 503,5;
getitem 504,5;
#CASHPOINT += 1;
// set zeny,zeny+1000000;
set PORING,0;
warp "glemior",164,328;
hideonnpc "Poring Catcher#evnt2";
end;
OnEnable:
mapannounce "poring_w01","Poring Catcher : I will be summoning 100 different Porings.",0;
sleep2 10000;
mapannounce "poring_w01","Poring Catcher : Only one of these Porings is the correct Poring.",0;
sleep2 10000;
mapannounce "poring_w01","Poring Catcher : The correct Poring is called [ Poring ], all the other Porings have different names.",0;
sleep2 10000;
mapannounce "poring_w01","Poring Catcher : Take your time because if you kill the wrong Poring, your out of the game.",0;
sleep2 10000;
mapannounce "poring_w01","Poring Catcher : The first player to kill the correct Poring wins.",0;
sleep2 10000;
mapannounce "poring_w01","Poring Catcher : That's that.. Now let's play...",0;
goto L_Start;
end;
L_Start:
mapannounce "poring_w01","Poring Catcher : 5",0;
sleep2 1000;
mapannounce "poring_w01","Poring Catcher : 4",0;
sleep2 1000;
mapannounce "poring_w01","Poring Catcher : 3",0;
sleep2 1000;
mapannounce "poring_w01","Poring Catcher : 2",0;
sleep2 1000;
mapannounce "poring_w01","Poring Catcher : 1",0;
sleep2 1000;
mapannounce "poring_w01","Poring Catcher : Lets Do This!",0;
areamonster "poring_w01",84,119,121,90,"Poring",1002,1,"poringwin::OnMobKilled";
areamonster "poring_w01",84,119,121,90,"Pouring",1002,10,"poringlose::OnMobKilled";
areamonster "poring_w01",84,119,121,90,"Proing",1002,10,"poringlose::OnMobKilled";
areamonster "poring_w01",84,119,121,90,"Poiring",1002,10,"poringlose::OnMobKilled";
areamonster "poring_w01",84,119,121,90,"Poing",1002,10,"poringlose::OnMobKilled";
areamonster "poring_w01",84,119,121,90,"I am not Poring",1002,5,"poringlose::OnMobKilled";
areamonster "poring_w01",84,119,121,90,"Gniriop",1002,1,"poringlose::OnMobKilled";
areamonster "poring_w01",84,119,121,90,"Porring",1113,1,"poringlose::OnMobKilled";
areamonster "poring_w01",84,119,121,90,"Porinng",1062,1,"poringlose::OnMobKilled";
areamonster "poring_w01",84,119,121,90,"Poriiing",1002,10,"poringlose::OnMobKilled";
areamonster "poring_w01",84,119,121,90,"PoriNgg",1002,10,"poringlose::OnMobKilled";
areamonster "poring_w01",84,119,121,90,"Porong",1002,10,"poringlose::OnMobKilled";
areamonster "poring_w01",84,119,121,90,"P0ring",1002,10,"poringlose::OnMobKilled";
areamonster "poring_w01",84,119,121,90,"Por1ng",1002,10,"poringlose::OnMobKilled";
areamonster "poring_w01",84,119,121,90,"Porng",1002,1,"poringlose::OnMobKilled";
end;
}
- script poringwin -1,{
OnMobKilled:
dispbottom "Poring : Congratulations. You've got me.";
set PORING,1;
atcommand "@doommap";
killmonster "poring_w01","All";
mapannounce "poring_w01","Poring Catcher : Come to me and tell me your name.",0;
hideoffnpc "Poring Catcher#evnt2";
end;
}
- script poringlose -1,{
OnMobKilled:
dispbottom "Poring Catcher : Wahaha, your a loser! - I wasnt the correct Poring.";
warp "glemior",164,328;
end;
}
// -- Mapflags
poring_w01 mapflag nowarp
poring_w01 mapflag nowarpto
poring_w01 mapflag noteleport
poring_w01 mapflag nosave
poring_w01 mapflag nomemo
poring_w01 mapflag nobranch
poring_w01 mapflag noloot
poring_w01 mapflag noskill
poring_w01 mapflag nopenalty
Disguise event.
event will start every 1 hour as requested
prize set already as requested 501,502,503,504,#event_points,
prontera,211,189,4 script Disguise Event 795,{
//--- Basic Script Configuration Options ---//
set .@npcname$,"[^0000FFDisguise NPC^000000]"; //<- NPC Name.
set $@GMLevel,80; //<- GM Level needed to be considered a GM.
//--- The Script ---//
if (getgmlevel()>=$@GMLevel){goto GM_Player;}
if ($@EventON){end;}
mes .@npcname$;
mes "Welcome, how may i be of assistance.";
menu "Information",iInfo,"Nothing, just passing through.",iNothing;
iInfo:
next;
mes .@npcname$;
mes "This event is actually quite simple";
mes "At the start of the event, I will disguise myself";
mes "into a monster randomly. You will then merely have to shout that monsters name outloud.";
next;
mes "If you get it correct, you get a prize. If not, then keep trying.";
mes "Thatis all there is to know about this event.";
close;
iNothing:
close;
GM_Player:
mes .@npcname$;
mes "Please select an Option to modify.";
menu "Turn ON/OFF Event",iEvent,"Event Settings",iSettings;
iEvent:
next;
mes .@npcname$;
if ($@EventON){mes "The Event is currently: [^0000FFON^000000]";
mes "Would you like to turn it OFF?";}
if (!$@EventON){mes "The Event is currently: [^FF0000OFF^000000]";
mes "Would you like to turn it ON?";}
menu "Yes",iYes,"No",iNothing;
iYes:
if ($@EventON)
{set $@EventON,0; set $@Timer,0;
setnpctimer 0; stopnpctimer;
announce "A GM has decided to turn the Disguise Event off. As a result no further prizes will be given.",bc_map | bc_blue;
deletepset 1;
setnpcdisplay "Disguise Event",997;
close;}
set $@EventON,1; set $@Timer,1; setnpctimer 0; initnpctimer;
set $@ResetCounter,$@ResetCounter+1;
announce "The Disguise Event will begin in 3 minutes.",bc_all;
announce "The Event is being held in prontera 211 189.",bc_all;
close;
iSettings:
next;
mes .@npcname$;
mes "Please select a setting to modify.";
menu "Monster Display",iMonster,"Number of Rounds",iRounds,"Prize Settings",iPrize;
iMonster:
callfunc "Monster_Display";
iRounds:
callfunc "Rounds";
iPrize:
callfunc "Prize";
OnInit:
defpattern 1,"([^:]+):.\\s*OMFGBBQLEETSAUCEGMOCEANRULESHAI!!.*", "iCorrect";
activatepset 1;
set $@EventON,0;
set $@Wait,0;
set $@Winner,0;
set $Points,$Points;
set $@ResetCounter,0;
set $Rounds,$Rounds;
set $Prize,$Prize;
set $PrizeAmt,$PrizeAmt;
set $Rule,$Rule;
setarray $@MVP[0],1038,1039,1046,1059,1086,1087,1112,1115,1147,1150,1157,1159,1190,1251,1252,1272,1312,1373,
1389,1399,1418,1492,1502,1511,1583,1623,1630,1646,1647,1648,1649,1650,1651,1658,1685,1688,
1708,1719,1734,1751,1768,1779,1785,1802,1832,1871,1874,1885,1917,1980,2022,2068,2087,2131,
2156,2165;
setarray $@BlackList[0], 1003,1006,1017,1021,1022,1027,1043,1075,1136,1137,1168,1171,1172,1173,1181,1210,1217,1218,
1222,1223,1224,1225,1226,1227,1228,1233,1284,1407,1411,1414,1495,1501,1900,1996,2000,2001,
2002,2003,2004,2005,2006,2007,2011,2012,2025,2028,2029,2030,2031,2032,2033,2034,2035,2036,
2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049,2050,2051,2052,2053,2054,
2055,2056,2057,2058,2059,2060,2061,2062,2063,2064,2065,2066,2067,2075,2076,2077,2078,2079,
2080,2081,2083,2084,2085,2086,2087,2088,2089,2090,2091,2092,2093,2094,2095,2096,2097,2098,
2099,2100,2101,2012,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113,2114,2115,2116,
2117,2118;
setarray $@BlackList2[0],2119,2120,2121,2123,2124,2125,1496;
end;
OnClock0000:
OnClock0100:
OnClock0200:
OnClock0300:
OnClock0400:
OnClock0500:
OnClock0600:
OnClock0700:
OnClock0800:
OnClock0900:
OnClock1000:
OnClock1100:
set $@ResetCounter,$@ResetCounter+1;
set $@EventON,1;
set $@Timer,1;
set $@Wait,1;
announce "The Disguise Event will begin in 3 minutes.",bc_all;
announce "The Event is being held in prontera 211 189.",bc_all;
setnpctimer 0;
initnpctimer;
end;
OnTimer10000:
if ($@Timer){end;}
if ($@Change){end;}
set $@Wait,0;
goto iDisguise;
//donpcevent "DisguiseEvent::OnDisguise";
end;
OnTimer30000:
if ($@Timer){end;}
set $@Change,0;
setnpcdisplay "Disguise Event",795;
npctalk "You took too long to guess what i was. Please wait 10 seconds while i disguise again.";
specialeffect 730;
set $MonsterName$,"OMFGBBQLEETSAUCEGMOCEANRULESHAI!!";
deletepset 1;
stopnpctimer;
setnpctimer 0;
initnpctimer;
end;
OnTimer60000:
if ($@Timer!=1){end;}
if ($@Timer==1)
{announce "The Disguise Event will begin in 2 minutes.",bc_all;
announce "The Event is being held in prontera 211 189.",bc_all;
end;}
OnTimer120000:
if ($@Timer!=1){end;}
if ($@Timer==1)
{announce "The Disguise Event will begin 1 minute.",bc_all;
announce "The Event is being held in prontera 211 189.",bc_all;
end;}
OnTimer180000:
if ($@Timer!=1){end;}
if ($@Timer==1)
{announce "The Disguise Event has begun!",bc_all;
announce "The Event is being held in Main Town.",bc_all;
set $@Timer,0; stopnpctimer;
setnpctimer 0; initnpctimer;
goto iDisguise;
//donpcevent "DisguiseEvent::OnDisguise";
end;}
announce "Something went wrong with the Disguise Event.",bc_all | bc_blue;
announce "Please notify a GM ASAP. Thank you.",bc_all | bc_blue;
end;
iDisguise:
if ($Rule==1)
{set $@Winner,0;
set $@Monster,1000+rand(1,995);
for(set .@BL,0; .@BL<getarraysize($@BlackList); set .@BL,.@BL+1)
{if ($@Monster==$@BlackList[.@BL] || $@Monster==$@BlackList2[.@BL])
{goto iDisguise;}}
if ($@Monster==$@LastMonster){goto iDisguise;}
set $@LastMonster,$@Monster;
set $MonsterName$,getmonsterinfo($@Monster,0);}
if ($Rule==2)
{set $@Winner,0;
set $@Monster,rand(49);
set $MonsterName$,getmonsterinfo($@MVP[$@Monster],0);}
deletepset 1;
defpattern 1,"([^:]+):.\\s*"+$MonsterName$+".*", "iCorrect";
activatepset 1;
if ($Rule==1){setnpcdisplay "Disguise Event",$@Monster;}
if ($Rule==2){setnpcdisplay "Disguise Event",$@MVP[$@Monster];}
set $@Change,1;
setnpctimer 0;
//Hint
//npctalk ""+$@Monster+", "+$MonsterName$+"";
end;
iCorrect:
if ($@Winner){dispbottom "Someone has already won this round."; end;}
set $@Winner,1;
set $@RoundCount,$@RoundCount+1;
deletepset 1;
defpattern 1,"([^:]+):.*\\sOMFGBBQLEETSAUCEGMOCEANRULESHAI!!.*", "iFailCheater";
activatepset 1;
//getitem $Prize,$PrizeAmt;
getitem 501,5;
getitem 502,5;
getitem 503,5;
getitem 504,5;
#CASHPOINT += 1;
announce ""+strcharinfo(0)+" is correct! I was disguised as: "+$MonsterName$+"",bc_map | bc_blue;
if ($@RoundCount>=$Rounds)
{setnpcdisplay "Disguise Event",795;
set $@RoundCount,0; set $@Change,0; set $@EventON,0;
setnpctimer 0; stopnpctimer;
npctalk "Thank you all for playing. That was the last round of the Disguise Event. Come play again later.";
end;}
setnpcdisplay "Disguise Event",794;
set $@Change,0;
setnpctimer 0;
end;
iFailCheater:
end;
}
//--- The Functions ---//
function script Rounds {
next;
mes "Please Input the number of rounds you want the event to last.";
mes "Current Number of Rounds: [^0000FF"+$Rounds+"^000000]";
input .@Rounds;
set $Rounds,.@Rounds;
next;
mes "The number of rounds has been changed successfully.";
mes "Number of Rounds: [^0000FF"+$Rounds+"^000000]";
mes "Come again.";
close;
}
function script Prize {
next;
mes "Please Input the ItemID of the prize that will be given each round.";
mes "Current Items is: [^0000FF"+getitemname($Prize)+"^000000] ItemID - ^0000FF"+$Prize+"^000000";
input .@Prize;
if (getitemname(.@Prize)=="" || getitemname(.@Prize)=="null")
{next; mes "That item does not exist. Please try again."; close;}
set $Prize,.@Prize;
next;
mes "Please Input the Ammount that is to be given.";
input .@Ammount;
if (.@Ammount<=0 || .@Ammount>=10000)
{next; mes "That ammount is invalid. Using default ammount of 1.";}
set $PrizeAmt,.@Ammount;
next;
mes "The Prize has been changed successfully.";
mes "Prize: [^0000FF"+getitemname($Prize)+"^000000]x(^0000FF"+$PrizeAmt+"^000000)";
close;
}
function script Monster_Display {
setarray .@Rule[0],0,1,2;
setarray .@Desc$[0],"","Transform as all monsters.","Transform as MvP's only.";
next;
mes "Please select a Disguise Rule.";
mes "Rule 1 - Transform as all monsters.";
mes "Rule 2 - Transform as MvP's only.";
menu "Rule 1:Rule 2",iRule;
iRule:
set $Rule,.@Rule[@menu];
next;
mes "The Disguise Rule, has been changed successfully.";
mes "Current Rule: ^0000FF"+$Rule+"^000000 - ^0000FF"+.@Desc$[@menu]+"^000000";
close;
}