summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog-Trunk.txt2
-rw-r--r--src/map/pc.c6
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);