summaryrefslogblamecommitdiff
path: root/npc/guilds/exchange.txt
blob: 168dc93bc78cdf8541201b79947215c2f0d4fe6d (plain) (tree)
1
2
3
4
5
6
7





                                       
                        






                                                                              
                                         
                                                  
                                                
                                                  
                                                
                                                  
                                                
                                                  
                                                
                                                   



                                                      
                                 
                                        
                                              
                                               
                                               
                                               
                                               
                                               
                                               
                                               




                                                   
                                   
                                        
                                              
                                               
                                               
                                               
                                               
                                               
                                               
                                               
                                               
                
                                                 

         
                                        
                                           
                                                       
                                                  
                                                       
                                                  
                                                       
                                                  
                                                        
                                                  




                                                          


                                                                                    


                                                                                        













                                                       
                                                   

                      








                                                      
                                                                          
                                 
                                                   

                      








                                                      
                                            
                                 
                                                   










                                                         
                                         
                                 
                                                   


















                                                             
// TMW2 Script
// Author:
//  Jesusalva
// Description:
//  Trades Guild Coins for useful items
// Variable:
//  #GUILDSHOP (bitmask)

guilds,29,24,0	script	Guild Coin Exchange	NPC_NO_SPRITE,{
    do
    {
        mes l("You have %d %s", countitem(GuildCoin), getitemlink(GuildCoin));
        next;
        // Calculate fruit cost
        if (!(#GUILDSHOP & GEX_fruit1)) {
            .@fruitcost=200; .@fruitId=GEX_fruit1;
        } else if (!(#GUILDSHOP & GEX_fruit2)) {
            .@fruitcost=350; .@fruitId=GEX_fruit2;
        } else if (!(#GUILDSHOP & GEX_fruit3)) {
            .@fruitcost=500; .@fruitId=GEX_fruit3;
        } else if (!(#GUILDSHOP & GEX_fruit4)) {
            .@fruitcost=750; .@fruitId=GEX_fruit4;
        } else if (!(#GUILDSHOP & GEX_fruit5)) {
            .@fruitcost=1000; .@fruitId=GEX_fruit5;
        } else {
            .@fruitcost=false; .@fruitId=GEX_fruitMAX;
        }

        // Calculate mercbox cost
        if (!(#GUILDSHOP & GEX_merc1)) {
            .@merccost=50; .@mercId=GEX_merc1;
        } else if (!(#GUILDSHOP & GEX_merc2)) {
            .@merccost=100; .@mercId=GEX_merc2;
        } else if (!(#GUILDSHOP & GEX_merc3)) {
            .@merccost=175; .@mercId=GEX_merc3;
        } else if (!(#GUILDSHOP & GEX_merc4)) {
            .@merccost=250; .@mercId=GEX_merc4;
        } else if (!(#GUILDSHOP & GEX_merc5)) {
            .@merccost=350; .@mercId=GEX_merc5;
        } else {
            .@merccost=false; .@mercId=GEX_mercMAX;
        }

        // Calculate blueprint cost
        if (!(#GUILDSHOP & GEX_blue1)) {
            .@bluecost=75; .@blueId=GEX_blue1;
        } else if (!(#GUILDSHOP & GEX_blue2)) {
            .@bluecost=100; .@blueId=GEX_blue2;
        } else if (!(#GUILDSHOP & GEX_blue3)) {
            .@bluecost=150; .@blueId=GEX_blue3;
        } else if (!(#GUILDSHOP & GEX_blue4)) {
            .@bluecost=200; .@blueId=GEX_blue4;
        } else if (!(#GUILDSHOP & GEX_blue5)) {
            .@bluecost=250; .@blueId=GEX_blue5;
        } else {
            .@bluecost=300; .@blueId=GEX_blueMAX;
        }

        // Calculate arcmage boxset cost
        if (!(#GUILDSHOP & GEX_arcmage1)) {
            .@arcmagecost=30; .@arcmageId=GEX_arcmage1;
        } else if (!(#GUILDSHOP & GEX_arcmage2)) {
            .@arcmagecost=60; .@arcmageId=GEX_arcmage2;
        } else if (!(#GUILDSHOP & GEX_arcmage3)) {
            .@arcmagecost=90; .@arcmageId=GEX_arcmage3;
        } else if (!(#GUILDSHOP & GEX_arcmage4)) {
            .@arcmagecost=120; .@arcmageId=GEX_arcmage4;
        } else if (!(#GUILDSHOP & GEX_arcmage5)) {
            .@arcmagecost=150; .@arcmageId=GEX_arcmage5;
        } else {
            .@arcmagecost=150; .@arcmageId=GEX_arcmageMAX;
        }

        menuint
            l("Close"), 0,
            rif(.@fruitcost, .@fruitcost+l(" Coins - Mysterious Fruit")), .@fruitId,
            rif(.@merccost, .@merccost+l(" Coins - Mercenary Boxset")), .@mercId,
            rif(.@bluecost, .@bluecost+l(" Coins - Ancient Blueprint")), .@blueId,
            rif(.@arcmagecost, .@arcmagecost+l(" Coins - Arcmage Boxset")), .@arcmageId;

        mes "";
        switch (@menuret) {
            case GEX_fruit1:
            case GEX_fruit2:
            case GEX_fruit3:
            case GEX_fruit4:
            case GEX_fruit5:
            case GEX_fruitMAX:
                if (countitem(GuildCoin) < .@fruitcost)
                    close;
                delitem GuildCoin, .@fruitcost;
                getitem MysteriousFruit, 1;
                if (@menuret > 0)
                    #GUILDSHOP=#GUILDSHOP|@menuret;
                break;

            case GEX_merc1:
            case GEX_merc2:
            case GEX_merc3:
            case GEX_merc4:
            case GEX_merc5:
            case GEX_mercMAX:
                if (countitem(GuildCoin) < .@merccost)
                    close;
                delitem GuildCoin, .@merccost;
                getitem (#GUILDSHOP & GEX_merc3 ? MercBoxE : MercBoxD), 1;
                if (@menuret > 0)
                    #GUILDSHOP=#GUILDSHOP|@menuret;
                break;

            case GEX_blue1:
            case GEX_blue2:
            case GEX_blue3:
            case GEX_blue4:
            case GEX_blue5:
            case GEX_blueMAX:
                if (countitem(GuildCoin) < .@bluecost)
                    close;
                delitem GuildCoin, .@bluecost;
                getitem AncientBlueprint, 1;
                if (@menuret > 0)
                    #GUILDSHOP=#GUILDSHOP|@menuret;
                break;

            case GEX_arcmage1:
            case GEX_arcmage2:
            case GEX_arcmage3:
            case GEX_arcmage4:
            case GEX_arcmage5:
            case GEX_arcmageMAX:
                if (countitem(GuildCoin) < .@arcmagecost)
                    close;
                delitem GuildCoin, .@arcmagecost;
                getitem ArcmageBoxset, 1;
                if (@menuret > 0)
                    #GUILDSHOP=#GUILDSHOP|@menuret;
                break;
        }

    } while (@menuret != 0);
    close;

OnInit:
    .@npcId = getnpcid(.name$);
    setunitdata(.@npcId, UDT_HEADTOP, TopHat);
    setunitdata(.@npcId, UDT_HEADMIDDLE, GoldenWarlordPlate);
    setunitdata(.@npcId, UDT_WEAPON, JeansChaps);
    setunitdata(.@npcId, UDT_HEADBOTTOM, AssassinBoots);
    setunitdata(.@npcId, UDT_HAIRSTYLE, 25);
    setunitdata(.@npcId, UDT_HAIRCOLOR, 4);

    .sex = G_MALE;
    .distance = 5;
    end;
}