aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreeston <treeston.mmoc@gmail.com>2017-09-05 15:33:44 +0200
committerShauren <shauren.trinity@gmail.com>2020-08-23 19:02:30 +0200
commitfc12e47cb8e3f4c1097b41e94a92151776818717 (patch)
tree8a0f520837448ccfa6b88dd20b0120e8b0be9150
parenteccaf847c5f537201d02da46724cdf7e4a46e4c0 (diff)
Core/Player: Prevent changing equipment while charmed. Closes #20209.
(cherry picked from commit a1a12ec755e4aa5e2e8475d6a6158bac94f0977a)
-rw-r--r--src/server/game/Entities/Player/Player.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index 4a441af47b1..29b48a31f37 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -11469,6 +11469,9 @@ InventoryResult Player::CanEquipItem(uint8 slot, uint16 &dest, Item* pItem, bool
if (HasUnitState(UNIT_STATE_STUNNED))
return EQUIP_ERR_GENERIC_STUNNED;
+ if (IsCharmed())
+ return EQUIP_ERR_CANT_DO_RIGHT_NOW; // @todo is this the correct error?
+
// do not allow equipping gear except weapons, offhands, projectiles, relics in
// - combat
// - in-progress arenas
@@ -11670,6 +11673,9 @@ InventoryResult Player::CanUnequipItem(uint16 pos, bool swap) const
if (pItem->m_lootGenerated)
return EQUIP_ERR_LOOT_GONE;
+ if (IsCharmed())
+ return EQUIP_ERR_CANT_DO_RIGHT_NOW; // @todo is this the correct error?
+
// do not allow unequipping gear except weapons, offhands, projectiles, relics in
// - combat
// - in-progress arenas