diff options
| -rwxr-xr-x | src/server/game/Entities/Player/Player.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 4dd0efbeaa6..a0e1de6959d 100755 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -11040,7 +11040,7 @@ uint8 Player::CanEquipItem(uint8 slot, uint16 &dest, Item *pItem, bool swap, boo return EQUIP_ERR_NOT_DURING_ARENA_MATCH; } - if (isInCombat()&& pProto->Class == ITEM_CLASS_WEAPON && m_weaponChangeTimer != 0) + if (isInCombat()&& (pProto->Class == ITEM_CLASS_WEAPON || pProto->InventoryType == INVTYPE_RELIC) && m_weaponChangeTimer != 0) return EQUIP_ERR_CANT_DO_RIGHT_NOW; // maybe exist better err if (IsNonMeleeSpellCasted(false)) @@ -11752,7 +11752,7 @@ Item* Player::EquipItem(uint16 pos, Item *pItem, bool update) { m_weaponChangeTimer = spellProto->StartRecoveryTime; - CastSpell(this, cooldownSpell, false); // Needed for server side GCD + AddGlobalCooldown(spellProto, NULL); // NULL spell is safe (needed for serverside GCD WorldPacket data(SMSG_SPELL_COOLDOWN, 8+1+4); data << uint64(GetGUID()); |
