summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--db/quest_db.conf4
-rw-r--r--npc/012-1/bot.txt48
-rw-r--r--npc/017-4/pyndragon.txt27
-rw-r--r--npc/functions/util.txt6
4 files changed, 81 insertions, 4 deletions
diff --git a/db/quest_db.conf b/db/quest_db.conf
index 39e53b2bc..28363655d 100644
--- a/db/quest_db.conf
+++ b/db/quest_db.conf
@@ -317,6 +317,10 @@ quest_db: (
Id: 106
Name: "HurnscaldQuest_Thorn"
},
+{
+ Id: 107
+ Name: "HurnscaldQuest_LOFPass"
+},
// ID 111 to 130: Nivalis Quests
{
diff --git a/npc/012-1/bot.txt b/npc/012-1/bot.txt
index 1bd0bdbc4..dde000620 100644
--- a/npc/012-1/bot.txt
+++ b/npc/012-1/bot.txt
@@ -8,6 +8,7 @@
// Reward: Mouboo Figurine
012-1,82,59,0 script LOFBot NPC_PLAYER,{
+ .@q=getq(HurnscaldQuest_LOFPass);
if (rand2(1,5) % 2 == 1) {
mesn;
mesq l("Ah, @@ is sooo amazing!", $MOST_HEROIC$);
@@ -18,6 +19,9 @@
next;
mesn;
mesq l("They had a TMWA server, but the Monster King went hyperactive and... Well, it crashed here.");
+ if (.@q == 0) goto L_Quest;
+ if (.@q == 1) goto L_Report;
+ if (.@q == 2) goto L_Report; // To accomodate Pyn's node. Not required.
L_Menu:
mes "";
@@ -72,6 +76,50 @@ L_Close:
npctalkonce l("Ah, @@ is so amazing!", $MOST_HEROIC$);
close;
+L_Quest:
+ mesn;
+ mesq l("Actually, could I ask you a favor?");
+ next;
+ mesn;
+ mesq l("I want a %s so badly... Pyndragon, in the forge, the master blacksmith which makes powerful weapons for high levels, can give you one.", getitemlink(LOFCoin));
+ next;
+ mesn;
+ mesq l("Just tell him that I want to reconsider, and that I want the souvenir he offered me when I moved to Hurnscald.");
+ next;
+ setq HurnscaldQuest_LOFPass, 1;
+ goto L_Menu;
+
+L_Report:
+ mes l("Did you brought me a %s?", getitemlink(LOFCoin));
+ next;
+ if (askyesno() == ASK_YES) goto L_Check;
+ goto L_Menu;
+
+L_Check:
+ if (!countitem(LOFCoin)) goto L_NoItem;
+ inventoryplace MoubooFigurine, 1;
+ delitem LOFCoin, 1;
+ getitem MoubooFigurine, 1;
+ getexp 400, 20;
+ setq HurnscaldQuest_LOFPass, 3;
+ mesn;
+ mesq lg("Thanks, my friend.");
+ next;
+ mesn;
+ mesq l("Here, you can have this souvenir.");
+ mesc l("* Item obtained: %s", getitemlink(MoubooFigurine));
+ next;
+ goto L_Menu;
+
+L_NoItem:
+ mesn;
+ mesq l("I want a %s so badly... Pyndragon, in the forge, the master blacksmith which makes powerful weapons for high levels, can give you one.", getitemlink(LOFCoin));
+ next;
+ mesn;
+ mesq l("Just tell him that I want to reconsider, and that I want the souvenir he offered me when I moved to Hurnscald.");
+ next;
+ goto L_Menu;
+
OnInit:
.@npcId = getnpcid(.name$);
setunitdata(.@npcId, UDT_HEADTOP, CenturionHelmet);
diff --git a/npc/017-4/pyndragon.txt b/npc/017-4/pyndragon.txt
index 842f4c0b7..934390e99 100644
--- a/npc/017-4/pyndragon.txt
+++ b/npc/017-4/pyndragon.txt
@@ -56,6 +56,7 @@
return;
}
+ .@q=getq(HurnscaldQuest_LOFPass);
mesn;
if (is_night())
mesq l("Good @@. My name is @@ and I make @@.", l("evening"), .name$, l("firearms"));
@@ -69,9 +70,9 @@
mesq l("Oh, just an empty staff with black powder inside it. Which explodes. And then kills monsters.");
tutmes l("%s makes specialized weapons for high level players. If you tweak with Nicholas, in Hurnscald, the weapon options, you can get really powerful.", .name$);
next;
- mesn;
- next;
- if (BaseLevel < 50)
+ if (.@q == 1) goto L_LOFBOT;
+ mes "";
+ if (BaseLevel < 50)
goto L_TooWeak;
else if (BaseLevel < 60)
goto L_Weak;
@@ -174,6 +175,26 @@ L_Close:
goodbye;
close;
+// Takes priority over craft
+L_LOFBOT:
+ select
+ l("A friend of yours called LOF BOT asked for a coin..."),
+ l("Sorry, I'm in hurry.");
+ mes "";
+ if (@menu == 2) close;
+ mesn;
+ mesq l("Ah, so LOF Bot wants a souvenir after all!");
+ next;
+ mesn;
+ mesq l("Everyone loves the Land of Fire, it is impossible to not love it.");
+ next;
+ inventoryplace LOFCoin, 1;
+ mesn;
+ mesq l("Here, please take this to them. Tell them they are welcome here anytime! %%2");
+ getitem LOFCoin, 1;
+ setq HurnscaldQuest_LOFPass, 2;
+ close;
+
function explainMelee {
mesc l("PORTABLE LIGHTSABER");
mesc l("* Very quick and can be used in a single hand.");
diff --git a/npc/functions/util.txt b/npc/functions/util.txt
index 3a745bd7a..eab941c8c 100644
--- a/npc/functions/util.txt
+++ b/npc/functions/util.txt
@@ -328,8 +328,12 @@ function script reputation {
if (getq(HurnscaldQuest_Blossom) >= 1)
.@nr=.@nr+1;
+ // LOF Bot Quest (+1 rep)
+ if (getq(HurnscaldQuest_LOFPass) >= 3)
+ .@nr=.@nr+1;
+
// HURNSCALD Magical Forumula
- .@nr=.@nr*100/11;
+ .@nr=.@nr*100/12;