123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276 |
- //===== rAthena Script =======================================
- //= iRO Halloween (2008)
- //===== By: ==================================================
- //= Kisuka
- //===== Current Version: =====================================
- //= 1.1
- //===== Compatible With: =====================================
- //= rAthena SVN
- //===== Description: =========================================
- //= iRO Halloween (2008)
- //= Run away from the zombies for tickets.
- //= Redeem tickets for prizes.
- //===== Notes: ===============================================
- //= You must enable the event monsters in mob_db2.
- //===== Additional Comments: =================================
- //= 1.0 First version. [Kisuka]
- //= 1.1 Some small changes. [Kisuka]
- //============================================================
- payon,162,176,4 script Halloween Magician#iRO08 704,{
-
- if(Hallow08 < 1) {
- mes "[Halloween Magician]";
- mes "Kkkkkkkkk!";
- mes "I have a special event this Halloween that tests your luck and agility.";
- mes "Are you interested?";
- next;
- mes "[Halloween Magician]";
- mes "Come on! Don't be a wuss!";
- mes "If you collect enough tickets you can get good prizes!";
- mes "So what do you say?";
- next;
- goto MainMenu;
- }
- if (Hallow08Kill == 1) {
- mes "[Halloween Magician]";
- mes "You a 'fraidy cat or something?!";
- mes "You know you want to try again...";
- mes "Do you know the rules?";
- next;
- set Hallow08Kill,0;
- if(select("Yes, I know.:No, I don't know.") == 2) {
- goto Rules;
- }
- goto Participate;
- }
- if (Hallow08Kill == 2) {
- mes "[Halloween Magician]";
- mes "Oh, well done! You are alright!";
- mes "Isn't it fun with zombies??";
- mes "You know, zombies were people too!";
- mes "Ha!";
- mes "Kkkkkkk.";
- next;
- getitem 7941,1;
- set Hallow08Kill,0;
- mes "[Halloween Magician]";
- mes "As I promised";
- mes "You can get Halloween tickets for cool items.";
- close;
- }
- if(Hallow08 > 0) {
- mes "[Halloween Magician]";
- mes "Well, do you want to hear the rules again or, just get back to it...";
- next;
- goto MainMenu2;
- }
-
- Rules:
- mes "[Halloween Magician]";
- mes "This village is like a virtual Payon.";
- mes "There are zombies and ghouls roaming around and three southern exits, but only one works.";
- mes "That's up to you to find out.";
- next;
- mes "[Halloween Magician]";
- mes "You can't use any skills to kill the ghouls or zombies.";
- mes "And one more thing...";
- mes "you shouldn't forget...";
- next;
- mes "[Halloween Magician]";
- mes "All participants should be wearing nothing.";
- mes "Put all belongings in your storage and come back here when your weight is '0'.";
- next;
- mes "[Halloween Magician]";
- mes "Oh and one more thing!";
- mes "You can't be riding a PecoPeco or have a Cart.";
- mes "If you are, then I will remove them before you enter.";
- mes "Got it?";
- next;
- mes "[Halloween Magician]";
- mes "Remember, there are three exits but only one works randomly, the zombies and ghouls roaming around there can't be killed and you can't be wearing anything.";
- next;
- if (Hallow08 > 0) {
- mes "[Halloween Magician]";
- mes "Hey...";
- mes "Come back once you're ready.";
- close;
- }else{
- goto MainMenu;
- }
-
- Participate:
- mes "[Halloween Magician]";
- mes "Ok, you are ready.";
- mes "Let me check your weight.";
- next;
- if (Weight > 0) {
- mes "[Halloween Magician]";
- mes "Gosh!";
- mes "There's always a black sheep anywhere.";
- next;
- mes "[Halloween Magician]";
- mes "You think I wouldn't notice that your weight is above '0'?";
- mes "You're overweight...";
- close;
- }else{
- mes "[Halloween Magician]";
- mes "You seem good to go, and your weight is just right.";
- next;
- mes "[Halloween Magician]";
- mes "I was quite swamped with my work, so I'm exhausted.";
- next;
- mes "[Halloween Magician]";
- mes "I sometimes forget to send you there...";
- next;
- mes "[Halloween Magician]";
- mes "I hope you come back well.";
- close2;
- if (Hallow08 < 1) {
- set Hallow08,1;
- }
- set Hallow08Kill,1;
- set @Hallow08Warp, rand(1,3);
- percentheal -98,0;
- setriding 0;
- setcart 0;
- warp "evt_zombie",155,246;
- end;
- }
-
- TicketExchange:
- mes "[Halloween Magician]";
- mes "You want to exchange tickets for prizes?";
- mes "Good job! Kkkkkk!";
- next;
- mes "[Halloween Magician]";
- mes "Lemme tell you what items you can exchange for.";
- next;
- mes "[Halloween Magician]";
- mes "5 tickets for Pumpkin Pie.";
- mes "20 tickets for Pumpkin-Head.";
- mes "50 tickets for Old Blue Box.";
- mes "70 tickets for Old Purple Box.";
- mes "200 tickets for Old Card Album.";
- next;
- mes "[Halloween Magician]";
- mes "What would you like to exchange for?";
- next;
- switch(select("Pumpkin Pie:Pumpkin-Head:Old Blue Box:Old Purple Box:Old Card Album")) {
- case 1:
- if(countitem(7941) < 5) {
- goto NotEnough;
- }else{
- delitem 7941,5;
- getitem 12192,1;
- goto Enough;
- }
- break;
- case 2:
- if(countitem(7941) < 20) {
- goto NotEnough;
- }else{
- delitem 7941,20;
- getitem 5134,1;
- goto Enough;
- }
- break;
- case 3:
- if(countitem(7941) < 50) {
- goto NotEnough;
- }else{
- delitem 7941,50;
- getitem 603,1;
- goto Enough;
- }
- break;
- case 4:
- if(countitem(7941) < 70) {
- goto NotEnough;
- }else{
- delitem 7941,70;
- getitem 617,1;
- goto Enough;
- }
- break;
- case 5:
- if(countitem(7941) < 200) {
- goto NotEnough;
- }else{
- delitem 7941,200;
- getitem 616,1;
- goto Enough;
- }
- }
-
- NextTime:
- mes "[Halloween Magician]";
- mes "Ok, see you then.";
- mes "Kkkkkkkk.";
- close;
- MainMenu:
- menu "Explain it to me.",Rules,"I want to participate.",Participate,"I want to exchange tickets for prizes.",TicketExchange,"I'll come back next time.",NextTime;
- MainMenu2:
- menu "Get me back there now!",Participate,"Please, tell me the rules",Rules,"I want to exchange tickets for prizes.",TicketExchange,"I'll come back next time.",NextTime;
- NotEnough:
- mes "[Halloween Magician]";
- mes "You don't have enough tickets!";
- mes "Can't you even count?";
- mes "Please come here with the right number of tickets.";
- close;
- Enough:
- mes "[Halloween Magician]";
- mes "Here it is.";
- mes "Do you need...";
- mes "anything else?";
- next;
- if (Hallow08 == 1) {
- goto MainMenu2;
- }else{
- goto MainMenu;
- }
- }
-
- // --------------- MapFlags ---------------
- evt_zombie,16,142,1 script zombiewarp001 45,2,2,{
- OnTouch:
- if (@Hallow08Warp == 1) {
- set Hallow08Kill,2;
- specialeffect 16;
- warp "payon",28,142;
- }
- end;
- }
- evt_zombie,122,27,1 script zombiewarp002 45,2,2,{
- OnTouch:
- if (@Hallow08Warp == 2) {
- set Hallow08Kill,2;
- specialeffect 16;
- warp "payon",121,40;
- }
- end;
- }
- evt_zombie,267,89,1 script zombiewarp003 45,2,2,{
- OnTouch:
- if (@Hallow08Warp == 3) {
- set Hallow08Kill,2;
- specialeffect 16;
- warp "payon",253,95;
- }
- end;
- }
- evt_zombie,0,0,0,0 monster Zombie 3000,150,0,0,0
- evt_zombie,0,0,0,0 monster Ghoul 3001,80,0,0,0
- evt_zombie,0,0,0,0 monster Zombie Master 3002,20,0,0,0
|