/*//----------------------------------------------------------------// //----------------Scripted by Spera---------------------------------// //------------------FinalStrikeRO-----------------------------------// //--------------------Disguise Event NPC v2-------------------------// /-------------------------------------------------------------------//*/ yuno_pre,33,95,2 script Disguise CP 968,{ if (getgmlevel()<50) { mes "^3399FF[Disguise CP]^000000"; mes "Sorry, you are not a GM!"; close; } mes "^3399FF[Disguise CP]^000000"; mes "Hello GameMaster!"; mes "What do you want to do?"; switch(select("Start Event:Stop Event:Set number of rounds[^E50000"+$guessrounds+"^000000]:Set prize^E50000 ["+getitemname($guessprize)+"]^000000 ^E50000 ["+ $guessprizecount + "]^000000:Nothing")) { case 1: { next; mes "^3399FF[Disguise CP]^000000"; mes "Please confirm by typing START."; input .@confirm$; if (.@confirm$ == "START") { donpcevent "guessAnnouncer::OnGMStart"; close; } mes "Confirmation failed"; close; break; } case 2: { next; mes "^3399FF[Disguise CP]^000000"; mes "Please confirm by typing STOP."; input .@confirm$; if (.@confirm$ == "STOP") { donpcevent "guessAnnouncer::OnGMStop"; close; } mes "Confirmation failed"; close; break; } case 3: { next; mes "^3399FF[Disguise CP]^000000"; mes "Please type in the new number."; input $guessrounds; if ($guessrounds > 30) set $guessrounds, 30; else if ($guessrounds < 1) set $guessrounds, 1; close; } case 4: { next; mes "^3399FF[Disguise CP]^000000"; mes "Please type in the new prize id."; input .@guessprizeid; if (getitemname(.@guessprizeid) == "null" || getitemname(.@guessprizeid) == "") {next; mes "^3399FF[Disguise CP]^000000"; mes "Error"; mes "This item does not exist in the database..."; close;} set $guessprize, .@guessprizeid; next; mes "^3399FF[Disguise CP]^000000"; mes "Please type in the amount."; input .@guessprizeamount; if (!.@guessprizeamount) set .@guessprizeamount,1 ; set $guessprizecount,.@guessprizeamount; next; mes "^3399FF[Disguise CP]^000000"; mes "Prize has been set to ^E50000 "+ getitemname($guessprize)+ "^000000 and the amount to ^E50000 " +$guessprizecount+"^000000"; close; } case 5: { next; mes "^3399FF[Disguise CP]^000000"; mes "Good bye"; close; } } } ama_test,50,100,4 script Disguise NPC 794,{ if (!$guessbegin) { mes "^3399FF[Disguise NPC]^000000"; mes "The event is going to start soon!"; close; } end; OnStart: set $guessbegin, 1; set .DisguiseWon, 0; if (!$DisguiseRound) { npctalk "Alright. Let's get it over with ~.~ "; sleep 4000; npctalk "But first I will explain to you how to play the game."; sleep 6000; npctalk "I am going to disguise into a random monster."; sleep 5000; npctalk "You have to guess the monster's name and shout it out."; sleep 5000; npctalk "Don't bother about the use of capital and small initial letters."; sleep 8000; npctalk "Now get ready."; sleep 5000; } else if ($DisguiseRound < $guessrounds-1) { npctalk "Get ready for the next round."; setnpctimer 0; sleep 8000; } else { npctalk "Last round now!"; sleep 2000; npctalk "Get ready."; sleep 6000; } do { set .@guessrepeat, 0; set $monster, 1000 + rand(1,950); for (set .@k, 0; .@k = $guessrounds) { set $DisguiseRound, 0; sleep 3000; npctalk "Event is over now!"; sleep 3500; npctalk "See ya guys"; sleep 2000; emotion 12; sleep 1000; set $guessactive, 0; mapwarp "ama_test.gat","caspen.gat",181,228; setnpcdisplay "Disguise NPC",794; disablenpc "Disguise NPC"; end; } goto OnStart; } end; winround: setnpctimer 0; deletepset 1; set .DisguiseWon, 1; set $DisguiseRound, $DisguiseRound + 1; npctalk strcharinfo(0) + " got my right name!",0; sleep2 3000; npctalk $MonsterName$ + " is the correct answer."; sleep2 3000; npctalk "Take this as a reward."; getitem $guessprize, $guessprizecount; if (!$guessactive) {disablenpc "guesswarp"; disablenpc "Disguise NPC"; end;} if ($DisguiseRound >= $guessrounds) { set $DisguiseRound, 0; set $guessactive, 0; sleep 3000; npctalk "Event is over now!"; sleep 3500; npctalk "See ya guys"; sleep 2000; emotion 12; sleep 1000; mapwarp "ama_test.gat","caspen.gat",181,228; setnpcdisplay "Disguise NPC",794; disablenpc "Disguise NPC"; end; } sleep 5000; goto OnStart; end; } //----------------------------------------------------------------------------------- //----------------------------------------------------------------------------------- - script guessAnnouncer -1,{ OnGMStart: if ($guessactive) end; set $guessactive, 1; announce "A Gamemaster has started the Disguise Event",0; set $guessbegin, 0; sleep 3000; if (!$guessactive) end; announce "If you want to join, come to the main town, head downwards and enter the warp portal.",0; enablenpc "guesswarp"; enablenpc "Disguise NPC"; sleep 3000; announce "Number of Rounds: "+$guessrounds,0; sleep 2000; announce "Prize: "+ getitemname($guessprize) + " x " + $guessprizecount,0; sleep 2000; if (!$guessactive) {disablenpc "guesswarp"; disablenpc "Disguise NPC"; end;} announce "The portal is going to close in one minute.",0; sleep 60000; if (!$guessactive) {disablenpc "guesswarp"; disablenpc "Disguise NPC"; end;} announce "The portal has been closed.",0; disablenpc "guesswarp"; set $DisguiseRound, 0; sleep 5000; if (!$guessactive) {disablenpc "Disguise NPC"; end;} if(getmapusers("ama_test") == 0) { disablenpc "Disguise NPC"; set $guessactive, 1; end; } donpcevent "Disguise NPC::OnStart"; end; OnGMStop: if ($guessactive) { set $guessactive, 0; announce "A Gamemaster has stopped the Disguise Event",0; set $DisguiseRound, 0; mapwarp "ama_test.gat","caspen.gat",181,228; setnpcdisplay "Disguise NPC",794; disablenpc "Disguise NPC"; disablenpc "guesswarp"; } end; OnClock0200: OnClock0400: OnClock0600: OnClock0800: OnClock1000: OnClock1200: OnClock1400: OnClock1600: OnClock1800: OnClock2000: OnClock2200: OnClock0000: if ($guessactive) end; set $guessactive, 1; announce "The server is starting a Disguise Event now.",0; set $guessbegin, 0; sleep 3000; if (!$guessactive) end; announce "If you want to join, come to the main town, head downwards and enter the warp portal.",0; enablenpc "guesswarp"; enablenpc "Disguise NPC"; sleep 2000; announce "Prize: "+ getitemname($guessprize) + " x " + $guessprizecount,0; sleep 2000; if (!$guessactive) {disablenpc "guesswarp"; disablenpc "Disguise NPC"; end;} announce "The portal is going to close in one minute.",0; sleep 60000; if (!$guessactive) {disablenpc "guesswarp"; disablenpc "Disguise NPC"; end;} announce "The portal has been closed.",0; disablenpc "guesswarp"; sleep 5000; if (!$guessactive) {disablenpc "Disguise NPC"; end;} announce "Next Event will start in 2 hours.",0; set $DisguiseRound, 0; if(getmapusers("poring_c01") == 0) { disablenpc "Disguise NPC"; set $guessactive, 0; end; } donpcevent "Disguise NPC::OnStart"; end; OnInit: disablenpc "Disguise NPC"; disablenpc "guesswarp"; set $guessactive, 0; setarray $Forbidden[0],1003,1006,1017,1021,1022,1027,1043,1136,1137,1168,1171,1172,1173,1181,1210,1217,1218,1223,1284,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1407,1411,1414,1496,1501,1900; } //----------------------------------------------------------------------------------- //--------------Warp Portal------------------------------------------------------ caspen,181,228,0 warp guesswarp 2,2,ama_test,50,84 //----------------------------------------------------------------------------------- //------------------Map Flags-------------------------------------------------------- ama_test mapflag nowarpto ama_test mapflag noskill ama_test mapflag nosave ama_test mapflag nomemo ama_test mapflag noteleport ama_test pvp off //-----------------------------------------------------------------------------------