aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/game/Maps/ZoneScript.h1
-rwxr-xr-xsrc/server/game/Spells/SpellEffects.cpp6
2 files changed, 7 insertions, 0 deletions
diff --git a/src/server/game/Maps/ZoneScript.h b/src/server/game/Maps/ZoneScript.h
index 4360c38cba2..d9e8d132831 100755
--- a/src/server/game/Maps/ZoneScript.h
+++ b/src/server/game/Maps/ZoneScript.h
@@ -47,6 +47,7 @@ class ZoneScript
virtual void SetData(uint32 /*DataId*/, uint32 /*Value*/) {}
virtual void ProcessEvent(GameObject * /*obj*/, uint32 /*eventId*/) {}
+ virtual void ProcessEvent(Unit* /*unit*/, uint32 /*eventId*/) {}
};
#endif \ No newline at end of file
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index 0a27601b6f5..389c848c135 100755
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -2175,6 +2175,12 @@ void Spell::EffectSendEvent(SpellEffIndex effIndex)
else
pTarget = NULL;
+ if (unitTarget)
+ {
+ if (ZoneScript* zoneScript = unitTarget->GetZoneScript())
+ zoneScript->ProcessEvent(unitTarget, m_spellInfo->EffectMiscValue[effIndex]);
+ }
+
m_caster->GetMap()->ScriptsStart(sEventScripts, m_spellInfo->EffectMiscValue[effIndex], m_caster, pTarget);
}