- script LMS#disable -1,{
OnInit:
disablenpc "Mr. Banker";
disablenpc "All Job Manager";
end;
}
- script LMS -1,{
OnClock0310:
OnClock0610:
OnClock0910:
OnClock1210:
OnClock1510:
OnClock1810:
OnClock2110:
OnClock2310:
goto startlmsevent;
startlmsevent:
announce "Mr. Manager: The Last Man Standing event will be starting shortly.",0;
sleep2 10000;
announce "Mr. Manager: Those who want to play, please proceed to prontera 149 225 and register.",0;
sleep2 10000;
announce "Mr. Manager: After 1 Minute the Registration will close.",0;
sleep2 10000;
announce "Mr. Manager: Please go to prontera 149 225 and Register now if you want to join.",0;
enablenpc "All Job Manager";
initnpctimer;
end;
OnTimer30000:
announce "Mr. Manager: Last 30 seconds.",0;
sleep2 5000;
announce "Mr. Manager: If you want to join please Register in prontera 149 225.",0;
end;
OnTimer50000:
announce "Mr. Manager: Last 10 seconds.",0;
end;
OnTimer55000:
announce "Mr. Manager: 5.",0;
end;
OnTimer56000:
announce "Mr. Manager: 4.",0;
end;
OnTimer57000:
announce "Mr. Manager: 3.",0;
end;
OnTimer58000:
announce "Mr. Manager: 2.",0;
end;
OnTimer59000:
announce "Mr. Manager: 1.",0;
end;
OnTimer60000:
announce "Mr. Manager: Time's up.",0;
end;
OnTimer61000:
disablenpc "All Job Manager";
donpcevent "Mr. Banker::OnEnable";
stopnpctimer;
end;
}
//---------All Job Registration---------------
prontera,149,225,5 script All Job Manager 106,{
mes "[Mr. Manager]";
mes "Hello What can I do for you?";
next;
menu "Register",-,"What is LMS?",what,"Leave",leave;
next;
mes "[Mr. Manager]";
mes "Thankyou for registering Mr. " + strcharinfo(0) + ", Have fun!";
warp "quiz_02",264,343;
end;
what:
mes "[Mr. Manager]";
mes "LMS is also known as Last Man Standing Event";
next;
mes "[Mr. Manager]";
mes "LMS is also like a PvP.";
next;
mes "[Mr. Manager]";
mes "That's all";
close;
leave:
mes "[Mr. Manager]";
mes "I hope you will register next time";
close;
}
//--------------------------
//--------------------------
guild_vs1,50,51,6 script Mr. Banker 56,{
mes "[Banker]";
mes "Congrats. You've won.";
next;
announce "Mr. Manager: We have a winner! well done "+strcharinfo(0)+".",0;
getitem 27000, 10; // Change This item id to what ever you want . item id,amount
set class_s,class_s+8;
mes "You will return now";
warp "prontera",155,173;
disablenpc "Mr. Banker";
close;
end;
OnEnable:
pvpoff "guild_vs1";
mapannounce "quiz_02","Mr. Manager:The Last Man Standing Event will start shortly",0;
sleep2 10000;
mapannounce "quiz_02","Mr. Manager:But before we start this is just a few reminders..",0;
sleep2 10000;
mapannounce "quiz_02","Mr. Manager:Using Cloaking , Hiding is strictly not allowed..",0;
sleep2 10000;
mapannounce "quiz_02","Mr. Manager: Only the Last Man Standing will win this event!!",0;
sleep2 10000;
mapannounce "quiz_02","Mr. Manager: What are we waiting for?..Let's Get Ready to Rumble!!...",0;
areawarp "quiz_02",252,357,275,334,"guild_vs1",0,0;
sleep2 10000;
goto L_Start;
end;
L_Start:
if(getmapusers("guild_vs1") == 1) { goto L_nocontest;
} else if(getmapusers("guild_vs1") == 0) { goto L_None;
} else {
mapannounce "guild_vs1","Mr. Manager: Get ready at the count of 5 we will start!....",0;
sleep2 10000;
mapannounce "guild_vs1","Mr. Manager: 5",0;
sleep2 5000;
mapannounce "guild_vs1","Mr. Manager: 4",0;
sleep2 4000;
mapannounce "guild_vs1","Mr. Manager: 3",0;
sleep2 3000;
mapannounce "guild_vs1","Mr. Manager: 2",0;
sleep2 2000;
mapannounce "guild_vs1","Mr. Manager: 1",0;
sleep2 1000;
pvpon "guild_vs1";
goto timer;
end;
}
timer:
initnpctimer;
end;
OnTimer1000:
end;
OnTimer1100:
if(getmapusers("guild_vs1") == 1) goto L_Champ;
if(getmapusers("guild_vs1") > 2) goto timer;
if(getmapusers("guild_vs1") == 2) goto champ;
stopnpctimer;
end;
champ:
announce "Mr. Manager: Last 2 Brave warriors are still alive!",0;
sleep2 10000;
if(getmapusers("guild_vs1") == 1) goto L_Champ;
if(getmapusers("guild_vs1") > 1) goto timer;
end;
L_Champ:
mapannounce "guild_vs1","Mr. Banker: Please talk to me to get your prize.. Im in the middle",0;
pvpoff "guild_vs1";
enablenpc "Mr. Banker";
end;
L_None:
disablenpc "Banker";
pvpoff "guild_vs1";
end;
L_nocontest:
mapannounce "guild_vs1","Since only you joined, there will be no event. BUT you will be given 10 Quest Tickets!",0;
enablenpc "Mr. Banker";
end;
}
//----- Die = warp prt -----
- script Killa_warp -1,{
OnPCDieEvent:
getmapxy(.@map$,.@x,.@y,0);
if(.@map$=="guild_vs1")
{
set #kill_point, 0;
announce ""+strcharinfo(0)+" died, and out of the game!.",bc_all;
warp "prontera",155,173;
end;
}
end;
}
// == Mapflags
guild_vs1 mapflag nowarp
guild_vs1 mapflag nowarpto
guild_vs1 mapflag noteleport
guild_vs1 mapflag nosave
guild_vs1 mapflag nomemo
guild_vs1 mapflag nobranch
guild_vs1 mapflag pvp_noparty
guild_vs1 mapflag restricted 1
guild_vs1 mapflag nocommand 90
quiz_02 mapflag nowarp
quiz_02 mapflag nowarpto
quiz_02 mapflag noteleport
quiz_02 mapflag nosave
quiz_02 mapflag nomemo
quiz_02 mapflag nobranch
quiz_02 mapflag pvp_noparty
quiz_02 mapflag restricted 1
quiz_02 mapflag nocommand 90
And this one for every Hour
- script DiceHide -1,{
OnInit:
disablenpc "Dice Manager#1";
disablenpc "Prize Manager";
pvpoff "quiz_01";
end;
}
- script DICE#1 -1,{
OnClock0210:
OnClock0410:
OnClock0610:
OnClock0810:
OnClock1010:
OnClock1210:
OnClock1410:
OnClock1610:
OnClock1810:
OnClock2010:
OnClock2210:
goto startdice;
end;
startdice:
disablenpc "Prize Manager";
mapwarp "quiz_01","prontera",0,0;
announce "The Dice Event will start soon",0;
sleep2 2000;
announce "If you want to participant warp to prontera 159 225 now",0;
sleep2 2000;
announce "You have 2 Minutes to register",0;
enablenpc "Dice Manager#1";
sleep2 120000;
announce "The registration has closed",0;
disablenpc "Dice Manager#1";
donpcevent "Dice Manager#1::OnDiceStart";
end;
}
prontera,162,225,5 script Dice Manager#1 715,{
mes "Do you want to register to the dice event?";
menu "I want to register",L_yes,"Later",L_no;
L_yes:
warp "quiz_01" ,49,88;
set #dice_play, 1;
end;
L_no:
mes "Ok";
close;
OnDiceStart:
mapannounce "quiz_01","Go to the box 1,2,3,4 and no staying on the outside of box",0;
sleep2 2000;
mapannounce "quiz_01","This is the mechanic of the event",0;
sleep2 2000;
mapannounce "quiz_01","I will say a number between 1-4",0;
sleep2 2000;
mapannounce "quiz_01","If your box number is the same with my number, you're safe you will proceed to the next round",0;
sleep2 2000;
mapannounce "quiz_01","And if your box number is not the same will warp to brasilis",0;
sleep2 2000;
mapannounce "quiz_01","Good Luck",0;
sleep2 2000;
mapannounce "quiz_01","I will pick in 30 seconds! good luck!",0;
sleep2 30000;
mapannounce "quiz_01","Dice Manager: OK! I will pick now a number",0;
sleep2 2000;
goto Start;
Start:
switch(rand(1,4)) {
Case 1:
mapannounce "quiz_01","The Winner is 1",0;
areawarp "quiz_01",45,81,53,59,"prontera",156,177;
areawarp "quiz_01",57,81,65,59,"prontera",156,177;
areawarp "quiz_01",69,81,77,59,"prontera",156,177;
areawarp "quiz_01",32,94,78,86,"prontera",156,177;
areawarp "quiz_01",36,85,38,82,"prontera",156,177;
areawarp "quiz_01",48,85,50,82,"prontera",156,177;
areawarp "quiz_01",60,85,62,82,"prontera",156,177;
areawarp "quiz_01",72,85,74,82,"prontera",156,177;
goto OnWinner;
end;
break;
Case 2:
mapannounce "quiz_01","The Winner is 2",0;
areawarp "quiz_01",33,81,41,59,"prontera",156,177;
areawarp "quiz_01",57,81,65,59,"prontera",156,177;
areawarp "quiz_01",69,81,77,59,"prontera",156,177;
areawarp "quiz_01",32,94,78,86,"prontera",156,177;
areawarp "quiz_01",36,85,38,82,"prontera",156,177;
areawarp "quiz_01",48,85,50,82,"prontera",156,177;
areawarp "quiz_01",60,85,62,82,"prontera",156,177;
areawarp "quiz_01",72,85,74,82,"prontera",156,177;
goto OnWinner;
end;
break;
Case 3:
mapannounce "quiz_01","The Winner is 3",0;
areawarp "quiz_01",45,81,53,59,"prontera",156,177;
areawarp "quiz_01",33,81,41,59,"prontera",156,177;
areawarp "quiz_01",69,81,77,59,"prontera",156,177;
areawarp "quiz_01",32,94,78,86,"prontera",156,177;
areawarp "quiz_01",36,85,38,82,"prontera",156,177;
areawarp "quiz_01",48,85,50,82,"prontera",156,177;
areawarp "quiz_01",60,85,62,82,"prontera",156,177;
areawarp "quiz_01",72,85,74,82,"prontera",156,177;
goto OnWinner;
end;
break;
Case 4:
mapannounce "quiz_01","The Winner is 4",0;
areawarp "quiz_01",45,81,53,59,"prontera",156,177;
areawarp "quiz_01",33,81,41,59,"prontera",156,177;
areawarp "quiz_01",57,81,65,59,"prontera",156,177;
areawarp "quiz_01",32,94,78,86,"prontera",156,177;
areawarp "quiz_01",36,85,38,82,"prontera",156,177;
areawarp "quiz_01",48,85,50,82,"prontera",156,177;
areawarp "quiz_01",60,85,62,82,"prontera",156,177;
areawarp "quiz_01",72,85,74,82,"prontera",156,177;
goto Onwinner;
end;
break;
}
end;
OnWinner:
mapannounce "quiz_01","To those who are winner",0;
sleep2 2000;
mapannounce "quiz_01"," Please go in the middle to claim you prize",0;
enablenpc "Prize Manager";
end;
OnPCLoadMapEvent:
if (#dice_play == 0) {
warp "prontera",0,0;
end;
}
end;
OnPCLogOutEvent:
if (#dice_play == 1 ) {
set #dice_play, 1;
end;
}
end;
}
quiz_01,49,90,1 script Prize Manager 715,{
getitem 671, 1;
set class_s,class_s+3;
warp "prontera",156,177;
end;
}
quiz_01 mapflag nowarp
quiz_01 mapflag nowarpto
quiz_01 mapflag loadevent
quiz_01 mapflag nomemo
quiz_01 mapflag nosave
And this one for every 30mins only
prontera,156,219,4 script Disguise Event 794,{
//--- 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 156 223.",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:
OnClock0200:
OnClock0400:
OnClock0600:
OnClock0800:
OnClock1000:
OnClock1200:
OnClock1400:
OnClock1600:
OnClock1800:
OnClock2000:
OnClock2200:
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 156 223.",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 156 223.",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 156 223.",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 prontera 156 223.",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;
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;
}
Question
chromus28
Can anyone help me make this event every 2 Hours
And this one for every Hour
And this one for every 30mins only
Thanks in advance
Edited by chromus28Link to comment
Share on other sites
7 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.