summaryrefslogtreecommitdiff
path: root/npc/re/quests/eden
diff options
context:
space:
mode:
Diffstat (limited to 'npc/re/quests/eden')
-rw-r--r--npc/re/quests/eden/eden_iro.txt276
1 files changed, 256 insertions, 20 deletions
diff --git a/npc/re/quests/eden/eden_iro.txt b/npc/re/quests/eden/eden_iro.txt
index e60f0aedd..3236313f3 100644
--- a/npc/re/quests/eden/eden_iro.txt
+++ b/npc/re/quests/eden/eden_iro.txt
@@ -3,13 +3,14 @@
//===== By: ==================================================
//= -SkittleNugget-
//===== Current Version: =====================================
-//= 1.1
+//= 1.2
//===== Description: =========================================
//= Eden scripts custom to iRO (disabled by default).
//= You may need iRO's data.grf to view some of the items.
//===== Additional Comments: =================================
//= 1.0 First version.
//= 1.1 Edited and added more NPCs, lots of placeholders. [Euphy]
+//= 1.2 Added Mail Annex Station scripts, commented out. [Euphy]
//============================================================
// Acolyte Warper (part of other/acolyte_warp.txt)
@@ -338,7 +339,7 @@ moc_para01,50,39,4 script Eve Natalia 4_F_SITDOWN,{
// Bubble Gum & Battle Manual Exchanger
//============================================================
moc_para01,48,184,2 script Gum & Manual Exchanger 2_DROP_MACHINE,{
- if (Weight < MaxWeight / 2) {
+ if (checkweight(Knife,1) == 0 || MaxWeight - Weight < 2000) {
mes "You're carrying too many items right now.";
close;
}
@@ -409,8 +410,7 @@ L_Exchange:
close;
}
mes "[Trader Machine]";
- mes "That's a total of "+.@amount;
- mes getitemname(getarg(2))+".";
+ mes "That's a total of " + .@amount + " " + getitemname(getarg(2)) + ".";
mes "Is this correct?";
next;
if(select("Yes, give them to me!:No, wait not yet.") == 2)
@@ -427,9 +427,194 @@ L_Exchange:
close;
}
+// Merry Badger
+//============================================================
+moc_para01,13,22,4 script Merry Badger#xch 882,{
+ mes "[Merry Badger]";
+ mes "Hello there! I'm Merry Badger and I was hired to exchange the ^00CC00Eden Merit Badges^000000!";
+ next;
+ mes "[Merry Badger]";
+ mes "I can take your Merit Badges and give you some useful stuff, or I can take some of your stuff and give you some Eden Merit Badges.";
+ mes "As I get more authorization I can offer more things to trade with you, so definitely keep me in mind when visiting the Eden Group.";
+ next;
+ switch (select("Redeem Badges:Trade in FOR badges:Exchange Rates:15 Job Manuals - 1 JM Box")) {
+ case 1:
+ while (true) {
+ mes "[Merry Badger]";
+ mes "Sure thing, I have several options currently for your badges!";
+ next;
+ switch(select("This week's Special:2 EMB for 10 KVM Badge:2 EMB for 10 Bravery Medals:2 EMB for 10 Valor Medals:5 EMB for 5 Medium Life Potion:5 EMB for 5 Life Insurance:5 EMB for 5 Token of Siegfried:7 EMB for 1 Job Battle Manual:8 EMB for 1 Reset Stone:Nothing Now")){
+ case 1:
+ if (countitem(Para_Logro_Badge) < 3) {
+ mes "[Merry Badger]";
+ mes "You don't have enough ^00CC00Eden Merit Badges^000000. Let's start over!";
+ next;
+ continue;
+ }
+ mes "[Merry Badger]";
+ mes "Ok, I have a special for 3 Merit Badges. This week I'll give you ^00CC0040 Light Granule^000000, ^0066CC40 Gun Powder^000000, ^00CC003 Izidor^000000, ^0066CC10 Prickly Fruit^000000, ^00CC001 Mandragora Flowerpot^000000, and ^0066CC3 Elder Branch^000000.";
+ next;
+ if (select("Yes:No") != 1) {
+ mes "[Merry Badger]";
+ mes "I understand, let's see if you'd like something different!";
+ next;
+ continue;
+ }
+ if (countitem(Para_Logro_Badge) < 3) {
+ mes "[Merry Badger]";
+ mes "You don't have enough ^00CC00Eden Merit Badges^000000. Let's start over!";
+ next;
+ continue;
+ }
+ delitem Para_Logro_Badge,3; //Para_Logro_Badge
+ getitem Light_Granule,40; //Light_Granule
+ getitem Gun_Power,40; //Gun_Power
+ getitem Izidor,3; //Izidor
+ getitem Prickly_Fruit,10; //Prickly_Fruit
+ getitem Mandragora_Flowerpot,1; //Mandragora_Flowerpot
+ getitem Elder_Branch,3; //Elder_Branch
+ mes "[Merry Badger]";
+ mes "There you go! What else would you like?";
+ break;
+ case 2:
+ callsub L_Exchange,2,KVM_Badge,10; //KVM_Badge
+ break;
+ case 3:
+ callsub L_Exchange,2,BF_Badge1,10; //BF_Badge1
+ break;
+ case 4:
+ callsub L_Exchange,2,BF_Badge2,10; //BF_Badge2
+ break;
+ case 5:
+ callsub L_Exchange,5,Med_Life_Potion,5; //Med_Life_Potion
+ break;
+ case 6:
+ callsub L_Exchange,5,Insurance,5; //Insurance
+ break;
+ case 7:
+ callsub L_Exchange,5,Token_Of_Siegfried,5; //Token_Of_Siegfried
+ break;
+ case 8:
+ callsub L_Exchange,7,Job_Manual50,1; //Job_Manual50
+ break;
+ case 9:
+ callsub L_Exchange,8,Premium_Reset_Stone,1; //Premium_Reset_Stone
+ break;
+ case 10:
+ mes "[Merry Badger]";
+ mes "Wonderful!";
+ mes "I'll be here if you ever want to exchange for Eden Merit Badges!";
+ close;
+ }
+ next;
+ }
+ end;
+ case 2:
+ mes "[Merry Badger]";
+ mes "I have a limited selection as of right now, but here is what I can offer to get 1 Eden Merit Badge!";
+ next;
+ if (select("Etc Items:Cancel") != 1) {
+ mes "[Merry Badger]";
+ mes "Well that is OK, if you want to see what I offer just ask!";
+ close;
+ }
+ while (true) {
+ if (select("5x Old Purple Box:Nothing") != 1) {
+ mes "[Merry Badger]";
+ mes "Wonderful!";
+ mes "I'll be here if you ever want to exchange for Eden Merit Badges!";
+ close;
+ }
+ mes "[Merry Badger]";
+ if (countitem(Old_Violet_Box) < 5) {
+ mes "You don't have enough of that to get 1 Eden Merit Badge. Lets start over!";
+ } else {
+ mes "Wonderful, what else do you want?"; //custom dialogue
+ delitem Old_Violet_Box,5; //Old_Violet_Box
+ getitem Para_Logro_Badge,1; //Para_Logro_Badge
+ }
+ next;
+ }
+ end;
+ case 3:
+ mes "[Merry Badger]";
+ mes "This is what I'll give you for your ^00CC00Eden Merit Badges^000000!";
+ mes "Ok, I have a special for 3 Merit Badges. This week I'll give you ^00CC0040 Light Granule^000000, ^0066CC40 Gun Powder^000000, ^00CC003 Izidor^000000, ^0066CC10 Prickly Fruit^000000, ^00CC001 Mandragora Flowerpot^000000, and ^0066CC3 Elder Branch^000000.";
+ mes "^00CC002 Eden Merit Badges^000000 = ^0066CC10x KVM Badge^000000";
+ mes "^00CC002 Eden Merit Badges^000000 = ^0066CC10x Bravery Medals^000000";
+ mes "^00CC002 Eden Merit Badges^000000 = ^0066CC10x Valor Medals^000000";
+ mes "^00CC005 Eden Merit Badges^000000 = ^0066CC5x Medium Life Potion^000000";
+ mes "^00CC005 Eden Merit Badges^000000 = ^0066CC5x Life Insurance^000000";
+ mes "^00CC005 Eden Merit Badges^000000 = ^0066CC5x Token Of Siegfried^000000";
+ mes "^00CC007 Eden Merit Badges^000000 = ^0066CC1x Job Battle Manual^000000";
+ mes "^00CC008 Eden Merit Badges^000000 = ^0066CC1x Reset Stone^000000";
+ next;
+ mes "[Merry Badger]";
+ mes "This is what you can give me to get ^00CC001 Eden Merit Badge^000000!";
+ mes "^0066CC5x Old Purple Box^000000";
+ close;
+ case 4:
+ mes "[Merry Badger]";
+ mes "I was strong armed into giving this, but you are worth it!";
+ mes "Do you want to exchange 15 Job Manuals to get 1 Tradable box of 10 Job Manuals?";
+ mes "I know 15 does not equal 10, but boxes are expensive you know.";
+ next;
+
+ //custom dialogue below
+ if (select("Yes:No") != 1) {
+ mes "[Merry Badger]";
+ mes "Wonderful!";
+ mes "I'll be here if you ever want to exchange for Eden Merit Badges!";
+ close;
+ }
+ if (countitem(Job_Manual50) < 15) {
+ mes "[Merry Badger]";
+ mes "You don't have 15 or more Job Manuals to get 1 Box!";
+ close;
+ }
+ mes "[Merry Badger]";
+ mes "Wonderful, what else do you want?";
+ delitem Job_Manual50,15; //Job_Manual50
+ getitem Job_Manual50_Box,1; //Job_Manual50_Box
+ close;
+ }
+ end;
+
+//callsub L_Exchange,<badge cost>,<item id>,<amount>;
+L_Exchange:
+ mes "[Merry Badger]";
+ mes "Ok, I can give you ^ff0000"+getitemname(getarg(1))+"^000000 for ^0066CC"+getarg(0)+" of your Eden Merit Badge(s)^000000.";
+ mes "Do you want to?";
+ next;
+ if (select("Yes:No") != 1) {
+ mes "[Merry Badger]";
+ mes "I understand, let's see if you'd like something different!";
+ return;
+ }
+ if (countitem(Para_Logro_Badge) < getarg(0)) {
+ mes "[Merry Badger]";
+ mes "You don't have enough ^00CC00Eden Merit Badges^000000. Let's start over!";
+ return;
+ }
+ mes "[Merry Badger]";
+ mes "There you go! What else would you like?";
+ delitem Para_Logro_Badge, getarg(0); //Para_Logro_Badge
+ getitem getarg(1),getarg(2);
+ return;
+}
+
+
// Kafra Stacker
//============================================================
moc_para01,41,169,2 script Kafra Stacker#eden 4_M_ALCHE_B,{
+ if (checkweight(Knife,1) == 0 || MaxWeight - Weight < 2000) {
+ mes "- Wait a moment! -";
+ mes "- Currently you're carrying -";
+ mes "- too much weight in items. -";
+ mes "- Please come back later -";
+ mes "- after you put some into Kafra storage. -";
+ close;
+ }
mes "[Toma]";
mes "I can take your non-stacking Kafra Consumables";
mes "and make them fit neatly into stacks!";
@@ -457,6 +642,11 @@ moc_para01,41,169,2 script Kafra Stacker#eden 4_M_ALCHE_B,{
// Code Redeemer
//============================================================
moc_para01,38,162,2 script Code the Redeemer#Give1 4_M_YOUNGKNIGHT,{
+ if (checkweight(Knife,1) == 0 || MaxWeight - Weight < 2000) {
+ mes "^0000ffHold it right there!";
+ mes "You're carrying too many items and don't have enough inventory space to receive any rewards. Please make more inventory space available and come back to take this challenge.^000000";
+ close;
+ }
mes "[Code the Redeemer]";
mes "Welcome, "+strcharinfo(0)+"!";
mes "I've been expecting you.";
@@ -484,11 +674,11 @@ moc_para01,38,162,2 script Code the Redeemer#Give1 4_M_YOUNGKNIGHT,{
//============================================================
/* Due to the irregularity of iRO's databases, some of these sprites may not display properly. */
-moc_para01,32,171,4 cashshop Kafra Headgears#eden1 4_F_KAFRA3,14024:500,14098:150,17081:300,14097:500,14094:1000,14017:400,14099:300
+moc_para01,32,171,6 cashshop Kafra Headgears#eden1 4_F_KAFRA3,14024:500,14098:150,17081:300,14097:500,14094:1000,14017:400,14099:300
moc_para01,35,174,2 cashshop Kafra Dye Shop#dyes2 4_F_KAFRA4,6287:150
-moc_para01,36,170,2 cashshop Kafra Consumables#eden3 4_F_KAFRA6,13810:5,14167:400,16556:100,14111:75,14075:25,16419:30,14107:70,14104:50,14112:25,14082:30,14091:60,14088:30,14085:60,14169:40,14170:40,14172:40,14173:40,14171:40,14174:40,14159:100,14160:100,14161:100,14162:100,14163:100:14164:100,16420:1500
+moc_para01,37,170,2 cashshop Kafra Consumables#eden3 4_F_KAFRA6,13810:5,14167:400,16556:100,14111:75,14075:25,16419:30,14107:70,14104:50,14112:25,14082:30,14091:60,14088:30,14085:60,14169:40,14170:40,14172:40,14173:40,14171:40,14174:40,14159:100,14160:100,14161:100,14162:100,14163:100:14164:100,16420:1500
moc_para01,32,174,2 cashshop Kafra Rental Items#eden 4_F_KAFRA7,16683:150,16682:50,14126:250,14125:250,16430:250,14137:250,14127:250,14118:250,14119:250,14132:250,16425:250,14124:250,14133:250,14130:250,16424:250,14136:250,14122:250,16426:250,14135:250,14134:250,14138:250,16428:250,16431:250,14139:250,14131:250,16429:250,16427:250
-moc_para01,36,172,2 cashshop Kafra Costume#eden5 4_F_KAFRA8,16974:300,16972:600,16973:150,16975:150,16977:150,17014:150,17015:150
+moc_para01,37,172,2 cashshop Kafra Costume#eden5 4_F_KAFRA8,16974:300,16972:600,16973:150,16975:150,16977:150,17014:150,17015:150
moc_para01,35,168,1 cashshop Kafra Utility Shop#eden 4_F_KAFRA5,16677:25,13990:400,16396:100,16394:100,17106:500,6241:10,6240:10,6225:15,6226:15,14002:5,6294:500,7776:50,7619:30,7620:30,12208:40,14156:400,12210:40,14158:400,14042:50,14044:50,14046:50,14048:50,14114:50,14166:40,16418:500,16381:400,14165:100,14157:100,14178:100
// Duplicate NPCs
@@ -521,7 +711,7 @@ OnTimer5000:
}
// Gym Pass Trainer "Ripped Cabus" (other/gympass)
-moc_para01,33,162,4 duplicate(Ripped Cabus#GymPass) Ripped Callus#ed 4_M_HUMAN_02
+moc_para01,33,162,6 duplicate(Ripped Cabus#GymPass) Ripped Callus#ed 4_M_HUMAN_02
// RWC 2012 Enchanter "Goldenthiefberg" (events/RWC_2012.txt)
// A combination of the slotter and enchanter, currently a placeholder.
@@ -555,18 +745,6 @@ moc_para01,29,35,4 script Gramps#huntquests 4_M_LGTGRAND,{
//switch(select("Yes, I'll help.:Reward Me!:^ff0000I want to quit hunting^000000:^0000ffCan you warp me?^000000:Can you erase the timer?:What missions are you giving?:Give me Limited 3 day VIP:Tell me more about the VIP Access:No thanks, pops.")) {
}
-moc_para01,13,22,4 script Merry Badger#xch 4_F_SITDOWN,{
- mes "[Merry Badger]";
- mes "Hello there! I'm Merry Badger and I was hired to exchange the ^00CC00Eden Merit Badges^000000!";
- next;
- mes "[Merry Badger]";
- mes "I can take your Merit Badges and give you some useful stuff, or I can take some of your stuff and give you some Eden Merit Badges.";
- mes "As I get more authorization I can offer more things to trade with you, so definitely keep me in mind when visiting the Eden Group.";
- close;
- //next;
- //switch(select("Redeem Badges:Trade in FOR badges:Exchange Rates:15 Job Manuals - 1 JM Box")) {
-}
-
moc_para01,174,33,3 script Bathory#2012spirits BATHORY,{
mes "[Bathory]";
mes "Eheeheeheehee! The spotlight is on Glast Heim this week, so I'm ferrying people there for a mere 1,000z!";
@@ -596,3 +774,61 @@ moc_para01,174,33,3 script Bathory#2012spirits BATHORY,{
}
moc_para01,26,174,4 script Grandma Boxter#boxx 4_F_THAISHAMAN,{ end; }
+
+// Mail Annex Station
+//============================================================
+/* Map "auction_03" is a duplicate of "auction_02".
+
+moc_para01,30,187,4 script Mail Annex Station 2_POSTBOX,{
+ mes "[Mail Annex Station]";
+ mes "Would you like to go to the Kafra Mail Annex Station?";
+ next;
+ if (select("Yes, send me now!:No thanks.") != 1) {
+ mes "[Mail Annex Station]";
+ mes "Ok then!";
+ close;
+ }
+ mes "[Mail Annex Station]";
+ mes "Sending you to the Mail Annex Room.";
+ close2;
+ warp "auction_03",151,23;
+ end;
+}
+
+auction_03,152,16,0 warp #mail_annex_warp 1,1,moc_para01,30,184
+
+auction_03,152,42,4 script Kafra Employee#annex 4_F_KAFRA1,{
+ mes "[Kafra Employee]";
+ mes "Welcome to the Kafra's Mail Annex Station. This is now the only place to send and retrieve mail.";
+ next;
+ mes "[Kafra Employee]";
+ mes "What would you like to do?";
+ next;
+ switch(select("Access Mail:Storage:Cancel")) {
+ case 1:
+ if (Zeny < 130) {
+ mes "[Kafra Employee]";
+ mes "I am sorry, but you do not have enough money.";
+ mes "To use the mailbox service,";
+ mes "you are required to pay 130 zeny.";
+ close;
+ }
+ mes "[Kafra Employee]";
+ mes "Thank you for using the Kafra Service.";
+ Zeny -= 130;
+ close2;
+ openmail;
+ end;
+ case 2:
+ callfunc "F_KafStor",0,1200,0;
+ end;
+ case 3:
+ mes "[Kafra Employee]";
+ mes "Thank you for using the Kafra Service.";
+ close;
+ }
+}
+
+auction_03,145,47,2 shop Tool Dealer#annex 4_M_01,611:-1,501:-1,502:-1,503:-1,506:-1,504:-1,645:-1,656:-1,657:-1,601:-1,602:-1,1065:-1,911:-1,910:-1,717:-1,1092:-1,1093:-1,713:400
+
+*/