From 4ea19270fef8a576f1ec58538cfb52d5c96aa809 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Thu, 19 Jul 2018 19:56:14 -0300 Subject: 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! --- npc/017-1/_import.txt | 1 + npc/017-1/paxel.txt | 185 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 186 insertions(+) create mode 100644 npc/017-1/paxel.txt (limited to 'npc/017-1') 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; + +} -- cgit v1.2.3-60-g2f50