aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Spells/SpellScript.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2022-07-15 18:31:54 +0200
committerShauren <shauren.trinity@gmail.com>2022-07-15 18:31:54 +0200
commit701532f9f033547a5fc2d0b594d04f6349cb441b (patch)
tree383d886e641f14df0ad0570fa1d4bfee2055b4bc /src/server/game/Spells/SpellScript.cpp
parente487d78ba7b37c35ede36c554169d26afeac88b0 (diff)
Core/Scripts: Expose calculated spell value variance to scripts
Diffstat (limited to 'src/server/game/Spells/SpellScript.cpp')
-rw-r--r--src/server/game/Spells/SpellScript.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/server/game/Spells/SpellScript.cpp b/src/server/game/Spells/SpellScript.cpp
index 25d1f6ffcb7..100ea02fbe5 100644
--- a/src/server/game/Spells/SpellScript.cpp
+++ b/src/server/game/Spells/SpellScript.cpp
@@ -849,6 +849,28 @@ void SpellScript::SetEffectValue(int32 value)
m_spell->damage = value;
}
+float SpellScript::GetEffectVariance() const
+{
+ if (!IsInEffectHook())
+ {
+ TC_LOG_ERROR("scripts", "Script: `%s` Spell: `%u`: function SpellScript::GetEffectVariance was called, but function has no effect in current hook!", m_scriptName->c_str(), m_scriptSpellId);
+ return 0.0f;
+ }
+
+ return m_spell->variance;
+}
+
+void SpellScript::SetEffectVariance(float variance)
+{
+ if (!IsInEffectHook())
+ {
+ TC_LOG_ERROR("scripts", "Script: `%s` Spell: `%u`: function SpellScript::SetEffectVariance was called, but function has no effect in current hook!", m_scriptName->c_str(), m_scriptSpellId);
+ return;
+ }
+
+ m_spell->variance = variance;
+}
+
Item* SpellScript::GetCastItem() const
{
return m_spell->m_CastItem;