summaryrefslogblamecommitdiff
path: root/npc/001-1/trader.txt
blob: b99a02509204f6ebfd61f1c6a463efe4ba48ddf3 (plain) (tree)
1
2
3
4
5
6
7



                                             


                                             






                                                       






















                                                                                                                                       

                                   


              
                                            









                                                                                                                                             




























































                                                                                                                                                                                                                          

              










                                                        
                       































                                                                                                                                   



                       





                                               

              
// 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;
	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.\"";
	next;
	menu
		"Oh. I'll go then.", -,
		"You don't have anything?", L_More;
	close;

L_More:
	mes "[Trader]";
	mes "\"No. I have nothing for you. Except...\"";
	next;
	menu
		"Yes?", L_Except,
		"Ok then.",  -;
	close;

L_Except:
	mes "[Trader]";
	mes "\"I could teach you how to trade.  It'll cost you 5GP.\"";
	next;
	menu
		"Sure.", L_Teach,
		"No thank you.", -;
	close;

L_Teach:
	if (zeny < 5) goto L_NotEnoughMoney;
	set zeny, zeny - 5;
	setskill @TRADE_SKILL, 1;
	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.\"";
	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_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;
	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 money.\"";
	close;

L_No:
	mes "[Trader]";
	mes "\"Have a great day!\"";
	close;
}