diff options
| author | Shauren <shauren.trinity@gmail.com> | 2016-11-06 00:14:50 +0100 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2016-11-06 00:14:50 +0100 |
| commit | 39df5e9ead83783585590241aa21014e550f68a2 (patch) | |
| tree | 4c302338833d656eaf991599fd5cb1c6d2da4ae5 /src/server/game/Spells | |
| parent | 56a7e86a2869e0b179c7ccac8221fac2979560e6 (diff) | |
Core/Stats: Updated handling crit chance - removed school specific crit chances
Diffstat (limited to 'src/server/game/Spells')
| -rw-r--r-- | src/server/game/Spells/Auras/SpellAuraDefines.h | 2 | ||||
| -rw-r--r-- | src/server/game/Spells/Auras/SpellAuraEffects.cpp | 21 | ||||
| -rw-r--r-- | src/server/game/Spells/Auras/SpellAuraEffects.h | 1 |
3 files changed, 4 insertions, 20 deletions
diff --git a/src/server/game/Spells/Auras/SpellAuraDefines.h b/src/server/game/Spells/Auras/SpellAuraDefines.h index 540745979dd..a67021e2045 100644 --- a/src/server/game/Spells/Auras/SpellAuraDefines.h +++ b/src/server/game/Spells/Auras/SpellAuraDefines.h @@ -128,7 +128,7 @@ enum AuraType SPELL_AURA_MOD_STALKED = 68, SPELL_AURA_SCHOOL_ABSORB = 69, SPELL_AURA_EXTRA_ATTACKS = 70, - SPELL_AURA_MOD_SPELL_CRIT_CHANCE_SCHOOL = 71, + SPELL_AURA_71 = 71, SPELL_AURA_MOD_POWER_COST_SCHOOL_PCT = 72, SPELL_AURA_MOD_POWER_COST_SCHOOL = 73, SPELL_AURA_REFLECT_SPELLS_SCHOOL = 74, diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index 7ce328e1ab0..67764d20f82 100644 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -130,7 +130,7 @@ pAuraEffectHandler AuraEffectHandler[TOTAL_AURAS]= &AuraEffect::HandleAuraModStalked, // 68 SPELL_AURA_MOD_STALKED &AuraEffect::HandleNoImmediateEffect, // 69 SPELL_AURA_SCHOOL_ABSORB implemented in Unit::CalcAbsorbResist &AuraEffect::HandleUnused, // 70 SPELL_AURA_EXTRA_ATTACKS clientside - &AuraEffect::HandleModSpellCritChanceShool, // 71 SPELL_AURA_MOD_SPELL_CRIT_CHANCE_SCHOOL + &AuraEffect::HandleNULL, // 71 SPELL_AURA_71 &AuraEffect::HandleModPowerCostPCT, // 72 SPELL_AURA_MOD_POWER_COST_SCHOOL_PCT &AuraEffect::HandleModPowerCost, // 73 SPELL_AURA_MOD_POWER_COST_SCHOOL &AuraEffect::HandleNoImmediateEffect, // 74 SPELL_AURA_REFLECT_SPELLS_SCHOOL implemented in Unit::SpellHitResult @@ -4328,26 +4328,11 @@ void AuraEffect::HandleModSpellCritChance(AuraApplication const* aurApp, uint8 m Unit* target = aurApp->GetTarget(); if (target->GetTypeId() == TYPEID_PLAYER) - target->ToPlayer()->UpdateAllSpellCritChances(); + target->ToPlayer()->UpdateSpellCritChance(); else target->m_baseSpellCritChance += (apply) ? GetAmount():-GetAmount(); } -void AuraEffect::HandleModSpellCritChanceShool(AuraApplication const* aurApp, uint8 mode, bool /*apply*/) const -{ - if (!(mode & (AURA_EFFECT_HANDLE_CHANGE_AMOUNT_MASK | AURA_EFFECT_HANDLE_STAT))) - return; - - Unit* target = aurApp->GetTarget(); - - if (target->GetTypeId() != TYPEID_PLAYER) - return; - - for (int school = SPELL_SCHOOL_NORMAL; school < MAX_SPELL_SCHOOL; ++school) - if (GetMiscValue() & (1<<school)) - target->ToPlayer()->UpdateSpellCritChance(school); -} - void AuraEffect::HandleAuraModCritPct(AuraApplication const* aurApp, uint8 mode, bool apply) const { if (!(mode & (AURA_EFFECT_HANDLE_CHANGE_AMOUNT_MASK | AURA_EFFECT_HANDLE_STAT))) @@ -4366,7 +4351,7 @@ void AuraEffect::HandleAuraModCritPct(AuraApplication const* aurApp, uint8 mode, target->ToPlayer()->HandleBaseModValue(RANGED_CRIT_PERCENTAGE, FLAT_MOD, float (GetAmount()), apply); // included in Player::UpdateSpellCritChance calculation - target->ToPlayer()->UpdateAllSpellCritChances(); + target->ToPlayer()->UpdateSpellCritChance(); } /********************************/ diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.h b/src/server/game/Spells/Auras/SpellAuraEffects.h index 04597a76099..c6da3bf57f6 100644 --- a/src/server/game/Spells/Auras/SpellAuraEffects.h +++ b/src/server/game/Spells/Auras/SpellAuraEffects.h @@ -258,7 +258,6 @@ class TC_GAME_API AuraEffect void HandleModHitChance(AuraApplication const* aurApp, uint8 mode, bool apply) const; void HandleModSpellHitChance(AuraApplication const* aurApp, uint8 mode, bool apply) const; void HandleModSpellCritChance(AuraApplication const* aurApp, uint8 mode, bool apply) const; - void HandleModSpellCritChanceShool(AuraApplication const* aurApp, uint8 mode, bool apply) const; void HandleAuraModCritPct(AuraApplication const* aurApp, uint8 mode, bool apply) const; // attack speed void HandleModCastingSpeed(AuraApplication const* aurApp, uint8 mode, bool apply) const; |
