diff options
| author | Lopin <davca.hr@seznam.cz> | 2011-08-24 15:57:14 +0200 |
|---|---|---|
| committer | Lopin <davca.hr@seznam.cz> | 2011-08-24 15:57:14 +0200 |
| commit | ededca331173474364069d705d5183c089953011 (patch) | |
| tree | aa92f073ade3e063a7b15becdbb607c2f5d9d9d5 /src/server/scripts/Spells | |
| parent | 0c410bda430b81e9348472194687878fc47ea394 (diff) | |
Core/Spells: Fixed quest Stopping the Spread
Diffstat (limited to 'src/server/scripts/Spells')
| -rw-r--r-- | src/server/scripts/Spells/spell_quest.cpp | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/server/scripts/Spells/spell_quest.cpp b/src/server/scripts/Spells/spell_quest.cpp index c7a174ff3d5..15cee94e909 100644 --- a/src/server/scripts/Spells/spell_quest.cpp +++ b/src/server/scripts/Spells/spell_quest.cpp @@ -857,6 +857,47 @@ public: }; }; +enum StoppingTheSpread +{ + NPC_KILL_CREDIT = 18240, + SPELL_FLAMES = 39199, +}; + +class spell_q9874_liquid_fire : public SpellScriptLoader +{ + public: + spell_q9874_liquid_fire() : SpellScriptLoader("spell_q9874_liquid_fire") + { + } + + class spell_q9874_liquid_fire_SpellScript : public SpellScript + { + PrepareSpellScript(spell_q9874_liquid_fire_SpellScript); + + void HandleDummy(SpellEffIndex /*effIndex*/) + { + Player* caster = GetCaster()->ToPlayer(); + Creature* target = GetHitUnit()->ToCreature(); + if (!caster || !target || (target && target->HasAura(SPELL_FLAMES))) + return; + + caster->KilledMonsterCredit(NPC_KILL_CREDIT, 0); + target->CastSpell(target, SPELL_FLAMES, true); + target->DespawnOrUnsummon(60000); + } + + void Register() + { + OnEffect += SpellEffectFn(spell_q9874_liquid_fire_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); + } + }; + + SpellScript* GetSpellScript() const + { + return new spell_q9874_liquid_fire_SpellScript(); + }; +}; + void AddSC_quest_spell_scripts() { new spell_q55_sacred_cleansing(); @@ -877,4 +918,5 @@ void AddSC_quest_spell_scripts() new spell_q10041_q10040_who_are_they(); new spell_symbol_of_life_dummy(); new spell_q12659_ahunaes_knife(); + new spell_q9874_liquid_fire(); } |
