aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Entities
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2016-05-17 00:02:55 +0200
committerShauren <shauren.trinity@gmail.com>2016-05-17 17:47:55 +0200
commit6cf1446d39db994cdca2db8f7f61da8423672bb3 (patch)
tree660201701b405c41b7d4d5e601deae66b41f8d68 /src/server/game/Entities
parentf064e782cdf4c37a740d1938f9830d0c462768c9 (diff)
Core/Auras: Implemented auras SPELL_AURA_PREVENT_DURABILITY_LOSS and SPELL_AURA_PREVENT_DURABILITY_LOSS_FROM_COMBAT
(cherry picked from commit 17118f4832d527f160dc300a52db7ba6c255bce2)
Diffstat (limited to 'src/server/game/Entities')
-rw-r--r--src/server/game/Entities/Player/Player.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index 50e27d9afa9..7c22a712aa4 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -4941,6 +4941,9 @@ void Player::DurabilityPointsLossAll(int32 points, bool inventory)
void Player::DurabilityPointsLoss(Item* item, int32 points)
{
+ if (HasAuraType(SPELL_AURA_PREVENT_DURABILITY_LOSS))
+ return;
+
int32 pMaxDurability = item->GetUInt32Value(ITEM_FIELD_MAXDURABILITY);
int32 pOldDurability = item->GetUInt32Value(ITEM_FIELD_DURABILITY);
int32 pNewDurability = pOldDurability - points;