summaryrefslogtreecommitdiff
path: root/npc/merchants/ammo_boxes.txt
blob: ee3aa324cbef4fd753e3ff43e0a874821a2b462c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
//===== eAthena Script =======================================
//= Magazine Dealer Kenny
//===== By: ==================================================
//= eAthena dev team
//===== Current Version: =====================================
//= 1.2a
//===== 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]
//= 1.2a Optimized. Please, ommit extra NPC names [Lupus]
//============================================================

que_ng,187,149,3	script	Magazine Dealer Kenny	83,{

	mes "[Kenny]";	
	mes "I am the Casing Dealer, Kenny!";
	if(BaseJob != Job_Gunslinger) {
		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 "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;
	mes "[Kenny]";
	if(.@caser_amount < 1) {
		mes "Alright. If there's";
		mes "something else I can help";
		mes "you with, please tell me.";
		close;
	}
	if(.@caser_amount > 50)	{
		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 "You are overweight.";
		mes "Please clear your inventory.";
		close;
	}
	
	//Materials checking
	if(countitem(getarg(0)) < .@caser_bullet) {
		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 "Erm... You don't have enough money.";
		mes "The fee is 500 zeny";
		mes "Check your zeny and come again.";
		close;
	}

	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;
}