summaryrefslogblamecommitdiff
path: root/world/map/npc/009-2/trader.txt
blob: 46ccafac2c0ad616616a252c90d4462a45c17c2a (plain) (tree)
1
2
3
4
5
6
7
8
9
10



                                             
 
                               
 


                            
                                      

                   
                                                                                                                                   

         
                                     
                                           

       




                                                    
                             

         
                   
                                                                  


                         
                                 

        
                                        
                       









                                                                                                                                         

        
                   
                                                                                                      
                 

        
                   
                                                                                                                         
                     

            



                                                     
                                                             

       
                   
                                                                                                                

                           
                                           

          



                                                                                               
                                             

           
                   
                                                                                                                                                                                                                 

                           
                                              

          
                                                 
                                                 


                                                                                                            
                                

                            
                                                                   


                            
 
          
                                                   
                                                    


                                                                                                                 
                                   

                               
                                                                   


                            

       
                                                            
                                                   


                                                                                                                                
                                  

                                     
                                                                   


                            

       

                                                                                                                               
                 

          
                   
                                                                                                       
                 

                 

                                           
                 

     

                                


                 


                         
          
 
// Teaches Trading skill
// Offers item conversion for non-magic users
// Updated by: TheKandiman
// Reviewed by: Wombat

009-2,29,98,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 < 2) 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;
}