diff options
-rw-r--r-- | Changelog-Trunk.txt | 2 | ||||
-rw-r--r-- | src/map/pc.c | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index 56712d3f5..103427f52 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -3,6 +3,8 @@ Date Added AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK.
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
+2006/04/21
+ * Fixed items not really getting unequipped when they should. [Skotlex]
2006/04/20
* Fixed the equip/unequip scripts not triggering for compounded cards.
[Skotlex]
diff --git a/src/map/pc.c b/src/map/pc.c index 9602a9b2c..665e380ff 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -6245,6 +6245,7 @@ int pc_equipitem(struct map_session_data *sd,int n,int pos) */
int pc_unequipitem(struct map_session_data *sd,int n,int flag)
{
+ int i;
nullpo_retr(0, sd);
// -- moonsoul (if player is berserk then cannot unequip)
@@ -6261,6 +6262,10 @@ int pc_unequipitem(struct map_session_data *sd,int n,int flag) clif_unequipitemack(sd,n,0,0);
return 0;
}
+ for(i=0;i<11;i++) {
+ if(sd->status.inventory[n].equip & equip_pos[i])
+ sd->equip_index[i] = -1;
+ }
if(sd->status.inventory[n].equip & 0x0002) {
sd->weapontype1 = 0;
@@ -6303,7 +6308,6 @@ int pc_unequipitem(struct map_session_data *sd,int n,int flag) }
//OnUnEquip script [Skotlex]
if (sd->inventory_data[n]) {
- int i;
struct item_data *data;
if (sd->inventory_data[n]->unequip_script)
run_script(sd->inventory_data[n]->unequip_script,0,sd->bl.id,0);
|