aboutsummaryrefslogtreecommitdiff
path: root/src/game
diff options
context:
space:
mode:
authorBlaymoira <none@none>2009-02-11 16:33:07 +0100
committerBlaymoira <none@none>2009-02-11 16:33:07 +0100
commitf5fa3b71cf398d321304c0712456e31ef880cb6b (patch)
tree575df4e2679e4d9a5f16e071ec10a4b9f0e6aa30 /src/game
parent37be2f36846df38099764c41d4ca17edd2b48fe9 (diff)
*Some changes in Solarian - by Bagsac
--HG-- branch : trunk
Diffstat (limited to 'src/game')
-rw-r--r--src/game/SpellAuras.cpp6
-rw-r--r--src/game/SpellEffects.cpp22
2 files changed, 28 insertions, 0 deletions
diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp
index c77e84b85f5..011c4dff324 100644
--- a/src/game/SpellAuras.cpp
+++ b/src/game/SpellAuras.cpp
@@ -3697,6 +3697,12 @@ void Aura::HandlePeriodicTriggerSpell(bool apply, bool Real)
// Cast Wrath of the Plaguebringer if not dispelled
m_target->CastSpell(m_target, 29214, true, 0, this);
}
+
+ // Wrath of the Astromancer
+ if(!apply && m_spellProto->Id == 42783)
+ {
+ m_target->CastSpell(m_target, 42787, true, 0, this);
+ }
}
void Aura::HandlePeriodicEnergize(bool apply, bool Real)
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp
index 07e5d4afef9..681077939df 100644
--- a/src/game/SpellEffects.cpp
+++ b/src/game/SpellEffects.cpp
@@ -627,6 +627,28 @@ void Spell::EffectDummy(uint32 i)
{
switch(m_spellInfo->Id )
{
+ // Wrath of the Astromancer
+ case 42784:
+ {
+ uint32 count = 0;
+ for(std::list<TargetInfo>::iterator ihit= m_UniqueTargetInfo.begin();ihit != m_UniqueTargetInfo.end();++ihit)
+ if(ihit->effectMask & (1<<i))
+ ++count;
+
+ damage = 12000; // maybe wrong value
+ damage /= count;
+
+ SpellEntry const *spellInfo = sSpellStore.LookupEntry(42784);
+
+ // now deal the damage
+ for(std::list<TargetInfo>::iterator ihit= m_UniqueTargetInfo.begin();ihit != m_UniqueTargetInfo.end();++ihit)
+ if(ihit->effectMask & (1<<i))
+ {
+ Unit* casttarget = Unit::GetUnit((*unitTarget), ihit->targetGUID);
+ if(casttarget)
+ m_caster->DealDamage(casttarget, damage, NULL, SPELL_DIRECT_DAMAGE, SPELL_SCHOOL_MASK_ARCANE, spellInfo, false);
+ }
+ }
// Encapsulate Voidwalker
case 29364:
{