diff options
author | Shocker <shocker@freakz.ro> | 2015-11-29 19:27:29 +0200 |
---|---|---|
committer | Shocker <shocker@freakz.ro> | 2015-11-29 19:27:29 +0200 |
commit | e9a1db916ea158d108086802d083d329c038f20f (patch) | |
tree | 944ae5c6c7503266d35faab4e595657637cb5a42 | |
parent | 802ebbe36a57103814ee0ad90378f29f2585a2d7 (diff) |
Core/Spells: Implement SPELL_AURA_MOD_SKILL_2
-rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 4 | ||||
-rw-r--r-- | src/server/game/Spells/Auras/SpellAuraDefines.h | 2 | ||||
-rw-r--r-- | src/server/game/Spells/Auras/SpellAuraEffects.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Spells/SpellInfo.cpp | 1 |
4 files changed, 7 insertions, 2 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 10591f1a0a9..13ea11cdc1e 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -5511,6 +5511,10 @@ void Player::SetSkill(uint16 id, uint16 step, uint16 newVal, uint16 maxVal) for (AuraEffectList::const_iterator j = mModSkill.begin(); j != mModSkill.end(); ++j) if ((*j)->GetMiscValue() == int32(id)) (*j)->HandleEffect(this, AURA_EFFECT_HANDLE_SKILL, true); + AuraEffectList const& mModSkill2 = GetAuraEffectsByType(SPELL_AURA_MOD_SKILL_2); + for (AuraEffectList::const_iterator j = mModSkill2.begin(); j != mModSkill2.end(); ++j) + if ((*j)->GetMiscValue() == int32(id)) + (*j)->HandleEffect(this, AURA_EFFECT_HANDLE_SKILL, true); // permanent bonuses AuraEffectList const& mModSkillTalent = GetAuraEffectsByType(SPELL_AURA_MOD_SKILL_TALENT); diff --git a/src/server/game/Spells/Auras/SpellAuraDefines.h b/src/server/game/Spells/Auras/SpellAuraDefines.h index 38d35577c43..784dc432f2a 100644 --- a/src/server/game/Spells/Auras/SpellAuraDefines.h +++ b/src/server/game/Spells/Auras/SpellAuraDefines.h @@ -457,7 +457,7 @@ enum AuraType SPELL_AURA_397 = 397, SPELL_AURA_398 = 398, SPELL_AURA_399 = 399, - SPELL_AURA_MOD_SKILL = 400, // NYI + SPELL_AURA_MOD_SKILL_2 = 400, SPELL_AURA_401 = 401, SPELL_AURA_402 = 402, SPELL_AURA_OVERRIDE_SPELL_VISUAL = 403, diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index d2394d74e01..07a2c0227c2 100644 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -459,7 +459,7 @@ pAuraEffectHandler AuraEffectHandler[TOTAL_AURAS]= &AuraEffect::HandleNULL, //397 &AuraEffect::HandleNULL, //398 &AuraEffect::HandleNULL, //399 - &AuraEffect::HandleNULL, //400 SPELL_AURA_MOD_SKILL + &AuraEffect::HandleAuraModSkill, //400 SPELL_AURA_MOD_SKILL_2 &AuraEffect::HandleNULL, //401 &AuraEffect::HandleNULL, //402 &AuraEffect::HandleNULL, //403 diff --git a/src/server/game/Spells/SpellInfo.cpp b/src/server/game/Spells/SpellInfo.cpp index ee5f1ba471f..baf251bc31b 100644 --- a/src/server/game/Spells/SpellInfo.cpp +++ b/src/server/game/Spells/SpellInfo.cpp @@ -3013,6 +3013,7 @@ bool SpellInfo::_IsPositiveEffect(uint32 effIndex, bool deep) const case SPELL_AURA_MOD_DAMAGE_DONE: // dependent from bas point sign (negative -> negative) case SPELL_AURA_MOD_STAT: case SPELL_AURA_MOD_SKILL: + case SPELL_AURA_MOD_SKILL_2: case SPELL_AURA_MOD_DODGE_PERCENT: case SPELL_AURA_MOD_HEALING_PCT: case SPELL_AURA_MOD_HEALING_DONE: |