aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBlaymoira <none@none>2009-03-14 22:50:37 +0100
committerBlaymoira <none@none>2009-03-14 22:50:37 +0100
commit596488d05eb787af12fa5155cabe8ae080b79b18 (patch)
treea9326bdf1212e2d2add5619e005dc3582653db82 /src
parent05c7639e7b6d87ef15267c990bc089d181d55d84 (diff)
*Fix haunt
--HG-- branch : trunk
Diffstat (limited to 'src')
-rw-r--r--src/game/SpellEffects.cpp4
-rw-r--r--src/game/Unit.cpp10
2 files changed, 11 insertions, 3 deletions
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp
index 16a2efef8b3..3946eaddb5c 100644
--- a/src/game/SpellEffects.cpp
+++ b/src/game/SpellEffects.cpp
@@ -443,8 +443,6 @@ void Spell::SpellDamageSchoolDmg(uint32 effect_idx)
// Haunt
else if (m_spellInfo->SpellFamilyFlags[1] & 0x40000)
{
- // Save damage for future healing
- // TODO: Implement spell proc on aura expire
m_currentBasePoints[1] = int32(damage * m_currentBasePoints[1] / 100);
}
@@ -3704,7 +3702,7 @@ void Spell::EffectAddFarsight(uint32 i)
dynObj->GetMap()->Add(dynObj); //grid will also be loaded
// Need to update visibility of object for client to accept farsight guid
- ((Player*)m_caster)->CreateSeer(dynObj);
+ ((Player*)m_caster)->SetSeer(dynObj);
//((Player*)m_caster)->UpdateVisibilityOf(dynObj);
}
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index eb20ee91845..aa4ff05828a 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -5594,6 +5594,16 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura* triggeredByAu
basepoints0 = damage * triggerAmount / 100;
break;
}
+ // Haunt
+ if (dummySpell->SpellFamilyFlags[1] & 0x40000)
+ {
+ if(!pVictim || !pVictim->isAlive())
+ return false;
+
+ basepoints0 = dummySpell->EffectBasePoints[1];
+ triggered_spell_id = 48210;
+ return true;
+ }
switch(dummySpell->Id)
{
// Nightfall