aboutsummaryrefslogtreecommitdiff
path: root/src/server/game
diff options
context:
space:
mode:
authorShauren <none@none>2010-08-21 11:09:58 +0200
committerShauren <none@none>2010-08-21 11:09:58 +0200
commitd7814e88d824d3ddf4fbe1275e0e4013f04081b4 (patch)
tree64db9076ec36a8d4215784d2ad7cc2815c3ad696 /src/server/game
parent50789b0461906a5a88064ff3baf72e7bc42dc5c7 (diff)
Scripts/Icecrown Citadel: Added Lady Deathwhisper script, huge thanks to wowgargamel for script parts, timers and sniffs
Core/Scripts: Added GetPhaseMask() method to EventMap --HG-- branch : trunk
Diffstat (limited to 'src/server/game')
-rw-r--r--src/server/game/AI/CreatureAIImpl.h2
-rw-r--r--src/server/game/Scripting/ScriptLoader.cpp2
-rw-r--r--src/server/game/Spells/Auras/SpellAuraEffects.cpp8
3 files changed, 12 insertions, 0 deletions
diff --git a/src/server/game/AI/CreatureAIImpl.h b/src/server/game/AI/CreatureAIImpl.h
index 0f05d233891..57c2cfe9c82 100644
--- a/src/server/game/AI/CreatureAIImpl.h
+++ b/src/server/game/AI/CreatureAIImpl.h
@@ -325,6 +325,8 @@ class EventMap : private std::map<uint32, uint32>
void Update(uint32 time) { m_time += time; }
+ uint32 GetPhaseMask() const { return (m_phase >> 24) & 0xFF; }
+
void SetPhase(uint32 phase)
{
if (phase && phase < 9)
diff --git a/src/server/game/Scripting/ScriptLoader.cpp b/src/server/game/Scripting/ScriptLoader.cpp
index 6cc04d14f3a..92b5840bdb7 100644
--- a/src/server/game/Scripting/ScriptLoader.cpp
+++ b/src/server/game/Scripting/ScriptLoader.cpp
@@ -418,6 +418,7 @@ void AddSC_halls_of_reflection();
void AddSC_boss_falric();
void AddSC_boss_marwyn();
void AddSC_boss_lord_marrowgar(); // Icecrown Citadel
+void AddSC_boss_lady_deathwhisper();
void AddSC_instance_icecrown_citadel();
void AddSC_dalaran();
@@ -1082,6 +1083,7 @@ void AddNorthrendScripts()
AddSC_boss_falric();
AddSC_boss_marwyn();
AddSC_boss_lord_marrowgar(); // Icecrown Citadel
+ AddSC_boss_lady_deathwhisper();
AddSC_instance_icecrown_citadel();
AddSC_dalaran();
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
index f4affd83f46..47121fd2ac7 100644
--- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp
+++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
@@ -2224,6 +2224,14 @@ void AuraEffect::TriggerSpell(Unit * target, Unit * caster) const
case 39857: triggerSpellId = 39856; break;
// Personalized Weather
case 46736: triggerSpellId = 46737; break;
+ // Mana Barrier - Lady Deathwhisper
+ case 70842:
+ {
+ int32 missingHealth = caster->GetMaxHealth() - caster->GetHealth();
+ caster->ModifyHealth(missingHealth);
+ caster->ModifyPower(POWER_MANA, -missingHealth);
+ return;
+ }
}
break;
}