aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPitcrawler <pitcrawler@server.fake>2013-06-12 21:15:17 +0200
committerPitcrawler <pitcrawler@server.fake>2013-06-12 21:15:17 +0200
commit2f771d4950fd551eeca7d91a49c2dfd7fd48ec6f (patch)
treeef1620762c6e7cc41a4e402a6c8aeaefdb0ccbb7 /src
parent1dfda35221ab6cab8d4149d43fb06e0ea88e443e (diff)
DB/Quests: Fix Badlands Reagent Run II, closes #9880
Thanks @joschiwald and @Kirkhammett
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Spells/Auras/SpellAuraEffects.cpp4
-rw-r--r--src/server/scripts/Spells/spell_quest.cpp42
2 files changed, 42 insertions, 4 deletions
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
index 55a0736d16e..39b7fbe4ea4 100644
--- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp
+++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
@@ -5517,10 +5517,6 @@ void AuraEffect::HandlePeriodicTriggerSpellAuraTick(Unit* target, Unit* caster)
{
switch (auraId)
{
- // Thaumaturgy Channel
- case 9712:
- triggerSpellId = 21029;
- break;
// Brood Affliction: Bronze
case 23170:
triggerSpellId = 23171;
diff --git a/src/server/scripts/Spells/spell_quest.cpp b/src/server/scripts/Spells/spell_quest.cpp
index 51740cc7667..3940dec92e7 100644
--- a/src/server/scripts/Spells/spell_quest.cpp
+++ b/src/server/scripts/Spells/spell_quest.cpp
@@ -86,6 +86,47 @@ class spell_q55_sacred_cleansing : public SpellScriptLoader
}
};
+// 9712 - Thaumaturgy Channel
+enum ThaumaturgyChannel
+{
+ SPELL_THAUMATURGY_CHANNEL = 21029
+};
+
+class spell_q2203_thaumaturgy_channel : public SpellScriptLoader
+{
+ public:
+ spell_q2203_thaumaturgy_channel() : SpellScriptLoader("spell_q2203_thaumaturgy_channel") { }
+
+ class spell_q2203_thaumaturgy_channel_AuraScript : public AuraScript
+ {
+ PrepareAuraScript(spell_q2203_thaumaturgy_channel_AuraScript);
+
+ bool Validate(SpellInfo const* /*spellInfo*/)
+ {
+ if (!sSpellMgr->GetSpellInfo(SPELL_THAUMATURGY_CHANNEL))
+ return false;
+ return true;
+ }
+
+ void HandleEffectPeriodic(AuraEffect const* /*aurEff*/)
+ {
+ PreventDefaultAction();
+ if (Unit* caster = GetCaster())
+ caster->CastSpell(caster, SPELL_THAUMATURGY_CHANNEL, false);
+ }
+
+ void Register()
+ {
+ OnEffectPeriodic += AuraEffectPeriodicFn(spell_q2203_thaumaturgy_channel_AuraScript::HandleEffectPeriodic, EFFECT_0, SPELL_AURA_PERIODIC_TRIGGER_SPELL);
+ }
+ };
+
+ AuraScript* GetAuraScript() const
+ {
+ return new spell_q2203_thaumaturgy_channel_AuraScript();
+ }
+};
+
// http://www.wowhead.com/quest=5206 Marauders of Darrowshire
// 17271 Test Fetid Skull
enum Quest5206Data
@@ -1674,6 +1715,7 @@ class spell_q12847_summon_soul_moveto_bunny : public SpellScriptLoader
void AddSC_quest_spell_scripts()
{
new spell_q55_sacred_cleansing();
+ new spell_q2203_thaumaturgy_channel();
new spell_q5206_test_fetid_skull();
new spell_q6124_6129_apply_salve();
new spell_q10255_administer_antidote();