How can fix this bug,?
Not working if you answer without space of the correct name of monster..?
Thanks Guys..godbless
//===== Athena Script ========================================
//= Disguise event NPC
//===== Credits to ===========================================
//= Created by : GmOcean
//= Re-Edit : --
//===== Current Version: =====================================
//= 5.0
//===== Compatible With: =====================================
//= Any Athena Version
//===== Description: =========================================
//= You may modify this script at your own risk
//===== Additional Comments: =================================
prontera,97,174,5 script Disguise Event 795,{
//--- Basic Script Configuration Options ---//
set
[email protected]$,"[^0000FFDisguise NPC^000000]"; //<- NPC Name.
set
[email protected],60; //<- GM Level needed to be considered a GM.
//--- The Script ---//
if (getgmlevel()>
[email protected]){goto GM_Player;}
if (
[email protected]){end;}
mes
[email protected]$;
mes "Welcome, how may i be of assistance.";
menu "Information",iInfo,"Nothing, just passing through.",iNothing;
iInfo:
next;
mes
[email protected]$;
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
[email protected]$;
mes "Please select an Option to modify.";
menu "Turn ON/OFF Event",iEvent,"Event Settings",iSettings;
iEvent:
next;
mes
[email protected]$;
if (
[email protected]){mes "The Event is currently: [^0000FFON^000000]";
mes "Would you like to turn it OFF?";}
if (
[email protected]){mes "The Event is currently: [^FF0000OFF^000000]";
mes "Would you like to turn it ON?";}
menu "Yes",iYes,"No",iNothing;
iYes:
if (
[email protected])
{set
[email protected],0; set
[email protected],0;
setnpctimer 0; stopnpctimer;
announce "A GM has decided to turn the Disguise Event off. As a result no prizes will be given.",bc_map | bc_blue;
deletepset 1;
setnpcdisplay "Disguise Event",795;
close;}
set
[email protected],1; set
[email protected],1; setnpctimer 0; initnpctimer;
set
[email protected],
[email protected]+1;
announce "The Disguise Event will begin in 3 minutes.",bc_all | bc_blue;
announce "The Event is being held in Event Area, go if you want to join, thank you.",bc_all | bc_blue;
close;
iSettings:
next;
mes
[email protected]$;
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,"([^:]+):.*\\sOMFGBBQLEETSAUCEGMOCEANRULESHAI!!.*", "iCorrect";
activatepset 1;
set
[email protected],0;
set
[email protected],0;
set
[email protected],0;
set $Points,$Points;
set
[email protected],0;
set $Rounds,$Rounds;
set $Prize,$Prize;
set $PrizeAmt,$PrizeAmt;
set $Rule,$Rule;
setarray
[email protected][0],1511,1674,1785,1039,1874,1272,1719,1046,1389,1112,1115,1658,1957,1418,1871,1252,1786,1086,1885,1649,1651,1832,1492,1734,1251,1779,1688,1646,1373,1147,1059,1150,1956,1087,1190,1038,1157,1159,1052,1623,1916,1650,1583,1389,1312,1751,1685,1630,1648;
setarray
[email protected][0],1003,1006,1017,1021,1022,1027,1043,1136,1168,1171,1172,1173,1181,1210,1217,1218,1223,1284,1407,1411,1414,1495,1501,1900;
end;
OnClock0000:
OnClock0200:
OnClock0400:
OnClock0600:
OnClock0800:
OnClock1000:
OnClock1200:
OnClock1400:
OnClock1600:
OnClock1800:
OnClock2000:
OnClock2200:
set
[email protected],
[email protected]+1;
set
[email protected],1;
set
[email protected],1;
set
[email protected],1;
announce "The Disguise Event will begin in 3 minutes.",bc_all | bc_blue;
announce "The Event is being held in Event Area, go if you want to join, thank you.",bc_all | bc_blue;
setnpctimer 0;
initnpctimer;
end;
OnTimer10000:
if (
[email protected]){end;}
if (
[email protected]){end;}
set
[email protected],0;
goto iDisguise;
//donpcevent "DisguiseEvent::OnDisguise";
end;
OnTimer30000:
if (
[email protected]){end;}
set
[email protected],0;
setnpcdisplay "Disguise Event",795;
npctalk "You took too long to guess what i was. Please wait 10 seconds while i disguise again.";
specialeffect 725;
set $MonsterName$,"OMFGBBQLEETSAUCEGMOCEANRULESHAI!!";
deletepset 1;
stopnpctimer;
setnpctimer 0;
initnpctimer;
end;
OnTimer60000:
if (
[email protected]!=1){end;}
if (
[email protected]==1)
{announce "The Disguise Event will begin in 2 minutes.",bc_all | bc_blue;
announce "The Event is being held in Event Area, go if you want to join, thank you.",bc_all | bc_blue;
end;}
OnTimer120000:
if (
[email protected]!=1){end;}
if (
[email protected]==1)
{announce "The Disguise Event will begin 1 minute.",bc_all | bc_blue;
announce "The Event is being held in Event Area, go if you want to join, thank you.",bc_all | bc_blue;
end;}
OnTimer180000:
if (
[email protected]!=1){end;}
if (
[email protected]==1)
{announce "The Disguise Event has begun!",bc_all | bc_blue;
announce "The Event is being held in Event Area, go if you want to join, thank you.",bc_all | bc_blue;
set
[email protected],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
[email protected],0;
set
[email protected],1000+rand(1,995);
for(set
[email protected],0;
[email protected]<getarraysize(
[email protected]); set
[email protected],
[email protected]+1)
{if (
[email protected][email protected][
[email protected]])
{goto iDisguise;}}
if (
[email protected][email protected]){goto iDisguise;}
set
[email protected],
[email protected];
set $MonsterName$,getmonsterinfo(
[email protected],0);}
if ($Rule==2)
{set
[email protected],0;
set
[email protected],rand(49);
set $MonsterName$,getmonsterinfo(
[email protected][
[email protected]],0);}
deletepset 1;
defpattern 1,"([^:]+):.*\\s"+$MonsterName$+".*", "iCorrect";
activatepset 1;
if ($Rule==1){setnpcdisplay "Disguise Event",
[email protected];}
if ($Rule==2){setnpcdisplay "Disguise Event",
[email protected][
[email protected]];}
set
[email protected],1;
setnpctimer 0;
//npctalk ""
[email protected]+", "+$MonsterName$+"";
end;
iCorrect:
if (
[email protected]){dispbottom "Someone has already won this round."; end;}
set
[email protected],1;
set
[email protected],
[email protected]+1;
deletepset 1;
defpattern 1,"([^:]+):.*\\sOMFGBBQLEETSAUCEGMOCEANRULESHAI!!.*", "iFailCheater";
activatepset 1;
getitem $Prize,$PrizeAmt;
announce ""+strcharinfo(0)+" is correct! I was disguised as: "+$MonsterName$+"",bc_map | bc_blue;
if (
[email protected]>=$Rounds)
{setnpcdisplay "Disguise Event",795;
set
[email protected],0; set
[email protected],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",795;
set
[email protected],0;
setnpctimer 0;
end;
}
//--- The Functions ---//
function script Rounds {
next;
mes "Please Input the number of rounds you want the event to last.";
mes "Current Number of Roudns: [^0000FF"+$Rounds+"^000000]";
input
[email protected];
set $Rounds,
[email protected];
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
[email protected];
if (getitemname(
[email protected])=="" || getitemname(
[email protected])=="null")
{next; mes "That item does not exist. Please try again."; close;}
set $Prize,
[email protected];
next;
mes "Please Input the Ammount that is to be given.";
input
[email protected];
if (
[email protected]<=0 ||
[email protected]>=10000)
{next; mes "That ammount is invalid. Using default ammount of 1.";}
set $PrizeAmt,
[email protected];
next;
mes "The Prize has been changed successfully.";
mes "Prize: [^0000FF"+getitemname($Prize)+"^000000]x(^0000FF"+$PrizeAmt+"^000000)";
close;
}
function script Monster_Display {
setarray
[email protected][0],0,1,2;
setarray
[email protected]$[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,
[email protected][@menu];
next;
mes "The Disguise Rule, has been changed successfully.";
mes "Current Rule: ^0000FF"+$Rule+"^000000 - ^0000FF"
[email protected]$[@menu]+"^000000";
close;
}