diff options
Diffstat (limited to 'npc')
-rw-r--r-- | npc/Changelog.txt | 4 | ||||
-rw-r--r-- | npc/cities/aldebaran.txt | 143 | ||||
-rw-r--r-- | npc/events/custom/hallow06.txt | 125 | ||||
-rw-r--r-- | npc/quests/seals/megingard_seal.txt | 5 | ||||
-rw-r--r-- | npc/scripts_custom.conf | 2 |
5 files changed, 211 insertions, 68 deletions
diff --git a/npc/Changelog.txt b/npc/Changelog.txt index 42ff17c3c..9f3f172ab 100644 --- a/npc/Changelog.txt +++ b/npc/Changelog.txt @@ -29,6 +29,10 @@ Playtester Date Added
======
+10/10
+ * Fixed Seals quest [Lupus]
+ * Updated Kafra Pavianne [Lupus]
+ * Added new custom Halloween Event by Stryker. I made it safe to use 8) [Lupus]
10/06
* Fixed Shuriken Rekka requiring Cracked Diamond rather than Steel [Playtester]
* Added official treasure spawn to Novice Castles [Lupus]
diff --git a/npc/cities/aldebaran.txt b/npc/cities/aldebaran.txt index decb9bdb7..e790a94a6 100644 --- a/npc/cities/aldebaran.txt +++ b/npc/cities/aldebaran.txt @@ -3,7 +3,7 @@ //===== By: ==================================================
//= eAthena dev team
//===== Current Version: =====================================
-//= 1.8
+//= 1.9a
//===== Compatible With: =====================================
//= eAthena 1.0
//===== Description: =========================================
@@ -19,9 +19,9 @@ //= with official prizes (80% official, 4-5 entries are made up)
//= also changed typo Orange Potions -> Red Potions [Lupus]
//= 1.6 Fixed bug (missing label), optimized all menus [Lupus]
-//= 1.7 Fixed exploits [Lupus]
-//= 1.8 Removed Duplicates [Silent]
+//= 1.7 Fixed exploits [Lupus] 1.8 Removed Duplicates [Silent]
//= 1.9 Fixed a bunch of typos with information from Crono/Hollengrhen [Evera]
+//= 1.9a Now Pavianne doesn't sell Kafra Passes. She refunds them [Lupus]
//============================================================
@@ -791,7 +791,7 @@ aldeba_in.gat,24,245,4 script Kafra Jasmine 115,{ mes "[Kafra Jasmine]";
mes "That... that... that was just an act.... YEAH! An act I put on for the customers. Heh.. heh....";
emotion e_swt;
- cutin "kafra_03",255;
+ cutin "",255;
close;
M_1:
mes "[Kafra Jasmine]";
@@ -805,7 +805,7 @@ aldeba_in.gat,24,245,4 script Kafra Jasmine 115,{ mes "[Kafra Jasmine]";
mes "So please, DON'T TEMPT ME...!!";
emotion e_pif;
- cutin "kafra_03",255;
+ cutin "",255;
close;
M_2:
mes "[Kafra Jasmine]";
@@ -814,7 +814,7 @@ aldeba_in.gat,24,245,4 script Kafra Jasmine 115,{ mes "[Kafra Jasmine]";
mes "Just kidding~~ Tehehe";
emotion e_heh;
- cutin "kafra_03",255;
+ cutin "",255;
close;
}
@@ -1001,7 +1001,7 @@ M_Menu: M_End:
mes "[Kafra]";
mes "Please come back anytime when you have more reserve points.";
- cutin "kafra_03",255;
+ cutin "",255;
close;
}
@@ -1045,13 +1045,13 @@ aldeba_in.gat,88,161,3 script Kafra#05 115,{ sL_NotEnuf:
mes "[Kafra]";
mes "I'm sorry dear but you do not have enough points for this selection.";
- cutin "kafra_03",255;
+ cutin "",255;
close;
M_End:
mes "[Kafra]";
mes "No problem. Collect more and more special reserve points by using the Kafra Services found throughout Rune Midgard.";
mes "Thank you for using Kafra Corp. services.";
- cutin "kafra_03",255;
+ cutin "",255;
close;
}
@@ -1087,8 +1087,10 @@ function script F_Lottery { if(@Lotto == 1) getitem 2328,1;//Items: Wooden_Mail,
if(@Lotto == 2) getitem 2307,1;//Items: Mantle,
if(@Lotto == 3) getitem 657,10;//Items: Berserk_Potion,
- if(@Lotto == 4) getitem 607,2;//Items: Yggdrasilberry,
- if(@Lotto == 4) getitem 608,1;//Items: Yggdrasil_Seed,
+ if(@Lotto == 4) {
+ getitem 607,2;//Items: Yggdrasilberry,
+ getitem 608,1;//Items: Yggdrasil_Seed,
+ }
if(@Lotto == 5) getitem 607,3;//Items: Yggdrasilberry,
return;
sL_Prize2:
@@ -1098,8 +1100,10 @@ function script F_Lottery { if(@Lotto == 2) getitem 2226,1;//Items: Cap,
if(@Lotto == 3) getitem 2201,1;//Items: Sunglasses,
if(@Lotto == 4) getitem 526,3;//Items: Royal_Jelly,
- if(@Lotto == 5) getitem 608,1;//Items: Yggdrasil_Seed,
- if(@Lotto == 5) getitem 526,10;//Items: Royal_Jelly,
+ if(@Lotto == 5) {
+ getitem 608,1;//Items: Yggdrasil_Seed,
+ getitem 526,10;//Items: Royal_Jelly,
+ }
return;
sL_Prize3:
mes "[Kafra]";
@@ -1147,61 +1151,68 @@ sF_Spin: aldeba_in.gat,81,166,4 script Kafra Pavianee 117,{
cutin "kafra_01",2;
mes "[Kafra Pavianne]";
- mes "Welcome! I'm Kafra service's first Kafra type 'Pavianne'";
+ mes "Welcome! I'm Pavianne,";
+ mes "one of the senior Kafra Employees.";
+ mes "The Kafra Corporation Service is";
+ mes "always trying to satisfy 100 % of";
+ mes "our customers' expectations.";
next;
mes "[Kafra Pavianne]";
- mes "Our Kafra Service is always trying to achieve 100% customer satisfaction based on the 3 principles of Trust, Devotion, and Honesty.";
- next;
- mes "[Kafra Pavianne]";
- mes "With complete service training and supervision, we are able to fully meet the needs of our customers.";
- next;
- menu "Buy a Kafra Pass",-,"What is a Kafra Pass",M_1,"Good Bye",M_3,"I have a question...",M_4;
-
- if(Zeny < 2000) goto sL_Zeny;
- mes "[Kafra Pavianne]";
- mes "Thank you for using our Kafra Service! Have a Nice Day!";
- getitem 1084,1;
- set Zeny, Zeny-2000;
- emotion e_thx;
- cutin "kafra_01",255;
- close;
-
- sL_Zeny:
- mes "[Kafra Pavianne]";
- mes "I'm sorry but you don't have enough zeny.";
- close;
-
- M_1:
- mes "[Kafra Pavianne]";
- mes "It's the best gift you can get yourself and it can only be found at the Kafra Main Office!";
+ mes "Due to a change in customer support";
+ mes "policy, we no longer accept Kafra";
+ mes "Passes. However, we are offering";
+ mes "refunds for our customers who still";
+ mes "possess these passes.";
+ next;
+ menu "Sell Kafra Pass",-,"Alright, bye~",M_BYE;
+
+ set usedKafPass,0; //clear unused global variable
+ mes "[Kafra Pavianne]";
+ if(!countitem(1084)){
+ mes "I'm sorry,";
+ mes "but you don't";
+ mes "have any Kafra Passes.";
+ emotion e_sry;
+ close2;
+ cutin "",255;
+ end;
+ }
+ mes "Let me see ... You have " + countitem(1084) + " Kafra Passes.";
+ mes "So, you will get " + (countitem(1084)*2000) + " zeny.";
next;
mes "[Kafra Pavianne]";
- mes "With a Kafra Pass, you could experience the convenience of Kafra Service world-wide! Hassle free! The price is 2000 zeny~~";
+ mes "Do you want to sell these?";
next;
+ if(select("Sell.:Nevermind.")==1){
+ mes "[Kafra Pavianne]";
+ set @t,countitem(1084);
+ if(!@t){
+ mes "Well, you DON'T have any >.<";
+ mes "I understand what you want to do but, I can't help you.";
+ emotion e_sry;
+ close2;
+ cutin "",255;
+ end;
+ }
+ delitem 1084,@t;
+ set Zeny,Zeny+@t*2000;
+ emotion e_thx;
+ mes "We already refunded all THE Kafra Passes that you had..";
+ mes "Thank you for using our service !";
+ mes "I am kafra Pavianne.";
+
+ }
+ close2;
+ cutin "",255;
+ end;
+ M_BYE:
mes "[Kafra Pavianne]";
- mes "Visit any Kafra Service in Rune-Midgard, and you could enjoy Kafra Service any time any where for once.";
- mes "Ending a conversation with Kafra Service Agent will expire the pass.";
- cutin "kafra_01",255;
- close;
- M_3:
- mes "[Kafra Pavianne]";
- mes "Thank you for using Kafra Services! I'm Kafra Pavianne, and it was a pleasure to assist you.";
+ mes "Thank you,";
+ mes "have a good day.";
emotion e_thx;
- cutin "kafra_01",255;
- close;
-
- M_4:
- mes "[Kafra Pavianne]";
- mes "Why? Is there something disturbing you?";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "No, but why is the sun not shining?";
- next;
- mes "[Kafra Pavianne]";
- mes "You will only know when your enjoyment obtains the path to illumination.";
- cutin "kafra_01",255;
- close;
-
+ close2;
+ cutin "",255;
+ end;
}
// Kafra Blossom -----------------------------------
@@ -1227,13 +1238,13 @@ aldeba_in.gat,83,244,4 script Kafra Blossom 116,{ mes "[Kafra Blossom]";
mes "Don't bother to look in your Item Inventory for it. It won't be there... tehehe... for my autograph will remain within your heart.";
emotion e_ok;
- cutin "kafra_02",255;
+ cutin "",255;
close;
M_1:
mes "[Kafra Blossom]";
mes "Huh? . . . . . That's all? Phew~ such a dull customer...";
emotion e_what;
- cutin "kafra_02",255;
+ cutin "",255;
close;
}
@@ -1255,14 +1266,14 @@ aldeba_in.gat,91,244,4 script Kafra Curly Sue 112,{ mes ".... Sob~sob~... WHAT?? I'm NOT some KID!!";
emotion e_sob;
next;
- cutin "kafra_06",255;
+ cutin "",255;
close;
M_End:
mes "[Kafra Curly Sue]";
mes "Here at Kafra Corp., we're all doing our B-E-S-T to provide our customers with the B-E-S-T service.";
mes "We really appreciate your doing business with us.";
next;
- cutin "kafra_06",255;
+ cutin "",255;
close;
}
@@ -1293,7 +1304,7 @@ aldeba_in.gat,148,244,4 script Kafra Roxie 114,{ mes "[Kafra Roxie]";
mes "Uh... please ignore what I was talking about earlier. Hahaha.....heh...";
emotion e_swt;
- cutin "kafra_04",255;
+ cutin "",255;
close;
}
diff --git a/npc/events/custom/hallow06.txt b/npc/events/custom/hallow06.txt new file mode 100644 index 000000000..c88c190e3 --- /dev/null +++ b/npc/events/custom/hallow06.txt @@ -0,0 +1,125 @@ +//===== eAthena Script =======================================
+//= Custom Halloween Event 2006
+//===== By: ==================================================
+//= Stryker
+//===== Current Version: =====================================
+//= 1.2
+//===== Compatible With: =====================================
+//= Latest Svn
+//===== Description: =========================================
+//= Halloween Event Script
+//===== Additional Comments: =================================
+//= Version 1.1 - Added trick to script
+//= 1.2 fixed bugs, optimized. Now uses 1 var instead of 3 [Lupus]
+//============================================================
+
+
+prontera.gat,151,190,5 script Hallows' Eve Event 807,{
+ mes "[Hallows' Eve Event]";
+ if(Class == Job_Novice){
+ mes "I am sorry but you have to got a job to complete the event.";
+ emotion e_swt,1;
+ close;
+ }
+ if(EVENT_HALWN06&1 && EVENT_HALWN06&2){
+ mes "I am sorry but you have already completed the event.";
+ emotion e_sry;
+ close;
+ }
+ mes "Greetings fellow lively human.";
+ next;
+ mes "[Hallows' Eve Event]";
+ mes "Halloween is upon us and it is almost time to adventure out into places few dare go.";
+ next;
+ mes "[Hallows' Eve Event]";
+ mes "Trick or treat, which do you prefer?";
+ next;
+ menu "Trick",-, "Treat",L_Treat;
+
+ mes "[Hallows' Eve Event]";
+ if(EVENT_HALWN06&2){
+ mes "I'm sorry but you have already had a trick. Why don't you go pick a treat now.";
+ emotion e_sry;
+ close;
+ }
+ mes "Give me a min...";
+ next;
+ set BaseExp,BaseExp+BaseLevel*1000;
+ set EVENT_HALWN06,EVENT_HALWN06|2;
+
+ mes "[Hallows' Eve Event]";
+ mes "Here is your treat. Your Base EXP has been slightly increased.";
+ next;
+ mes "[Hallows' Eve Event]";
+ mes "I hope you enjoy your trick and Happy Halloween!";
+ close;
+
+L_Treat:
+ mes "[Hallows' Eve Event]";
+ if(EVENT_HALWN06&1){
+ mes "I'm sorry but you have already had a treat. Why don't you go pick a trick now.";
+ emotion e_sry;
+ close;
+ }
+ if(!(EVENT_HALWN06&4)){
+ mes "Great! This shall be so much fun.";
+ next;
+ mes "[Hallows' Eve Event]";
+ mes "I will be sending you on a scavenger hunt for items.";
+ next;
+ mes "[Hallows' Eve Event]";
+ mes "Bring back all the necessary items, and I will create you a treat.";
+ next;
+ mes "[Hallows' Eve Event]";
+ mes "Not just any normal treat either that you can eat, but it is something you can wear on your head.";
+ next;
+ mes "[Hallows' Eve Event]";
+ mes "But with all things made, some items are required first.";
+ mes "The list:";
+ mes "1 Hat,";
+ mes "30 Pumpkin, and";
+ mes "20 Black Piece of Cloth";
+ next;
+ mes "[Hallows' Eve Event]";
+ mes "Hurry along now.";
+ set EVENT_HALWN06,EVENT_HALWN06|4;
+ close;
+ }
+ mes "Did you get the items I requested or do you need to see the list again?";
+ next;
+ menu "Got'em",-, "Don't Have",L_Dont_Have, "See List",L_List;
+
+ mes "[Hallows' Eve Event]";
+ if((countitem(2220) < 1) || (countitem(535) < 30) || (countitem(7205) < 20)){
+ mes "You don't have enough items. Come back when you do.";
+ emotion e_sry;
+ close;
+ }
+ delitem 2220,1;
+ delitem 535,30;
+ delitem 7205,20;
+ getitem 5134,1;
+ set EVENT_HALWN06,EVENT_HALWN06|1;
+ mes "Good job! I hope you are happy with your item.";
+ emotion e_grat;
+ next;
+ mes "[Hallows' Eve Event]";
+ mes "Enjoy the rest of your halloween.";
+ emotion e_scissors,1;
+ close;
+
+L_Dont_Have:
+ mes "[Hallows' Eve Event]";
+ mes "Go back out and search for them. Would you like to view the list?";
+ next;
+ menu "No",-, "Yes",L_List;
+ close;
+
+L_List:
+ mes "[Hallows' Eve Event]";
+ mes "I require the following items:";
+ mes "1 Hat,";
+ mes "30 Pumpkin, and";
+ mes "20 Black Piece of Cloth.";
+ close;
+}
\ No newline at end of file diff --git a/npc/quests/seals/megingard_seal.txt b/npc/quests/seals/megingard_seal.txt index 33f838e41..cc0e053f7 100644 --- a/npc/quests/seals/megingard_seal.txt +++ b/npc/quests/seals/megingard_seal.txt @@ -3,13 +3,14 @@ //===== By: ==================================================
//= SinSloth
//===== Current Version: =====================================
-//= 1.0
+//= 1.01
//===== Compatible With: =====================================
//= eAthena
//===== Description: =========================================
//= Quest for breaking the seal of Megingjard.
//===== Additional Comments: =================================
// 1.0 First version. Thanks to SinSloth for scripting it. [MasterOfMuppets]
+// 1.1 fixed exploit [Lupus]
//============================================================
prt_castle.gat,44,151,0 script Rebarev Doug 56,{
@@ -506,7 +507,7 @@ else prt_castle.gat,48,164,0 script Crusader#God 734,{
-if($God1 > 49 && God2 < 100)
+if($God1 > 49 && $God2 < 100)
{
if(god_eremes > 22 && god_eremes < 25)
{
diff --git a/npc/scripts_custom.conf b/npc/scripts_custom.conf index 4be9bc129..6972a7874 100644 --- a/npc/scripts_custom.conf +++ b/npc/scripts_custom.conf @@ -140,3 +140,5 @@ npc: npc/custom/adoption.txt //npc: npc/custom/quests/kiel_quest.txt
//Grand Circlet Quest combined with Excalibur Quest
//npc: npc/events/custom/kings_items.txt
+//Custom Halloween Event (gives )
+//npc: npc/events/custom/hallow06.txt
\ No newline at end of file |