-
Notifications
You must be signed in to change notification settings - Fork 0
/
costume.txt
147 lines (146 loc) · 4.92 KB
/
costume.txt
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
//===== Hercules Script ======================================
//= Headgear to Costume converter >> Costume to Headgear converter
//===== By: ==================================================
//= Rebel, Zephyrus [rAthena]
//= Mhalicot [Hercules]
//===== Current Version: =====================================
//= 1.1
//===== Compatible With: =====================================
//= Hercules
//===== Description: =========================================
//= Allows a user to convert the equipped headgear
// (on Top, Mid or Low) into a costume item.
// It will remove any card and refine of the Item.
//= Allows a user to restore the equipped costume headgear
// (on Top, Mid or Low) into its original form.
// It will not return any card or refine of the item.
//===== Additional Comments: =================================
//= 1.0 Initial script [All of this script are credit to
// Rebel, Zephyrus of [rAthena] and revised by [Mhalicot]
// to make it compatible in Hercules.]
//= 1.1 Denied if Headgear is rental, has refine,
// or has card[Mhalicot]
// Note: You must apply the costumeitem Plugins
// in order to use this script.
//============================================================
- script Costume Clown -1,{
mes "[Clown]";
mes "Here you can convert your headgears into a Costume Headgear or restore to its Original form.";
switch(select("I want to convert.:I want to restore.:No thanks.")) {
case 1:
next;
mes "[Clown]";
mes "Please, select what to convert.";
mes "Remember, cards and refine will be removed.";
next;
setarray .@Position$[1],"Top","Mid","Low";
setarray .@Position[1], 1, 9, 10;
set .@Menu$,"";
for( set .@i, 1; .@i < 5; set .@i, .@i + 1 )
{
if( getequipisequiped(.@Position[.@i]) )
set .@Menu$, .@Menu$ + .@Position$[.@i] + "-" + "[" + getequipname(.@Position[.@i]) + "]";
set .@Menu$, .@Menu$ + ":";
}
set .@Part, .@Position[ select(.@Menu$) ];
set .@id, getequipid(.@Part);
set .@ref, getequiprefinerycnt(.@Part);
if( !getequipisequiped(.@Part) )
{
mes "[Clown]";
mes "Your not wearing anything there...";
close;
}
mes "[Clown]";
mes "You want to Costume your " + getitemname(getequipid(.@Part)) + "?";
next;
if( select("Yes, proceed:No, I am sorry.") == 2 )
{
mes "[Clown]";
mes "Need some time to think about it, huh?";
mes "Alright, I can understand.";
close;
}
for(set .@i,0; .@i<4; set .@i,.@i+1)
set .@slot[.@i], getequipcardid(.@Part,.@i);
if (.@slot[0]>4000 && .@slot[0]<5000) { // If it has card don't convert
mes "[Clown]";
mes "A card? Here?!";
mes "As I said before, I don't convert headgear with cards.";
emotion e_hmm;
close;
}
getinventorylist;
for(set .@i,0; .@i<@inventorylist_count; set .@i,.@i+1)
if (@inventorylist_expire[.@i] != 0 && @inventorylist_equip[.@i] != 0) { // If rental don't convert
mes "[Clown]";
mes "Sorry, I don't convert a rental headgear!";
emotion e_hmm;
close;
}
if (.@ref > 0) { // If refine don't convert
mes "[Clown]";
mes "Sorry please keep in mind.";
mes "I don't convert headgear with refine.";
emotion e_hmm;
close;
}
if (!countitem(.@id)) {
mes "[Clown]";
mes "Where is "+getitemname(@id)+"...?";
npctalk "You're a snoozy cheater!";
logmes "CHEATER: Tried to sign an item not having it: "+getitemname(@id);
emotion e_wah;
close;
}
costume .@Part; // Convert the Headgear
mes "[Clown]";
mes "Done, enjoy your costume headgear.";
close;
case 2:
next;
mes "Please, select what to restore.";
mes "Remember, I will only restore it back without refine and cards.";
next;
setarray .@Position$[1],"Top","Mid","Low";
setarray .@Position[1], 13, 12, 11;
set .@Menu$,"";
for( set .@i, 1; .@i < 5; set .@i, .@i + 1 )
{
if( getequipisequiped(.@Position[.@i]) )
set .@Menu$, .@Menu$ + .@Position$[.@i] + "-" + "[" + getequipname(.@Position[.@i]) + "]";
set .@Menu$, .@Menu$ + ":";
}
set .@Part, .@Position[ select(.@Menu$) ];
if( !getequipisequiped(.@Part) )
{
mes "[Clown]";
mes "Your not wearing anything there...";
close;
}
mes "[Clown]";
mes "You want to restore your " + getitemname(getequipid(.@Part)) + "?";
next;
if( select("Yes, proceed:No, I am sorry.") == 2 )
{
mes "[Clown]";
mes "Need some time to think about it, huh?";
mes "Alright, I can understand.";
close;
}
a = getequipid(.@Part);
delitem a,1;
getitem a,1;
mes "[Clown]";
mes "Done, enjoy your restored headgear.";
close;
case 3:
mes "[Clown]";
mes "Very well. Return at once if you seek my services.";
close;
}
}
// --------------------------------------------------------------------------
// Use duplicates to put your npc on different cities
// --------------------------------------------------------------------------
prontera,155,181,4 duplicate(Costume Clown) Costume Clown#1 715