From 2901ba177dea5867cbd52eb2b02a0ef8e1816e15 Mon Sep 17 00:00:00 2001 From: wushin Date: Wed, 7 Jan 2015 21:00:16 -0600 Subject: Moving Tutorial from Tulimshar to Candor --- world/map/npc/009-2/trader.txt | 155 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 155 insertions(+) create mode 100644 world/map/npc/009-2/trader.txt (limited to 'world/map/npc/009-2/trader.txt') diff --git a/world/map/npc/009-2/trader.txt b/world/map/npc/009-2/trader.txt new file mode 100644 index 00000000..572cad1b --- /dev/null +++ b/world/map/npc/009-2/trader.txt @@ -0,0 +1,155 @@ +// Teaches Trading skill +// Offers item conversion for non-magic users +// Updated by: TheKandiman +// Reviewed by: Wombat + +009-2.gat,39,93,0|script|Trader|115 +{ + set @Ironprice, 1000; + set @Sulphurprice, 1200; + set @Potionprice, 500; + if (BaseLevel >= 25) goto L_Trade; + + mes "[Trader]"; + mes "\"Hello. I came here to trade wares with the people of Hurnscald. Unfortunately for you, I've traded everything I had.\""; + next; + menu + "Oh. I'll go then.", L_Close, + "You don't have anything?", L_More; + +L_More: + mes "[Trader]"; + mes "\"No. I have nothing for you. Except...\""; + next; + menu + "Yes?", L_Except, + "Ok then.", L_Close; + +L_Except: + mes "[Trader]"; + mes "\"I could teach you how to trade. It'll cost you 2GP.\""; + next; + menu + "Sure.", L_Teach, + "No thank you.", L_Close; + +L_Teach: + if (Zeny < 5) goto L_NotEnoughMoney; + set Zeny, Zeny - 2; + mes "[Trader]"; + mes "\"You can initiate trade with someone by right-clicking on them and choosing trade."; + mes "You'll both add the items and set the GP you're putting up then press propose trade."; + mes "After both parties have proposed their side, you can both review the trade, and then accept or reject by closing the window.\""; + next; + 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.\""; + goto L_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 Potions.", L_Healpots, + "I think I have everything I need, thanks.", L_Close; + +L_Iron: + mes "[Trader]"; + mes "\"I do have a few of those. I will give you 4 Iron Powders for 1 Iron Ore and " + @Ironprice + "gp.\""; + menu + "Sure.", L_Ipowder, + "What a ripoff! No way!", L_Close; + +L_Sulphur: + mes "[Trader]"; + mes "\"I can trade you 5 Sulphur Powders for 1 Pile of Ash and " + @Sulphurprice + "gp.\""; + menu + "Here you go.", L_Spowder, + "Are you nuts?! Forget it!", L_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 Potions and " + @Potionprice + "gp.\""; + menu + "Alright.", L_Pots, + "Whoa, that's way too much.", L_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; + +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 "\"There you go. Would you like to trade anything else?\""; + menu + "Yes.", L_Trademenu, + "No.", L_No; + +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; + +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.\""; + goto L_Close; + +L_Missing: + mes "[Trader]"; + mes "\"It looks like you're missing some items. Please come back when you have enough to trade.\""; + goto L_Close; + +L_NotEnoughMoney: + mes "[Trader]"; + mes "\"You don't have enough money.\""; + goto L_Close; + +L_No: + mes "[Trader]"; + mes "\"Have a great day!\""; + goto L_Close; + +L_Close: + set @Ironprice, 0; + set @Sulphurprice, 0; + set @Potionprice, 0; + close; +} -- cgit v1.2.3-60-g2f50