summaryrefslogtreecommitdiff
path: root/src/map/script.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/script.cpp')
-rw-r--r--src/map/script.cpp16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/map/script.cpp b/src/map/script.cpp
index 18055b8..3fffba0 100644
--- a/src/map/script.cpp
+++ b/src/map/script.cpp
@@ -3662,8 +3662,11 @@ void builtin_nude(ScriptState *st)
return;
for (EQUIP i : EQUIPs)
- if (sd->equip_index[i] >= 0)
- pc_unequipitem(sd, sd->equip_index[i], CalcStatus::LATER);
+ {
+ int idx = sd->equip_index_maybe[i];
+ if (idx >= 0)
+ pc_unequipitem(sd, idx, CalcStatus::LATER);
+ }
pc_calcstatus(sd, 0);
}
@@ -3682,9 +3685,12 @@ void builtin_unequipbyid(ScriptState *st)
EQUIP slot_id = EQUIP(conv_num(st, &AARGO2(2)));
- if (slot_id >= EQUIP() && slot_id < EQUIP::COUNT
- && sd->equip_index[slot_id] >= 0)
- pc_unequipitem(sd, sd->equip_index[slot_id], CalcStatus::LATER);
+ if (slot_id >= EQUIP() && slot_id < EQUIP::COUNT)
+ {
+ int idx = sd->equip_index_maybe[slot_id];
+ if (idx >= 0)
+ pc_unequipitem(sd, idx, CalcStatus::LATER);
+ }
pc_calcstatus(sd, 0);