summaryrefslogtreecommitdiff
path: root/npc/merchants/kunai_maker.txt
blob: 9d9c657384642448d2891d398479fd2222516311 (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
//===== 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]
//============================================================
que_ng,72,29,3	script	Kunai Seller	83,{
mes "[Jin]";
mes "Hi, I sell elemental enchanted kunais. I'll trade you some elemental stones and one kind of shuriken for a determined elemental Kunai";
next;
mes "[Jin]";
mes "What would you like to trade some? It's free";
switch(select("10 Poison Kunais:10 Icycle Kunais:10 Rough Wind Kunais:10 Black Soil Kunai:10 Explosion Kunai:Nothing at the Moment")) {
//Callfunc usage: callfunc "Kunai_Trade",itemreqid1,itemreqct1,itemreqid2,itemreqct2,itemidtrade;
	case 1:
		callfunc "Kunai_Trade",13250,20,7524,1,13259;
		goto L_Bye;
	case 2:
		callfunc "Kunai_Trade",13251,8,7522,2,13255;
		goto L_Bye;
	case 3:
		callfunc "Kunai_Trade",13252,4,7523,2,13257;
		goto L_Bye;
	case 4:
		callfunc "Kunai_Trade",13253,2,7524,1,13256;
		goto L_Bye;
	case 5:
		callfunc "Kunai_Trade",13254,1,7521,2,13258;
		goto L_Bye;
	case 6:
		goto L_Bye;
	}
L_Bye:
	next;
	mes "[Jin]";
	mes "Good bye and hope to see you again then";
	close;
}

function	script	Kunai_Trade	{
	next;
	mes "[Jin]";
	if (MaxWeight*50/100 < Weight) {
		if (MaxWeight*90/100 < Weight) {
			mes "Sorry but you have more than 90% weight. Your kunais might drop. I can't give you anything.";
			return;
		}
		mes "You have 50% or more weight, do you still want to continue?";
		menu "Yes",-,"No, thanks",L_Return;
	}

	mes "Would you like to trade my 10 "+getitemname(getarg(4))+" for your "+getarg(1)+" "+getitemname(getarg(0))+" and "+getarg(3)+" "+getitemname(getarg(2))+" ?";
	switch(select("Yes:I'll think about it")) {
		case 1:
			next; 
			mes "[Jin]";
			if (countitem(getarg(0)) < getarg(1) || countitem(getarg(2)) < getarg(3)) {
				mes "Sorry but you're missing one of the required items. Please get them";
				close;
			} else
			mes "How many do you want to trade? I can only trade you ^FF0000500^000000 units at once.";
			mes "^00FF001 Unit^000000 ^FF0000=^000000 ^0000FF10 Kunais^000000 of your desire";
			input @trade;
			next;
			mes "[Jin]";
			if (@trade > 500) {
				mes "Sorry, but I told you I could only trade you 500 units at once. Try again";
				close;
			} else if (@trade < 1) {
				mes "Sorry, but 1 unit is the minimun I can trade. Try again please.";
				close;
			} else if ((countitem(getarg(0)) < @trade*getarg(1)) || (countitem(getarg(2)) < @trade*getarg(3))) {
 				mes "Sorry, but you don't have enough items to trade "+@trade+" unit(s). Get more please";
				close;
			} else
			mes "Here you go, enjoy them";
			delitem getarg(0),getarg(1)*@trade;
			delitem getarg(2),getarg(3)*@trade;
			getitem getarg(4),10*@trade;
			next;
			return;
		case 2:
			return;
		}
L_Return:
	return;
}