aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQAston <none@none>2009-06-13 14:01:10 +0200
committerQAston <none@none>2009-06-13 14:01:10 +0200
commitf874ca629e79bbb58bec779c65bfd2e59c5a1eae (patch)
treea66bf13d7c2063aa6b4bdcf21b99c538b572d3c3
parent2c1f85096864ae20be169eda22c25e34fdfa4ae1 (diff)
*Set target guid as original caster guid for GO casts.
--HG-- branch : trunk
-rw-r--r--src/game/GameObject.cpp4
-rw-r--r--src/game/SpellAuras.cpp2
2 files changed, 4 insertions, 2 deletions
diff --git a/src/game/GameObject.cpp b/src/game/GameObject.cpp
index 30d84ac4291..1ee7c817c6d 100644
--- a/src/game/GameObject.cpp
+++ b/src/game/GameObject.cpp
@@ -1393,7 +1393,9 @@ void GameObject::CastSpell(Unit* target, uint32 spellId)
else
{
trigger->setFaction(14);
- trigger->CastSpell(target, spellInfo, true);
+ // Set owner guid for target if no owner avalible - needed by trigger auras
+ // - trigger gets despawned and there's no caster avalible (see AuraEffect::TriggerSpell())
+ trigger->CastSpell(target, spellInfo, true, 0, 0, target->GetGUID());
}
//trigger->setDeathState(JUST_DIED);
//trigger->RemoveCorpse();
diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp
index 475b99579ee..13669b5b118 100644
--- a/src/game/SpellAuras.cpp
+++ b/src/game/SpellAuras.cpp
@@ -1739,7 +1739,7 @@ void AuraEffect::TriggerSpell()
case 23493:
{
int32 heal = caster->GetMaxHealth() / 10;
- caster->DealHeal(caster, heal, auraSpellInfo);
+ caster->DealHeal(m_target, heal, auraSpellInfo);
int32 mana = caster->GetMaxPower(POWER_MANA);
if (mana)