summaryrefslogtreecommitdiff
path: root/npc/merchants/kunai_maker.txt
blob: 7462b65b8ea15fa00f56899cc65b3332021d725e (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
//===== eAthena Script =======================================
//= Kunai "Trader" @ que_ng
//===== By: ==================================================
//= erKURITA
//===== Current Version: =====================================
//= 1.0
//===== Compatible With: =====================================
//= eAthena 1.0
//===== Description: =========================================
//= NPC that trades you a few shurikens + ninja stones for 
//= elemental kunais.
//===== Additional Comments: =================================
//= 1.0 Added the npc. It uses a function that sends the item 
//=	  id of the 2 required items plus the amount. Can trade
//= 	  up to 500 units (5,000 kunais) at once. [erKURITA]
//= 1.1 Officialized script [Playtester]
//============================================================
que_ng,72,29,3	script	Kunai Merchant Kashin	83,{

	if(BaseJob != Job_Ninja){
		mes "[Kashin]";
		mes "I am Kashin of the Wind. I distribute trade items to the shadows.";
		next;
		mes "[Kashin]";
		mes "It doesn't seem like you are a Ninja... Just take a good look around and be on your way.";
		close;
	}
	mes "[Kashin]";
	mes "I'm Kashin!";
	mes "If you're ever short on Shurikens, come and see me.";
	next;
	mes "[Kashin]";
	mes "What will it be?";
	mes "Choose what you want.";
	next;

	switch(select("Poison Kunais:Frost Kunais:Wind Kunais:Earth Kunais:Fire Kunais:Cancel")) {

//Callfunc usage: callfunc "Kunai_Trade",itemreqid1,itemreqct1,itemreqid2,itemreqct2,itemidtrade;
	case 1:
		callfunc "Kunai_Trade",13250,20,7524,1,13259;
	case 2:
		callfunc "Kunai_Trade",13251,8,7522,2,13255;
	case 3:
		callfunc "Kunai_Trade",13252,4,7523,2,13257;
	case 4:
		callfunc "Kunai_Trade",13253,2,7524,1,13256;
	case 5:
		callfunc "Kunai_Trade",13254,1,7521,2,13258;
	case 6:
		goto L_Bye;
	}
L_Bye:
	mes "[Kashin]";
	mes "Hmm~ Ok~";
	mes "Come again~";
	mes "I, Kashin of the Wind, will always be at this place.";
	close;
}

function	script	Kunai_Trade	{

	mes "[Kashin]";
	mes "If you give me "+getarg(1)+" "+getitemname(getarg(0))+" and "+getarg(3)+" "+getitemname(getarg(2))+", I'll give you a pack of 10 "+getitemname(getarg(4))+".";
	next;
	mes "[Kashin]";
	mes "You can trade up to 500 packs at a time.";
	mes "If you don't want to trade, just enter 0 as the amount.";
	next;

	input @trade;

	if(@trade < 1){
		mes "[Kashin]";
		mes "Hmm~ Ok~";
		mes "Come again~";
		mes "I, Kashin of the Wind, will always be at this place.";
		close;
	}
	if(@trade > 500){
		mes "[Kashin]";
		mes "You've exceeded the input amount!";
		mes "Enter a valid number next time~!";
		close;
	}
	if(countitem(getarg(0)) < @trade*getarg(1) || countitem(getarg(2)) < @trade*getarg(3)){
		mes "[Kashin]";
		mes "Hmm... this is no good~";
		mes "You don't have enough materials to trade in for the amount of Kunai's that you want.";
		mes "Bring some more if you want this amount.";
		close;
 	}
	if(checkweight(getarg(4),@trade*10) == 0){
		mes "[Kashin]";
		mes "Your bag is too full to carry the trade items. Come back after you made room for the traded items.";
		close;
	}
	mes "[Kashin]";
	mes "Ok~ Very well!";
	mes "Amount verified!";
	mes "Here are your traded items.";
	delitem getarg(0),getarg(1)*@trade;
	delitem getarg(2),getarg(3)*@trade;
	getitem getarg(4),10*@trade;
	close;
}