aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/world/2013_06_12_01_world_misc.sql13
-rw-r--r--src/server/game/Spells/Auras/SpellAuraEffects.cpp4
-rw-r--r--src/server/scripts/Spells/spell_quest.cpp42
3 files changed, 55 insertions, 4 deletions
diff --git a/sql/updates/world/2013_06_12_01_world_misc.sql b/sql/updates/world/2013_06_12_01_world_misc.sql
new file mode 100644
index 00000000000..c7b84d811e2
--- /dev/null
+++ b/sql/updates/world/2013_06_12_01_world_misc.sql
@@ -0,0 +1,13 @@
+-- Fix quest: Badlands Reagent Run II (2203)
+
+UPDATE `item_loot_template` SET `mincountOrRef`=3, `maxcount`=3 WHERE `item`=7866;
+
+DELETE FROM `item_loot_template` WHERE `item`=7866 AND `entry`=16883;
+
+DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=13 AND `SourceEntry`=9712;
+INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`ErrorTextId`,`ScriptName`,`Comment`) VALUES
+(13,1,9712,0,31,3,2726,0,0,'','Spell Thaumaturgy Channel targets Scorched Guardian');
+
+DELETE FROM `spell_script_names` WHERE `spell_id`=9712;
+INSERT INTO `spell_script_names` (`spell_id`,`ScriptName`) VALUES
+(9712,'spell_q2203_thaumaturgy_channel');
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();