summaryrefslogtreecommitdiff
path: root/npc/020-2-24/kylian.txt
diff options
context:
space:
mode:
Diffstat (limited to 'npc/020-2-24/kylian.txt')
-rw-r--r--npc/020-2-24/kylian.txt130
1 files changed, 130 insertions, 0 deletions
diff --git a/npc/020-2-24/kylian.txt b/npc/020-2-24/kylian.txt
new file mode 100644
index 00000000..0b1bce37
--- /dev/null
+++ b/npc/020-2-24/kylian.txt
@@ -0,0 +1,130 @@
+// The Mana World scripts.
+// Author:
+// Jesusalva
+// Description:
+// Rich merchant
+// Variables:
+// TonoriQuest_Kylian
+// q1 - State of the Quest
+// q2 - "Know" mask
+// q3 - Timer to return
+
+020-2-24,35,24,0 script Kylian NPC_KPG_MANAGER,{
+ function kylianLuggage;
+ function kylianGiveLuggage;
+ function kylianLicense;
+ .@q=getq(TonoriQuest_Kylian);
+ switch (.@q) {
+ case 0:
+ kylianLuggage();
+ break;
+ case 1:
+ mesn;
+ mesq l("Please show Adrian the luggage ticket I gave you.");
+ break;
+ case 2:
+ kylianGiveLuggage();
+ break;
+ case 3:
+ kylianLicense();
+ break;
+ default:
+ mesn;
+ mesq l("I wish to take a nap now, so please do not disturb me.");
+ break;
+ }
+ close;
+
+function kylianLuggage {
+ // Insert lore babbling here
+ mesn;
+ mesq l("Ah! Are you the room service? I have some requests.");
+ next;
+ select
+ l("Sure... What can I do for you?"),
+ l("No, I'm not!");
+ mes "";
+ if (@menu == 2) {
+ mesn;
+ mesq l("Too bad. Would you be interested in earning some quick money with some errands regardless?");
+ next;
+ select
+ l("I'm a great adventurer! I don't do petty errands."),
+ l("No. I'm busy."),
+ l("Well... OK.");
+ mes "";
+ if (@menu != 3)
+ return;
+ }
+ mesn;
+ mesq l("I need you to get my luggage from the docks. Just show this paper to the sailor who's watching the luggage.");
+ mesc l("%s gives you his ticket, which you promptly store in a safe pocket outside of your inventory.", .name$);
+ setq1 TonoriQuest_Kylian, 1;
+ next;
+ mesn;
+ mesq l("I'll be waiting your return.");
+ return;
+}
+
+function kylianGiveLuggage {
+ if (!countitem(Suitcase)) {
+ mesn;
+ mesq l("Please come back with my %s.", getitemlink(Suitcase));
+ return;
+ }
+ mesn;
+ mesq l("Did you get my luggage from the docks?");
+ select
+ l("Here it is."),
+ l("Don't worry; I'm on my way.");
+ mes "";
+ if (@menu == 2)
+ return;
+ delitem Suitcase, 1;
+ quest_gp(.maxLevel, 100);
+ quest_item(.maxLevel, Acorn, 12);
+ setq1 TonoriQuest_Kylian, 3;
+ mesn;
+ mesq l("Ah! Very good. I have some urgent paperwork that I've been needing to attend to.");
+ next;
+ mesn;
+ mesq l("Before you go, I also happen to have some acorns left over from my trip. You can have them if you wish; they're rather tasty.");
+ mesc l("He gives you some money and acorns.");
+ next;
+ mesn;
+ mesq l("If, however, you don't like them, you could take them to the %s. I heard they use them to make a special kind of flour.", b(l("Tulimshar bakery")));
+ next;
+ kylianLicense();
+ return;
+}
+
+function kylianLicense {
+ mesn;
+ mesq l("I'm a merchant and came to Tulimshar because I'm thinking about establishing a shop here.");
+ next;
+ mesn;
+ mesq l("While I'm going through my papers, could you find out whom I have to talk to about opening up a shop in this city?");
+ if (!(getq2(TonoriQuest_Kylian) & KYLIAN_YANIS))
+ return;
+ next;
+ select
+ l("You need to go and talk to Yanis in the government building."),
+ l("I'll see what I can do.");
+ mes "";
+ if (@menu == 2)
+ return;
+ mesc l("You explain Kylian how to reach the Townhall.");
+ next;
+ quest_gp(.maxLevel, 50);
+ setq1 TonoriQuest_Kylian, 4;
+ setq3 TonoriQuest_Kylian, gettimetick(2)+900; // 15 minutes
+ mesn;
+ mesq l("Ah... excellent! That's very helpful. I need to prepare my papers now. I might have some more questions later on though.");
+ return;
+}
+
+OnInit:
+ .maxLevel = 35;
+ .distance = 4;
+ end;
+}