summaryrefslogtreecommitdiff
path: root/npc/017-1
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2018-07-19 19:56:14 -0300
committerJesusaves <cpntb1@ymail.com>2018-07-19 19:56:14 -0300
commit4ea19270fef8a576f1ec58538cfb52d5c96aa809 (patch)
tree400aa8d929ab7c8bae39bbc758f2904867d6f7d3 /npc/017-1
parentc39c8ab4d22e8e8c04960d7183929a38a78abed1 (diff)
downloadserverdata-4ea19270fef8a576f1ec58538cfb52d5c96aa809.tar.gz
serverdata-4ea19270fef8a576f1ec58538cfb52d5c96aa809.tar.bz2
serverdata-4ea19270fef8a576f1ec58538cfb52d5c96aa809.tar.xz
serverdata-4ea19270fef8a576f1ec58538cfb52d5c96aa809.zip
Paxel prototype, I only reuse name and a string from LoF Paxel.
The original quest was done by Darlord and was on LoF forum. Warning: Seasonal quest for rare item, can only be done on spring!
Diffstat (limited to 'npc/017-1')
-rw-r--r--npc/017-1/_import.txt1
-rw-r--r--npc/017-1/paxel.txt185
2 files changed, 186 insertions, 0 deletions
diff --git a/npc/017-1/_import.txt b/npc/017-1/_import.txt
index f7a9cb93b..ede6731a6 100644
--- a/npc/017-1/_import.txt
+++ b/npc/017-1/_import.txt
@@ -6,6 +6,7 @@
"npc/017-1/mapflags.txt",
"npc/017-1/misc.txt",
"npc/017-1/nowhere_man.txt",
+"npc/017-1/paxel.txt",
"npc/017-1/roger.txt",
"npc/017-1/signs.txt",
"npc/017-1/soul-menhir.txt",
diff --git a/npc/017-1/paxel.txt b/npc/017-1/paxel.txt
new file mode 100644
index 000000000..9094d1ef0
--- /dev/null
+++ b/npc/017-1/paxel.txt
@@ -0,0 +1,185 @@
+// TMW2/LoF Script
+// This is from LoF Forums, to replace LoF Paxel
+//----------------------------------------------------
+// PRSM Helmet quest (seasonal quest)
+// Create Quest: Darlord (Depredador)
+//----------------------------------------------------
+
+// Old Paxel turned Raw Coal in Coal... But we don't have Raw Coal.
+// He probably used the nice furnace NPC too... We will need another NPC to use that...
+
+017-1,131,22,0 script Paxel NPC_PLAYER,{
+ .@q=getq(SQuest_Paxel);
+ if(.@q == 2) goto L_Done;
+ if (season() != SEASON_SPRING && !$@GM_OVERRIDE) goto L_OutOfSeason;
+ if(.@q == 1) goto L_Ask2;
+
+ if (BaseLevel >= 60) goto L_Ask1;
+
+L_OutOfSeason:
+ mesn;
+ mesq l("Hello! Calm wind today!");
+ menu
+ l("Yes, but I like windy days."), L_Wind,
+ l("Hmm... sorry but gotta go..."), L_Go;
+ close;
+
+L_Go:
+ mesn;
+ mesq l("Ok, good trip then.");
+ close;
+
+L_Wind:
+ mesn;
+ mesq l("I don't like them, I can't fly straight.");
+ next;
+ mesn;
+ if (BaseLevel < 60)
+ mesq l("Well, not like you could understand that with your level! %%a");
+ else
+ mesq l("This is why I love spring!");
+ close;
+
+// ----------------------------------------------------
+// Desert Helmet quest start
+// ----------------------------------------------------
+L_Ask1:
+ mesn;
+ mesq l("Hello @@! Do you have some @@ with you?", strcharinfo(0), getitemlink(TerraniteOre));
+
+ menu
+ rif(countitem(TerraniteOre),l("Yes... right... what about Terranite Ore?")), L_Quest1,
+ rif(countitem(TerraniteOre),l("Yes, but I have grown attached to Terranite Ore...")), L_No,
+ l("Right, but now I have business in other places."), L_Rude;
+ close;
+
+L_Quest1:
+ mesn;
+ mesq l("Terranite Ore is a really special item. People without helmets can't understand @@'s real power, anyway if you could give me some of them you would understand why they are so special.", getitemlink(TerraniteOre));
+
+ menu
+ l("Certainly, you can have all my Terranite Ore."), L_Check1,
+ l("Sorry but I am not interested in that."), L_No;
+ close;
+
+L_No:
+ mesn;
+ mesq l("Ok, come back me when you want to know the @@ real power!", getitemlink(TerraniteOre));
+ close;
+
+L_Rude:
+ mesn;
+ mesq l("Well, good luck with your business.");
+ close;
+
+
+// ----------------------------------------------------
+// Arc 1: Terranite Ores
+// ----------------------------------------------------
+L_Check1:
+ if (countitem(TerraniteOre) < 12)
+ goto L_More_Needed1;
+
+ delitem TerraniteOre, 12;
+ getexp 15000, 150;
+ setq SQuest_Paxel, 1;
+ mesn;
+ mesq l("Perfect! you have enough Terranite Ore, I will take them for now but I need other items in order to bring them to life.");
+
+L_Ask2:
+ mesn;
+ mesq l("I need a suitable base helmet, some herbs to use my magical dye, and gold:");
+ mesc l("@@/1 @@", countitem(WarlordHelmet), getitemlink(WarlordHelmet));
+ mesc l("@@/100 @@", countitem(PinkAntenna), getitemlink(PinkAntenna));
+ mesc l("@@/?? @@", countitem(CobaltHerb), getitemlink(CobaltHerb));
+ mesc l("@@/@@ GP", format_number(Zeny), format_number(10000));
+
+ menu
+ l("Please have a look, I have what you asked"), L_Check2,
+ l("On my way to get what you need."), -;
+ close;
+
+
+// ----------------------------------------------------
+// Arc 2: Prsm Helmet
+// ----------------------------------------------------
+L_Check2:
+ if (countitem(PinkAntenna) < 100 || countitem(WarlordHelmet) < 1 || countitem(CobaltHerb) < 60)
+ goto L_More_Needed2;
+ if (Zeny < 10000) {
+ mesn;
+ mesq l("You can't afford my work! Do some odd jobs and come back.");
+ close;
+ }
+
+ inventoryplace PrsmHelmet, 1;
+ delitem PinkAntenna, 100;
+ delitem WarlordHelmet, 1;
+ delitem TerraniteOre, 20;
+ getexp 60000, 0;
+ getitem PrsmHelmet, 1;
+ setq SQuest_Paxel, 2;
+ mesn;
+ mesq l("There you go, a special and rare @@!", getitemlink(PrsmHelmet));
+ close;
+
+// ----------------------------------------------------
+// Failure: Insufficient material
+// ----------------------------------------------------
+L_More_Needed1:
+ mesn;
+ mesq l("Your @@ is not enough, please look for more.", getitemlink(TerraniteOre));
+ close;
+
+L_More_Needed2:
+ mesn;
+ mesq l("I am sorry but i can see that you don't have all that I asked you.");
+ next;
+ mesn;
+ mesq l("Please bring me that or I won't be able to make something really special for you.");
+ close;
+
+
+// ----------------------------------------------------
+// Quest complete
+// ----------------------------------------------------
+L_Done:
+ mesn;
+ mesq l("Hello winged friend! How is the wind today?");
+
+ menu
+ rif(season() == SPRING || $@GM_OVERRIDE, l("It's spring, when the wind is always good.")), L_Spring,
+ l("Calm, perfect for a fly!"), L_Fly,
+ l("Gale, not good to fly."), L_Wind2;
+ close;
+
+L_Fly:
+ mesn;
+ mesq l("Haha yes, you are right!");
+ close;
+
+L_Wind2:
+ mesn;
+ mesq l("Yep, I never fly in these days.");
+ close;
+
+// TODO: Maybe we can add something else here
+L_Spring:
+ mesn;
+ mesq l("Hahah, good to hear! Do you know some items are only dropped on spring? You should go after them!");
+ close;
+
+OnInit:
+ .@npcId = getnpcid(0, .name$);
+ setunitdata(.@npcId, UDT_HEADTOP, PrsmHelmet);
+ setunitdata(.@npcId, UDT_HEADMIDDLE, WarlordPlate);
+ setunitdata(.@npcId, UDT_HEADBOTTOM, NPCEyes);
+ setunitdata(.@npcId, UDT_WEAPON, JeansChaps);
+ setunitdata(.@npcId, UDT_HAIRSTYLE, 24);
+ setunitdata(.@npcId, UDT_HAIRCOLOR, 14);
+
+ .sex=G_MALE;
+ .distance=5;
+ end;
+
+}