diff options
author | Ben Longbons <b.r.longbons@gmail.com> | 2014-03-31 10:13:41 -0700 |
---|---|---|
committer | Ben Longbons <b.r.longbons@gmail.com> | 2014-03-31 10:18:50 -0700 |
commit | 993830a5063b8d2af4240ea5bf1c06dfa4f66b7d (patch) | |
tree | 9900dab35a49132158c53497f63fbabd1fa6cc9f /src/map/script.cpp | |
parent | 1a651243bb2c8e18baa9aac30ac52a62185074e7 (diff) | |
download | tmwa-993830a5063b8d2af4240ea5bf1c06dfa4f66b7d.tar.gz tmwa-993830a5063b8d2af4240ea5bf1c06dfa4f66b7d.tar.bz2 tmwa-993830a5063b8d2af4240ea5bf1c06dfa4f66b7d.tar.xz tmwa-993830a5063b8d2af4240ea5bf1c06dfa4f66b7d.zip |
Check the equip index array
Diffstat (limited to 'src/map/script.cpp')
-rw-r--r-- | src/map/script.cpp | 16 |
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); |