Jump to content


  • Content Count

  • Joined

  • Last visited

About vengeance

  • Rank

Profile Information

  • Github
  1. //===== Hercules Script ======================================//= Disguise Event//===== By: ==================================================//= GmOcean//===== Current Version: =====================================//= 5.1//===== Additional Comments: =================================//= Note: This script requires PCRE to run properly.//= 5.0 Last update by GmOcean.//= 5.1 Cleaned and standardized, mostly. [Euphy]//= [Mods by Happy]//= h5.2 disable winning the next round if already won// the last round.//============================================================quiz_01,144,377,4 script Disguise Event 4_M_NFDEADMAN,{ // Currently set to run every two hours. // To change times, edit the OnClock labels below. set [email protected],60; // GM level required to access NPC. set [email protected]$,"[^0000FFDisguise NPC^000000]"; if (getgmlevel()>[email protected]) { mes [email protected]$; mes "Select an option."; next; switch(select("Turn ON/OFF Event:Event Settings")) { case 1:// mes [email protected]$;// if (.EventON) {// mes "The Event is currently: [^0000FFON^000000]";// mes "Would you like to turn it OFF?";// } else {// mes "The Event is currently: [^FF0000OFF^000000]";// mes "Would you like to turn it ON?";// }// if(select("Yes:No")==2) close;// 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", 4_M_NFDEADMAN;// 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 | bc_blue;// announce "If you want to join us, come to Dewata and enter the warp portal.",bc_all | bc_blue; close; case 2: mes [email protected]$; mes "Pick a setting to modify."; next; switch(select("Monster Display:Number of Rounds:Prize Settings")) { case 1: setarray [email protected]$[0],"Disguise as all monsters.","Disguise as MVPs only."; mes [email protected]$; mes "Choose a disguise rule."; next; set .Rule, select(implode([email protected]$,":")); mes [email protected]$; mes "The Disguise Rule has been set:"; mes " > ^0055FF"[email protected]$[.Rule-1]+"^000000"; close; case 2: mes [email protected]$; mes "Input the number of rounds you want the event to last."; mes "Current number: [^0000FF"+.Rounds+"^000000]"; next; input [email protected]; set .Rounds,[email protected]; mes [email protected]$; mes "The number of rounds has been changed to "+.Rounds+"."; close; case 3: mes [email protected]$; mes "Input the Item ID of the prize given each round."; mes "Current item: [^0000FF"+getitemname(.Prize)+"^000000] (ID #"+.Prize+")"; next; input [email protected]; mes [email protected]$; if (getitemname([email protected])=="" || getitemname([email protected])=="null") { mes "That item does not exist. Please try again."; close; } set .Prize,[email protected]; mes "Input the amount to be given."; next; input [email protected]; mes [email protected]$; if ([email protected]<=0 || [email protected]>=10000) { mes "That amount is invalid. Using default ammount of 1."; set [email protected],1; next; mes [email protected]$; } set .PrizeAmt,[email protected]; mes "The Prize has been changed successfully."; mes "Prize: "+.PrizeAmt+"x [^0000FF"+getitemname(.Prize)+"^000000]"; close; } } } if (.EventON) end; mes [email protected]$; mes "Welcome."; mes "How may I be of assistance?"; if(select("Information:Nothing, just passing through.")==2) close; next; mes [email protected]$; mes "This event is quite simple."; mes "At the start of the event, I will"; mes "disguise myself as a random"; mes "monster. You have to shout"; mes "that monter's name out loud."; next; mes "If you are correct, you will receive"; mes "a prize. If not, keep trying!"; mes "That's all that there is to this event."; close;OnInit: set .EventON,0; set .Wait,0; set .Winner,0; set .ResetCounter,0; set .Rounds,10; set .Prize,7711; set .PrizeAmt,1; set .Rule,1; setarray .MVP[0], OSIRIS, BAPHOMET, DOPPELGANGER, MISTRESS, GOLDEN_BUG, ORK_HERO, DRAKE, EDDGA, MAYA, MOONLIGHT, PHARAOH, PHREEONI, ORC_LORD, KNIGHT_OF_WINDSTORM, GARM, DARK_LORD, TURTLE_GENERAL, LORD_OF_DEATH, DRACULA, EVENT_BAPHO, DARK_SNAKE_LORD, INCANTATION_SAMURAI, PORING_V, AMON_RA, TAO_GUNKA, RSX_0806, BACSOJIN_, B_SEYREN, B_EREMES, B_HARWORD, B_MAGALETA, B_SHECIL, B_KATRINN, B_YGNIZEM, APOCALIPS_H, LADY_TANEE, THANATOS, DETALE, KIEL_, RANDGRIS, GLOOMUNDERNIGHT, KTULLANUX, ATROCE, G_MAGALETA_, IFRIT, FALLINGBISHOP, BEELZEBUB_, GOPINICH, MOROCC_, KUBLIN, S_NYDHOG, BOITATA; set .Blacklist$, "1003,1006,1017,1021,1022,1027,1043,1075,1136,1137,1168," + "1171,1172,1173,1181,1187,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,2119,2120,2121,2123,2124,2125,1496,"; end;OnStart: set .ResetCounter,.ResetCounter+1; set .EventON,1; set .Timer,1; set .Wait,1; announce "The Disguise Event will begin in 3 minutes.",bc_all | bc_blue; announce "If you want to join us, come to Dewata and enter the warp portal.",bc_all | bc_blue; enablenpc "guesswarp"; setnpctimer 0; initnpctimer; end;OnTimer10000: if (.Timer || .Change) end; set .Wait,0; goto iDisguise; end;OnTimer30000: if (.Timer) end; set .Change,0; setnpcdisplay "Disguise Event", 4_M_NFDEADMAN; npctalk "You took too long to guess what I was. Please wait 10 seconds while I disguise again."; specialeffect 725; set $MonsterName$,""; deletepset 1; stopnpctimer; setnpctimer 0; initnpctimer; end;OnTimer60000: if (.Timer!=1) end; announce "The Disguise Event will begin in 2 minutes.",bc_all | bc_blue; announce "If you want to join us, come to Dewata and enter the warp portal.",bc_all | bc_blue; end;OnTimer120000: if (.Timer!=1) end; announce "The Disguise Event will begin 1 minute.",bc_all | bc_blue; announce "If you want to join us, come to Dewata and enter the warp portal.",bc_all | bc_blue; end;OnTimer180000: if (.Timer!=1) end; announce "The Disguise Event has begun!",bc_all | bc_blue; announce "The portal has been closed.",bc_all | bc_blue; disablenpc "guesswarp"; set .Timer,0; stopnpctimer; setnpctimer 0; initnpctimer;iDisguise: if (.Rule==1) { set .Winner,0; set [email protected], rand(SCORPION, PINGUICULA); if (compare(","+.Blacklist$+"," , ","[email protected]+",")) goto iDisguise; if ([email protected]==.LastMonster) goto iDisguise; set .LastMonster,[email protected]; set $MonsterName$,getmonsterinfo([email protected],0); } if (.Rule==2) { set .Winner,0; set [email protected], rand(getarraysize(.MVP)); set $MonsterName$,getmonsterinfo(.MVP[[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",.MVP[[email protected]]; set .Change,1; setnpctimer 0; end;iCorrect: if (.Winner) { dispbottom "Someone has already won this round."; end; } if (.lastwinner == strcharinfo(0)) { dispbottom "You can't win since you already wont he last round"; end; } set .Winner,1; set .RoundCount,.RoundCount+1; deletepset 1; activatepset 1; getitem .Prize,.PrizeAmt; set .lastwinner,strcharinfo(0); announce strcharinfo(0)+" is correct! I was disguised as: "+$MonsterName$+"",bc_map | bc_blue; if (.RoundCount>=.Rounds) { setnpcdisplay "Disguise Event", 4_M_NFDEADMAN; 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", 4_M_NFDEADMAN; set .Change,0; setnpctimer 0; end;}dewata,222,208,0 warp guesswarp 2,2,quiz_01,144,373quiz_01 mapflag nowarptoquiz_01 mapflag nowarpquiz_01 mapflag nosavequiz_01 mapflag nomemoquiz_01 mapflag noteleportquiz_01 mapflag noskill Here is the script
  2. I get this error only when a player tells the correct answer could anyone help me how to fix it.. ------------- oops sorry by mistake posted here.. supposed to be in script support
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.