summaryrefslogtreecommitdiff
path: root/npc/merchants/ammo_boxes.txt
blob: 38093662bc8dae30a8b9ce1b78b0171d6cd73ae9 (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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
//===== eAthena Script ========================================
//= Casing Pack Dealer Kenny
//===== By: ==================================================
//= SinSloth
//===== Current Version: =====================================
//= 1.1
//===== 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]
//============================================================

que_ng,187,149,3	script	Casing Pack Dealer Kenny	83,{

	if(BaseJob == Job_Gunslinger)
	{
		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:
				goto L_Cancel;
			break;
		}
	}
	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;

L_Cancel:
	mes "[Kenny]";
	mes "Alright. If there's";
	mes "something else I can help";
	mes "you with, please tell me.";
	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) goto L_Cancel;
	else 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) goto L_Weight;

//Materials checking
	else if(countitem(getarg(0)) < @caser_bullet) goto L_NoBullet;

//Zeny checking
	else if(Zeny < @caser_bullet) goto L_NoMoney;
	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;

L_Weight:
	mes "[Kenny]";
	mes "You are overweight.";
	mes "Please clear your inventory.";
	close;

L_NoBullet:
	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;

L_NoMoney:
	mes "[Kenny]";
	mes "Erm... You don't have enough money.";
	mes "The fee is 500 zeny";
	mes "Check your zeny and come again.";
	close;

L_Cancel:
	mes "[Kenny]";
	mes "Alright. If there's";
	mes "something else I can help";
	mes "you with, please tell me.";
	close;
}