diff options
| author | Discover- <amort11@hotmail.com> | 2014-01-31 10:37:55 +0100 |
|---|---|---|
| committer | Discover- <amort11@hotmail.com> | 2014-01-31 10:37:55 +0100 |
| commit | a242662ae6fd424928c3972de1232b43e7164457 (patch) | |
| tree | b35fe6b3be81eb1a419f055a44e394e07339c0ea /src | |
| parent | efeb54139edddbf33851fb363abd5ce779bffcab (diff) | |
Core/Spells: Fix DK Ghoul's damage after ad8eb434c02e451effd0949aaa7d2b7999d91597. I misread 'SpellScript::m_damage' for 'SpellScript::damage'.
By @joschiwald
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/game/Spells/SpellScript.cpp | 12 | ||||
| -rw-r--r-- | src/server/game/Spells/SpellScript.h | 1 | ||||
| -rw-r--r-- | src/server/scripts/Spells/spell_dk.cpp | 2 |
3 files changed, 14 insertions, 1 deletions
diff --git a/src/server/game/Spells/SpellScript.cpp b/src/server/game/Spells/SpellScript.cpp index 579fb0f9418..c0bcd477e5b 100644 --- a/src/server/game/Spells/SpellScript.cpp +++ b/src/server/game/Spells/SpellScript.cpp @@ -583,9 +583,21 @@ int32 SpellScript::GetEffectValue() const TC_LOG_ERROR("scripts", "Script: `%s` Spell: `%u`: function SpellScript::GetEffectValue was called, but function has no effect in current hook!", m_scriptName->c_str(), m_scriptSpellId); return 0; } + return m_spell->damage; } +void SpellScript::SetEffectValue(int32 value) +{ + if (!IsInEffectHook()) + { + TC_LOG_ERROR("scripts", "Script: `%s` Spell: `%u`: function SpellScript::SetEffectValue was called, but function has no effect in current hook!", m_scriptName->c_str(), m_scriptSpellId); + return; + } + + m_spell->damage = value; +} + Item* SpellScript::GetCastItem() { return m_spell->m_CastItem; diff --git a/src/server/game/Spells/SpellScript.h b/src/server/game/Spells/SpellScript.h index 1a438323d4d..6378a8bed9b 100644 --- a/src/server/game/Spells/SpellScript.h +++ b/src/server/game/Spells/SpellScript.h @@ -412,6 +412,7 @@ class SpellScript : public _SpellScript // method avalible only in EffectHandler method int32 GetEffectValue() const; + void SetEffectValue(int32 value); // returns: cast item if present. Item* GetCastItem(); diff --git a/src/server/scripts/Spells/spell_dk.cpp b/src/server/scripts/Spells/spell_dk.cpp index d39156e3770..e8108f03e7d 100644 --- a/src/server/scripts/Spells/spell_dk.cpp +++ b/src/server/scripts/Spells/spell_dk.cpp @@ -703,7 +703,7 @@ class spell_dk_ghoul_explode : public SpellScriptLoader void HandleDamage(SpellEffIndex /*effIndex*/) { int32 value = int32(GetCaster()->CountPctFromMaxHealth(GetSpellInfo()->Effects[EFFECT_2].CalcValue(GetCaster()))); - SetHitDamage(value); + SetEffectValue(value); } void Suicide(SpellEffIndex /*effIndex*/) |
