summaryrefslogtreecommitdiff
path: root/npc/other/card_remover.txt
blob: 460171461804fd5cfccf6dfcabd6eac79f8b22a5 (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
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
// Card removal NPC by TyrNemesis^
prt_in.gat,28,73,4	script	Wise Old Woman	78,{

UPGRADEROOT:
	mes "[Wise Old Woman]";
	mes "Good day, young one. I have the power to remove cards that you have compounded onto your equipment. Does this idea please you?";
	next;
	menu "Yes, it does.",REMOVEMENU,
	     "What do you charge?",REMOVEPRICE,
	     "No thanks.",CLOSEOUT;

REMOVEPRICE:
	mes "[Wise Old Woman]";
	mes "I charge a flat fee of 200000 zeny, plus 25000 zeny for each card I remove from the item. In addition, I need a star crumb and a yellow gemstone to work my magic.";
	next;
	menu "Very well. Let's do it.",REMOVEMENU,
	     "No thanks.",CLOSEOUT;

REMOVEMENU:
	mes "[Wise Old Woman]";
	mes "Very well. Which item shall I examine for you?";
	next;
	menu "I changed my mind.",CLOSEOUT,
	     getequipname(1),SLOT1,
	     getequipname(2),SLOT2,
	     getequipname(3),SLOT3,
	     getequipname(4),SLOT4,
	     getequipname(5),SLOT5,
	     getequipname(6),SLOT6,
	     getequipname(7),SLOT7,
	     getequipname(8),SLOT8,
	     getequipname(9),SLOT9,
	     getequipname(10),SLOT10;

SLOT1:
	set @part,1;
	goto CARDNUMCHECK;

SLOT2:
	set @part,2;
	goto CARDNUMCHECK;

SLOT3:
	set @part,3;
	goto CARDNUMCHECK;

SLOT4:
	set @part,4;
	goto CARDNUMCHECK;

SLOT5:
	set @part,5;
	goto CARDNUMCHECK;

SLOT6:
	set @part,6;
	goto CARDNUMCHECK;

SLOT7:
	set @part,7;
	goto CARDNUMCHECK;

SLOT8:
	set @part,8;
	goto CARDNUMCHECK;

SLOT9:
	set @part,9;
	goto CARDNUMCHECK;

SLOT10:
	set @part,10;
	goto CARDNUMCHECK;

CARDNUMCHECK:
	if(getequipcardcnt(@part) == 0) goto DENYCARDCOUNT;
	set @cardcount,getequipcardcnt(@part);
	if(@cardcount > 1) goto CARDNUMMULTIMSG;
	mes "[Wise Old Woman]";
	mes "This item has " + @cardcount + " card compounded on it. To perform my magic, I will need 225000 zeny, a ^0000FFStar Crumb^000000, and a ^0000FFYellow Gemstone^000000.";
	goto CARDNUMPOSTMSG;
CARDNUMMULTIMSG:
	mes "[Wise Old Woman]";
	mes "This item has " + @cardcount + " cards compounded on it. To perform my magic, I will need " + (200000+(@cardcount * 25000)) + " zeny, a ^0000FFStar Crumb^000000, and a ^0000FFYellow Gemstone^000000.";
CARDNUMPOSTMSG:
	next;
	menu "Very well. Do it.",REMOVECARDWARNING,
	     "Never mind.",CLOSEOUT;

REMOVECARDWARNING:
	mes "[Wise Old Woman]";
	mes "Before I begin, I must warn you--I may fail. If I do, I may destroy the cards, the item, or both. I do not give refunds. That being said, which is more important to you: The cards, or the item?";
	next;
	menu "I changed my mind about this.",CLOSEOUT,
	     "The item.",PRIORITYITEM,
	     "The cards.",PRIORITYCARD;

PRIORITYITEM:
	set @failtype,1;
	goto REMOVECARD;

PRIORITYCARD:
	set @failtype,2;
	goto REMOVECARD;

REMOVECARD:
	mes "[Wise Old Woman]";
	mes "Very well. I shall begin.";
	next;
	if((zeny < (200000+(@cardcount * 25000))) || (countitem(1000) < 1) || (countitem(715) < 1)) goto DENYMATERIAL;
	set zeny,zeny - (200000+(@cardcount * 25000));
	delitem 1000,1;
	delitem 715,1;

// Replace the constants in the next 3 lines with failure chance values defined in refine_db.txt
// First value = Total failure chance (item and cards destroyed)
// Second value = Partial failure chance (one or the other is destroyed, player decides which one is safe)
// Third value = Harmless failure chance (all that's lost is your investment)

	set @failchance,rand(100);
//	if(@failchance < 2) goto FAILREMOVECARD0;
//	if((@failchance < 8) && (@failtype == 1)) goto FAILREMOVECARD1;
//	if((@failchance < 8) && (@failtype == 2)) goto FAILREMOVECARD2;
	if(@failchance < 10) goto FAILREMOVECARD3;
	successremovecards @part;
	mes "[Wise Old Woman]";
	mes "The process was a success. Here are your cards and your item. Farewell.";
	close;

FAILREMOVECARD0:
	mes "[Wise Old Woman]";
	mes "The process was a total failure. I am afraid the item and the cards were destroyed.";
	failedremovecards @part,0;
	close;

FAILREMOVECARD1:
	mes "[Wise Old Woman]";
	mes "While I have managed to remove the cards from the item, they were destroyed in the process. The item, however, is okay.";
	failedremovecards @part,1;
	close;

FAILREMOVECARD2:
	mes "[Wise Old Woman]";
	mes "Most unfortunate. I succeeded at removing the cards, but the item itself was destroyed in the process.";
	failedremovecards @part,2;
	close;

FAILREMOVECARD3:
	mes "[Wise Old Woman]";
	mes "I have failed to remove the cards. Luckily, however, both the item and the cards are still okay.";
	failedremovecards @part,3;
	close;

DENYCARDCOUNT:
	mes "[Wise Old Woman]";
	mes "Young one... There are no cards compounded on this item. I can do nothing with it, I'm afraid.";
	close;

DENYMATERIAL:
	mes "[Wise Old Woman]";
	mes "You do not have all the items I require to work my magic, child. Come again when you do.";
	close;

CLOSEOUT:
	mes "[Wise Old Woman]";
	mes "Very well. Return at once if you seek my services.";
	close;

}