summaryrefslogtreecommitdiff
path: root/npc
diff options
context:
space:
mode:
Diffstat (limited to 'npc')
-rw-r--r--npc/001-1_Tulimshar/trader.txt130
1 files changed, 123 insertions, 7 deletions
diff --git a/npc/001-1_Tulimshar/trader.txt b/npc/001-1_Tulimshar/trader.txt
index e9cea442..b99a0250 100644
--- a/npc/001-1_Tulimshar/trader.txt
+++ b/npc/001-1_Tulimshar/trader.txt
@@ -1,8 +1,17 @@
-//
+// Teaches Trading skill
+// Offers item conversion for non-magic users
+// Updated by: TheKandiman
+// Reviewed by: Wombat
001-1.gat,57,33,0 script Trader 115,{
set @TRADE_SKILL, 2;
- if (getskilllv(@TRADE_SKILL) > 0) goto L_Has;
+ set @Ironprice, 1000;
+ set @Sulphurprice, 1200;
+ set @Potionprice, 500;
+ if ((getskilllv(@TRADE_SKILL) > 0)
+ && baselevel >= 25)
+ goto L_Trade;
+ if (getskilllv(@TRADE_SKILL) > 0) goto L_Later;
mes "[Trader]";
mes "\"Hello. I came here to trade wares with the people of Tulimshar. Unfortunately for you, I've traded everything I had.\"";
@@ -26,8 +35,8 @@ L_Except:
mes "\"I could teach you how to trade. It'll cost you 5GP.\"";
next;
menu
- "Sure", L_Teach,
- "No thank you", -;
+ "Sure.", L_Teach,
+ "No thank you.", -;
close;
L_Teach:
@@ -42,15 +51,122 @@ L_Teach:
mes "[Trader]";
mes "\"Items added to the trade cannot be removed, and so mistakes have to be dealt with by canceling the trade.";
mes "You need to press the change button to let the other person know about GP changes.\"";
+ next;
+ goto L_Later;
+
+L_Later:
+ mes "[Trader]";
+ mes "\"Please feel free to check back later. I'm expecting a large shipment of goods to trade.\"";
+ close;
+
+L_Trade:
+ mes "[Trader]";
+ mes "\"Welcome back! My shipment came in and I have a bunch of things that I can trade now. What would you like?\"";
+ goto L_Trademenu;
+
+L_Trademenu:
+ menu
+ "Do you have [Iron Powder]?", L_Iron,
+ "How about [Sulphur Powder]?", L_Sulphur,
+ "I need [Medium Healing Potion]s.", L_Healpots,
+ "I think I have everything I need, thanks.", -;
+ close;
+
+L_Iron:
+ mes "[Trader]";
+ mes "\"I do have a few of those. I will give you 4 [Iron Powder]s for 1 [Iron Ore] and " + @Ironprice + "gp.\"";
+ menu
+ "Sure.", L_Ipowder,
+ "What a ripoff! No way!", -;
+ close;
+
+L_Sulphur:
+ mes "[Trader]";
+ mes "\"I can trade you 5 [Sulphur Powder]s for 1 [Pile Of Ash] and " + @Sulphurprice + "gp.\"";
+ menu
+ "Here you go.", L_Spowder,
+ "Are you nuts?! Forget it!", -;
+ close;
+
+L_Healpots:
+ mes "[Trader]";
+ mes "\"Healing potions are always useful, but I rarely need anything larger than the small ones. I will happily trade you 1 [Medium Healing Potion] for 3 [Small Healing Potion]s and " + @Potionprice + "gp.\"";
+ menu
+ "Alright.", L_Pots,
+ "Whoa, that's way too much.", -;
+ close;
+
+L_Ipowder:
+ if (countitem("IronOre") < 1) goto L_Missing;
+ if (zeny < @Ironprice) goto L_NotEnoughMoney;
+ getinventorylist;
+ if (@inventorylist_count == 100
+ && countitem("IronOre") > 1
+ && countitem("IronPowder") < 1)
+ goto L_Full;
+ delitem "IronOre", 1;
+ set zeny, zeny - @Ironprice;
+ getitem "IronPowder", 4;
+ mes "[Trader]";
+ mes "\"There you go. Would you like to trade anything else?\"";
+ menu
+ "Yes.", L_Trademenu,
+ "No.", L_No;
close;
-L_Has:
+L_Spowder:
+ if (countitem("PileOfAsh") < 1) goto L_Missing;
+ if (zeny < @Sulphurprice) goto L_NotEnoughMoney;
+ getinventorylist;
+ if (@inventorylist_count == 100
+ && countitem("PileOfAsh") > 1
+ && countitem("SulphurPowder") < 1)
+ goto L_Full;
+ delitem "PileOfAsh", 1;
+ set zeny, zeny - @Sulphurprice;
+ getitem "SulphurPowder", 5;
mes "[Trader]";
- mes "\"I still don't have anything to trade. I wonder where that shipment is....\"";
+ mes "\"There you go. Would you like to trade anything else?\"";
+ menu
+ "Yes.", L_Trademenu,
+ "No.", L_No;
+ close;
+
+L_Pots:
+ if (countitem("SmallHealingPotion") < 3) goto L_Missing;
+ if (zeny < @Potionprice) goto L_NotEnoughMoney;
+ getinventorylist;
+ if (@inventorylist_count == 100
+ && countitem("SmallHealingPotion") > 3
+ && countitem("MediumHealingPotion") < 1)
+ goto L_Full;
+ delitem "SmallHealingPotion", 3;
+ set zeny, zeny - @Potionprice;
+ getitem "MediumHealingPotion", 1;
+ mes "[Trader]";
+ mes "\"There you go. Would you like to trade anything else?\"";
+ menu
+ "Yes.", L_Trademenu,
+ "No.", L_No;
+ close;
+
+L_Full:
+ mes "[Trader]";
+ mes "\"You must have been making a lot of trades...your bag is completely full! Come back after you've made some room.\"";
+ close;
+
+L_Missing:
+ mes "[Trader]";
+ mes "\"It looks like you're missing some items. Please come back when you have enough to trade.\"";
close;
L_NotEnoughMoney:
mes "[Trader]";
- mes "\"You don't have enough GP\"";
+ mes "\"You don't have enough money.\"";
+ close;
+
+L_No:
+ mes "[Trader]";
+ mes "\"Have a great day!\"";
close;
}