aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorsilinoron <none@none>2010-08-07 16:40:33 -0700
committersilinoron <none@none>2010-08-07 16:40:33 -0700
commit36fffd9550a00d2cc0f38bb562ba7f1913d8d504 (patch)
treebdf02fa2d9553617dc22f0870aec437bb84b2693 /src
parent5aa6bb216977f86b401efbc71006df11f5008f90 (diff)
Properly fix problems with applying/removing mods on disarmed items.
--HG-- branch : trunk
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Player/Player.cpp10
1 files changed, 3 insertions, 7 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index 9fdf3566571..9f687c6cfc4 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -7217,13 +7217,6 @@ void Player::_ApplyItemMods(Item *item, uint8 slot,bool apply)
if (!proto)
return;
- // don't apply/remove mods if the weapon is disarmed
- if (item->GetSlot() == EQUIPMENT_SLOT_MAINHAND && HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISARMED))
- return;
-
- if (proto->Socket[0].Color) //only (un)equipping of items with sockets can influence metagems, so no need to waste time with normal items
- CorrectMetaGemEnchants(slot, apply);
-
// not apply/remove mods for broken item
if (item->IsBroken())
return;
@@ -7236,6 +7229,9 @@ void Player::_ApplyItemMods(Item *item, uint8 slot,bool apply)
if (!CanUseAttackType(attacktype))
return;
+ if (proto->Socket[0].Color) //only (un)equipping of items with sockets can influence metagems, so no need to waste time with normal items
+ CorrectMetaGemEnchants(slot, apply);
+
if (attacktype < MAX_ATTACK)
_ApplyWeaponDependentAuraMods(item,WeaponAttackType(attacktype),apply);