summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2020-11-12 19:22:52 -0300
committerJesusaves <cpntb1@ymail.com>2020-11-12 19:22:52 -0300
commitb98ff390000356c26a76798b1e8d28512de3200b (patch)
tree105d066971d9df54e669c5baf375687e00e825dc
parentde46368fc56384d3054f572d278304aece2d7e1a (diff)
downloadserverdata-b98ff390000356c26a76798b1e8d28512de3200b.tar.gz
serverdata-b98ff390000356c26a76798b1e8d28512de3200b.tar.bz2
serverdata-b98ff390000356c26a76798b1e8d28512de3200b.tar.xz
serverdata-b98ff390000356c26a76798b1e8d28512de3200b.zip
Add Joaquim initial version
-rw-r--r--npc/020-1/_import.txt1
-rw-r--r--npc/020-1/joaquim.txt201
2 files changed, 202 insertions, 0 deletions
diff --git a/npc/020-1/_import.txt b/npc/020-1/_import.txt
index 5c7dec2f..27f1a180 100644
--- a/npc/020-1/_import.txt
+++ b/npc/020-1/_import.txt
@@ -17,6 +17,7 @@
"npc/020-1/inar.txt",
"npc/020-1/issay.txt",
"npc/020-1/itka.txt",
+"npc/020-1/joaquim.txt",
"npc/020-1/joelin.txt",
"npc/020-1/jossy.txt",
"npc/020-1/mahoud.txt",
diff --git a/npc/020-1/joaquim.txt b/npc/020-1/joaquim.txt
new file mode 100644
index 00000000..d9d97030
--- /dev/null
+++ b/npc/020-1/joaquim.txt
@@ -0,0 +1,201 @@
+// The Mana World Script, ported from Moubootaur Legends
+// TMW2 Script, ported from TMW-BR
+// TMW2 Author: Jesusalva
+//
+// Creator: Cardinalli
+// Review: Lunovox <rui.gravata@gmail.com>
+//
+// Description:
+// A rather easy quest to give players what to kill.
+// Reward:
+// Mouboo pendant + 20% exp of level 55
+
+020-1,95,133,4 script Joaquim NPC_MAGE_BLUE,{
+ function joaquimTooWeak;
+ function joaquimWeak;
+ function joaquimComplete;
+ function joaquimFinish;
+ function joaquimDoIt;
+ function joaquimReturn;
+ function joaquimRecipe;
+ function joaquimFound;
+ function joaquimMissing;
+ function joaquimStart;
+
+ .@q=getq(HalinarzoQuest_SickWife);
+ if (BaseLevel < 36) joaquimTooWeak();
+ if (BaseLevel < 55) joaquimWeak();
+ switch (.@q) {
+ case 0: joaquimStart(); break;
+ case 1: joaquimFound(); break;
+ case 2: joaquimReturn(); break;
+ case 3: joaquimDoIt(); break;
+ case 4: joaquimFinish(); break;
+ default: joaquimComplete(); break;
+ }
+ close;
+
+function joaquimTooWeak {
+ mesn;
+ mesq l("Hmm, why can't I find swamp yellowherb here in the desert...?");
+ close;
+}
+
+function joaquimWeak {
+ mesn;
+ .@r=rand2(1,5);
+ switch (.@r) {
+ case 1:
+ mesq l("Watch out! My wife was gravely wounded the other day. Tonori monsters are no child play!");
+ break;
+ case 2:
+ mesq l("Ah, I hate mushrooms. Perhaps in future, I could use their spikes and mushies.");
+ break;
+ case 3:
+ mesq l("Ah, I hate snakes. Perhaps in future, I could use their tongues.");
+ break;
+ case 4:
+ mesq l("Ah, I love mouboos. But their steaks, hmm. Ah, no, I shouldn't eat that...");
+ break;
+ case 5:
+ mesq l("You should never sell your Cactus Drinks. They have many uses.");
+ break;
+ }
+ close;
+}
+
+function joaquimComplete {
+ mesn;
+ mesq l("Thanks for helping my wife, I'll be forever grateful.");
+ return;
+}
+
+function joaquimFinish {
+ inventoryplace ElixirOfLife, 1, MoubooPendant, 1;
+ getitem ElixirOfLife, 1;
+ getitem MoubooPendant, 1;
+ quest_xp(.maxLevel, 39260);
+ quest_jxp(.maxLevel, 75);
+ setq HalinarzoQuest_SickWife, 5;
+ mesn;
+ mesq l("Take this spare @@ I did. It heals fully and instantly, so don't hesit to use it if you're about to die.", getitemlink(ElixirOfLife));
+ next;
+ mesn;
+ mesq l("Thanks for helping my wife! Here is, an %s. May the Mouboo watch over you! o.o", getitemlink(MoubooPendant));
+ return;
+}
+
+function joaquimDoIt {
+ mesn;
+ mesq l("Please help my wife Yumi, on the Clinic!");
+ return;
+}
+
+// Quest Core
+function joaquimStart {
+ mesn;
+ mesq l("Ohhhhh..... Please, help me!!! My wife is gravely wounded!!");
+ next;
+ mesn strcharinfo(0);
+ mesq l("Calm down! How can I help you?");
+ next;
+ mesn;
+ mesq l("My grandmother gave me a recipe of the %s, it can cure anything but death.", getitemlink(ElixirOfLife));
+ next;
+ mesn;
+ mesq l("I don't remember what I need now, but if you give me a moment, I'll get the list.");
+ setq HalinarzoQuest_SickWife, 1;
+ return;
+}
+
+function joaquimFound {
+ mesn;
+ mesq l("I can make an %s, I still have a bottle of fairy blood, a few mana pearls, and some other rare ingredients.", getitemlink(ElixirOfLife));
+ mesq l("It is the non-rare ingredients I actually need help with!");
+ next;
+ joaquimRecipe();
+ next;
+ select
+ l("I will do it, don't worry."),
+ rif(countitem(ElixirOfLife), l("I have one here...")),
+ l("Ahh, too many items. Sorry.");
+ mes "";
+ mesn;
+ if (@menu == 1) {
+ mes lg("Thanks! Thanks! Savior! Hurry up!");
+ setq HalinarzoQuest_SickWife, 2;
+ } else if (@menu == 2) {
+ mes l("Uhm, sorry, I don't trust stuff you get at market. You know.");
+ mes l("Full of agrotoxins, transgenics and whatever. Not safe.");
+ } else {
+ mes l("Oh noes, who nows can help my wife? Please reconsider!");
+ }
+ return;
+}
+
+function joaquimReturn {
+ joaquimRecipe();
+ next;
+ select
+ l("I'll be back later with all ingredients."),
+ l("They're with me.");
+ mes "";
+ if (@menu == 1)
+ close;
+
+ if (countitem(CactusDrink) < 100 ||
+ countitem(HardSpike) < 60 ||
+ countitem(SmallMushroom) < 45 ||
+ countitem(SnakeTongue) < 40 ||
+ countitem(BottleOfWater) < 30 ||
+ countitem(BugLeg) < 20 ||
+ countitem(MoubooSteak) < 15)
+ joaquimMissing();
+
+ inventoryplace ElixirOfLife, 1;
+
+ delitem CactusDrink, 100;
+ delitem HardSpike, 60;
+ delitem SmallMushroom, 45;
+ delitem SnakeTongue, 40;
+ delitem BottleOfWater, 30;
+ delitem BugLeg, 20;
+ delitem MoubooSteak, 15;
+ getitem ElixirOfLife, 1;
+ setq HalinarzoQuest_SickWife, 3;
+ mesn;
+ mesq l("Thanks, I'll just bake the Elixir right away...!");
+ next;
+ mesc l("%s goes away for a while and returns briefly.", .name$);
+ next;
+ mesn;
+ mesq l("Here, take the Elixir. Please, bring it to my wife! I am counting on you!!");
+ return;
+}
+
+function joaquimMissing {
+ mesn strcharinfo(0);
+ mesq l("Except they're not. I'll be back later.");
+ next;
+ mesn;
+ mesq l("Please, %s! Hurry up!", strcharinfo(0));
+ close;
+}
+
+function joaquimRecipe {
+ mesn l("%s Recipe", getitemlink(ElixirOfLife));
+ mesc l("%d/%d %s", countitem(CactusDrink), 100, getitemlink(CactusDrink));
+ mesc l("%d/%d %s", countitem(HardSpike), 60, getitemlink(HardSpike));
+ mesc l("%d/%d %s", countitem(SmallMushroom), 45, getitemlink(SmallMushroom));
+ mesc l("%d/%d %s", countitem(SnakeTongue), 40, getitemlink(SnakeTongue));
+ mesc l("%d/%d %s", countitem(BottleOfWater), 30, getitemlink(BottleOfWater));
+ mesc l("%d/%d %s", countitem(BugLeg), 20, getitemlink(BugLeg));
+ mesc l("%d/%d %s", countitem(MoubooSteak), 15, getitemlink(MoubooSteak));
+ return;
+}
+
+OnInit:
+ .maxLevel = 75;
+ .distance = 5;
+ end;
+}