aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKillyana <morphone1@gmail.com>2019-12-15 16:27:21 +0100
committerShauren <shauren.trinity@gmail.com>2021-12-19 01:42:16 +0100
commit16ddcdfd0a4b85200b3e6032468cee257aa5e18f (patch)
tree7ad10abbb9b746ae2d3359588763a38dcb2a767e /src
parent89edc84c23f867855ee119c7a9eb5dbf31692cf8 (diff)
DB/Quest: Take Down Tethyr!
Closes #22407 (cherry picked from commit c22b1e6cb46ff76729f44eb846043e1614abc9f9)
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Spells/spell_generic.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp
index f000c3294d1..8c07f62339b 100644
--- a/src/server/scripts/Spells/spell_generic.cpp
+++ b/src/server/scripts/Spells/spell_generic.cpp
@@ -4308,6 +4308,35 @@ class spell_gen_charmed_unit_spell_cooldown : public SpellScript
}
};
+enum CannonBlast
+{
+ SPELL_CANNON_BLAST = 42578,
+ SPELL_CANNON_BLAST_DAMAGE = 42576
+};
+
+class spell_gen_cannon_blast : public SpellScript
+{
+ PrepareSpellScript(spell_gen_cannon_blast);
+
+ bool Validate(SpellInfo const* spellInfo) override
+ {
+ return ValidateSpellInfo({ SPELL_CANNON_BLAST });
+ }
+ void HandleScript(SpellEffIndex /*effIndex*/)
+ {
+ int32 bp = GetEffectValue();
+ Unit* target = GetHitUnit();
+ CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
+ args.AddSpellBP0(bp);
+ target->CastSpell(target, SPELL_CANNON_BLAST_DAMAGE, args);
+ }
+
+ void Register() override
+ {
+ OnEffectHitTarget += SpellEffectFn(spell_gen_cannon_blast::HandleScript, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT);
+ }
+};
+
// 169869 - Transformation Sickness
class spell_gen_decimatus_transformation_sickness : public SpellScript
{
@@ -4680,6 +4709,7 @@ void AddSC_generic_spell_scripts()
RegisterAuraScript(spell_gen_vehicle_control_link);
RegisterSpellScript(spell_freezing_circle);
RegisterSpellScript(spell_gen_charmed_unit_spell_cooldown);
+ RegisterSpellScript(spell_gen_cannon_blast);
RegisterSpellScript(spell_gen_decimatus_transformation_sickness);
RegisterSpellScript(spell_gen_anetheron_summon_towering_infernal);
RegisterSpellAndAuraScriptPair(spell_gen_mark_of_kazrogal_hellfire, spell_gen_mark_of_kazrogal_hellfire_aura);