summaryrefslogtreecommitdiff
path: root/npc/001-1/fexil.txt
diff options
context:
space:
mode:
Diffstat (limited to 'npc/001-1/fexil.txt')
-rw-r--r--npc/001-1/fexil.txt143
1 files changed, 143 insertions, 0 deletions
diff --git a/npc/001-1/fexil.txt b/npc/001-1/fexil.txt
new file mode 100644
index 00000000..1122f051
--- /dev/null
+++ b/npc/001-1/fexil.txt
@@ -0,0 +1,143 @@
+// Evol scripts.
+// Author:
+// Reid
+// Description:
+// Newbie merchant.
+// Variables:
+// ArtisQuests_Fexil
+// Quest states:
+// 0 -- not started
+// 1 -- Lloyd warned about the quest
+// 2 -- Fexil explain what he needs
+// 3 -- Fexil buy every fur that the pc bring to him
+
+001-1,47,134,0 script Fexil#001-1 NPC_ELVEN_MAN_TRADER,{
+
+ function fexil_quest {
+ speech S_LAST_NEXT,
+ l("You know, the life of the merchant is hard. I really hope that Artis and the Merchant Guild will help me to succeed."),
+ l("Maybe you too you could help me?"),
+ l("I want to be the first merchant of this square to sell clothes made from @@s!", getitemlink(FluffyFur)),
+ l("I will buy all of the fur that you will bring me at a good price, let's say, 15 E piece."),
+ l("Do we have a deal?");
+
+ switch (select(l("Ok."), l("I don't want to be part of this joke.")))
+ {
+ case 1:
+ setq ArtisQuests_Fexil, 3;
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("Awesome! I will wait for you here.");
+ break;
+ case 2:
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("Oh... Ok, I will be around here if you change your mind.");
+ break;
+ }
+ return;
+ }
+
+ mesn;
+ mesq l("Greetings traveler.");
+ next;
+ mesq l("I have some clothes and other things for you at a fine price!");
+ next;
+ mesq l("What I sell comes from every corner of Gasaron.");
+ next;
+ mesq l("Interested?");
+ next;
+
+ if (getq(ArtisQuests_Fexil) == 1)
+ {
+ select(l("I have your pass from the Merchant Guild."));
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("Oh! You saved me, I was too afraid to unpack my stuff without this pass."),
+ l("Hey, I remember you, we were on the same boat, you are the castaway.");
+
+ switch (select(l("Yes I am."),
+ l("You're confusing me with someone else.")))
+ {
+ case 1:
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("Oh sure I remember you."),
+ l("The travel was fine for you? It was terrible for me, I was sea-sick.");
+ break;
+ case 2:
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("Ah, I didn't have much sleep, it's possible.");
+ break;
+ }
+ setq ArtisQuests_Fexil, 2;
+ fexil_quest;
+
+ closeclientdialog;
+ goodbye;
+ close;
+ }
+
+ .@fexil = getq(ArtisQuests_Fexil);
+
+ select
+ l("OK, let's trade."),
+ rif(.@fexil == 2, l("Do you still need help?")),
+ rif(.@fexil > 2 && countitem(FluffyFur) > 0, l("I have some fur for you.")),
+ l("No. Sorry.");
+
+ switch (@menu)
+ {
+ case 1:
+ closeclientdialog;
+ shop "Bag#001-1";
+ close;
+
+ case 2:
+ mes "";
+ fexil_quest;
+ break;
+
+ case 3:
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("Awesome. How many of those do you want to give me?");
+
+ do
+ {
+ input .@amount;
+ if (.@amount < 1)
+ {
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("Please enter a valid amount.");
+ continue;
+ }
+ if (.@amount > countitem(FluffyFur))
+ {
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("You don't have enough @@s on you.", getitemlink(FluffyFur));
+ continue;
+ }
+
+ break;
+ } while (1);
+
+ .@price = 15 * .@amount;
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("Deal, I offer you @@ E!", .@price);
+
+ delitem FluffyFur, .@amount;
+ Zeny += .@price;
+
+ break;
+
+ case 4:
+ speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
+ l("Oh... Well, I just started to trade... Thus my technique may not be the best."),
+ l("Anyway, if you ever feel interested, just check my bag!");
+ break;
+ }
+
+ closeclientdialog;
+ goodbye;
+ close;
+
+OnInit:
+ .distance = 2;
+ end;
+}