summaryrefslogblamecommitdiff
path: root/npc/merchants/ammo_boxes.txt
blob: eaec0d6878fe7338c63dd5a5427494bc04e543af (plain) (tree)
1
2
3
4
5
6
7
8
9
                                                              
                         
                                                              
                    
                                                              
       


                                                              
                                             
                                                              

                                                                   
                                                     

                                                              
                                                            

                                     


                                                     

                                                     

                              




                                                        
         
        
                      
                                             

                                          

                      






















                                                                                                                                                                                                              

              
 
                                                 
 
                      
                                                
             








                                                                                                                     









                                                
         
                              

                                                 
                      
         

































                                                          




                                                                       


                                          
              
 
//===== eAthena Script =======================================
//= Magazine Dealer Kenny
//===== By: ==================================================
//= eAthena dev team
//===== Current Version: =====================================
//= 1.2
//===== Compatible With: =====================================
//= eAthena 1.0+
//===== Description: =========================================
//= Turns bullets/spheres into packs/casings.
//===== Additional Comments: =================================
//= 1.0 First version. [SinSloth]
//= 1.1 Optimized version - Reduced to only one function [SinSloth]
//= 1.2 Optimized^2, corrected npc's name [ultramage]
//============================================================

que_ng,187,149,3	script	Magazine Dealer Kenny	83,{
	
	if(BaseJob != Job_Gunslinger)
	{
		mes "[Kenny]";
		mes "I am the Casing Dealer, Kenny!";
		mes "I'm here to package the Shells";
		mes "and Bullets for Gunslingers.";
		next;
		mes "[Kenny]";
		mes "But you don't look like a";
		mes "Gunslinger to me. I'm afraid";
		mes "that I must ask you to leave";
		mes "after you're done looking around.";
		close;
	}
	
	mes "[Kenny]";
	mes "I am the Casing Dealer, Kenny!";
	mes "If your bullets are getting";
	mes "too heavy, come to me!";
	next;
	mes "[Kenny]";
	mes "I can make you Casings and Packs,";
	mes "which will let you carry the";
	mes "Spheres at a lower weight!";
	mes "Come on! Take a look!";
	next;
	switch( select( "Lightning Sphere Pack","Blind Sphere Pack","Poison Sphere Pack","Freezing Sphere Pack","Flare Sphere Pack","Bullet Casing","Shell of Blood Casing","Silver Bullet Casing","Cancel" ))
	{
		case 1: callfunc "Func_Casing",13204,12144; break;
		case 2: callfunc "Func_Casing",13206,12145; break;
		case 3: callfunc "Func_Casing",13205,12146; break;
		case 4: callfunc "Func_Casing",13207,12147; break;
		case 5: callfunc "Func_Casing",13203,12148; break;
		case 6: callfunc "Func_Casing",13200,12149; break;
		case 7: callfunc "Func_Casing",13202,12150; break;
		case 8: callfunc "Func_Casing",13201,12151; break;
		case 9: 
		default:
			mes "[Kenny]";
			mes "Alright. If there's";
			mes "something else I can help";
			mes "you with, please tell me.";
			close;
	}
	close;
}

function	script		Func_Casing	{

	mes "[Kenny]";
	mes "Please input the amount you want.";
	next;
	mes "[Kenny]";
	mes "" +getitemname(getarg(1))+ " will";
	if(getarg(0) == 13202) { mes "cost 500 Shells of Blood"; } else mes "cost 500 " +getitemname(getarg(0))+ "s";
	mes "and 500 zeny each.";
	next;
	mes "[Kenny]";
	mes "You can trade a maximum of 50.";
	mes "Input 0 if you want to cancel.";
	next;
	input .@caser_amount;
	if(.@caser_amount < 1)
	{
		mes "[Kenny]";
		mes "Alright. If there's";
		mes "something else I can help";
		mes "you with, please tell me.";
		close;
	}
	if(.@caser_amount > 50)
	{
		mes "[Kenny]";
		mes "You've exceeded the limit!";
		mes "Try again next time?";
		close;
	}
	set .@caser_bullet, .@caser_amount * 500;
	
	//Weight checking
	if(checkweight(getarg(1), .@caser_amount) != 1)
	{
		mes "[Kenny]";
		mes "You are overweight.";
		mes "Please clear your inventory.";
		close;
	}
	
	//Materials checking
	if(countitem(getarg(0)) < .@caser_bullet)
	{
		mes "[Kenny]";
		mes "Huh......";
		mes "You don't have enough";
		mes "materials to trade for";
		mes "the number of items you";
		mes "want. Please come with the";
		mes "correct amount of items.";
		close;
	}
	
	//Zeny checking
	if(Zeny < .@caser_bullet)
	{
		mes "[Kenny]";
		mes "Erm... You don't have enough money.";
		mes "The fee is 500 zeny";
		mes "Check your zeny and come again.";
		close;
	}
	
	mes "[Kenny]";
	mes "Ah very well!";
	mes "The number is confirmed!";
	if(getarg(1) < 12149) mes "I'll get you the Packs right away.";
	else mes "I'll get you the Casings right away.";
	set Zeny, Zeny - .@caser_bullet;
	delitem getarg(0), .@caser_bullet;
	getitem getarg(1), .@caser_amount;
	close;
}