diff options
| author | Giacomo Pozzoni <giacomopoz@gmail.com> | 2021-08-09 17:00:34 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-08-09 17:00:34 +0200 |
| commit | 0800ab20a8039620fd271a43c173c008af68c22a (patch) | |
| tree | af2152fcbb0c34d069a5fbc1ca640a4c88b42b4c /src/server/scripts/Outland | |
| parent | 1b9ee9525316861dd1d2099ed355a221ffc47e3b (diff) | |
Core/AI: Add DamageEffectType and SpellInfo parameters to UnitAI::DamageTaken (#26787)
* Core/AI: Add DamageEffectType and SpellInfo parameters to UnitAI::DamageTaken
* Update scripts
Diffstat (limited to 'src/server/scripts/Outland')
19 files changed, 30 insertions, 30 deletions
diff --git a/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_anzu.cpp b/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_anzu.cpp index a33153c43a7..db3559a32de 100644 --- a/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_anzu.cpp +++ b/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_anzu.cpp @@ -92,7 +92,7 @@ struct boss_anzu : public BossAI _JustDied(); } - void DamageTaken(Unit* /*killer*/, uint32 &damage) override + void DamageTaken(Unit* /*killer*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (me->HealthBelowPctDamaged(33, damage) && !_under33Percent) { diff --git a/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_darkweaver_syth.cpp b/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_darkweaver_syth.cpp index 77eed42e9fe..0206f61eba0 100644 --- a/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_darkweaver_syth.cpp +++ b/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_darkweaver_syth.cpp @@ -124,7 +124,7 @@ struct boss_darkweaver_syth : public BossAI summons.Summon(summoned); } - void DamageTaken(Unit* /*attacker*/, uint32& damage) override + void DamageTaken(Unit* /*attacker*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (me->HealthBelowPctDamaged(90, damage) && !_summon90) { diff --git a/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_talon_king_ikiss.cpp b/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_talon_king_ikiss.cpp index db3043810ce..63e2ed68a5b 100644 --- a/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_talon_king_ikiss.cpp +++ b/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_talon_king_ikiss.cpp @@ -124,7 +124,7 @@ struct boss_talon_king_ikiss : public BossAI } } - void DamageTaken(Unit* /*who*/, uint32& damage) override + void DamageTaken(Unit* /*who*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (!ManaShield && me->HealthBelowPctDamaged(20, damage)) { diff --git a/src/server/scripts/Outland/BlackTemple/boss_illidan.cpp b/src/server/scripts/Outland/BlackTemple/boss_illidan.cpp index ec7276ed0b7..66ed20cfacd 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_illidan.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_illidan.cpp @@ -711,7 +711,7 @@ struct boss_illidan_stormrage : public BossAI } } - void DamageTaken(Unit* who, uint32 &damage) override + void DamageTaken(Unit* who, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (damage >= me->GetHealth() && (!who || who->GetGUID() != me->GetGUID())) { @@ -1203,7 +1203,7 @@ struct npc_akama_illidan : public ScriptedAI } } - void DamageTaken(Unit* /*who*/, uint32 &damage) override + void DamageTaken(Unit* /*who*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (damage >= me->GetHealth()) damage = me->GetHealth() - 1; @@ -1660,7 +1660,7 @@ struct npc_maiev : public ScriptedAI _canDown = true; } - void DamageTaken(Unit* /*who*/, uint32 &damage) override + void DamageTaken(Unit* /*who*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (damage >= me->GetHealth() && _canDown) { diff --git a/src/server/scripts/Outland/BlackTemple/boss_illidari_council.cpp b/src/server/scripts/Outland/BlackTemple/boss_illidari_council.cpp index 3fb8d500063..a8f90ff8c6d 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_illidari_council.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_illidari_council.cpp @@ -274,7 +274,7 @@ struct IllidariCouncilBossAI : public BossAI illidari->AI()->EnterEvadeMode(why); } - void DamageTaken(Unit* who, uint32 &damage) override + void DamageTaken(Unit* who, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (damage >= me->GetHealth() && (!who || who->GetGUID() != me->GetGUID())) damage = me->GetHealth() - 1; diff --git a/src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp b/src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp index 35b01429684..8e1a5bd14d7 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp @@ -134,7 +134,7 @@ struct boss_mother_shahraz : public BossAI _DespawnAtEvade(); } - void DamageTaken(Unit* /*attacker*/, uint32 &damage) override + void DamageTaken(Unit* /*attacker*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (!_enraged && me->HealthBelowPctDamaged(10, damage)) { diff --git a/src/server/scripts/Outland/BlackTemple/boss_reliquary_of_souls.cpp b/src/server/scripts/Outland/BlackTemple/boss_reliquary_of_souls.cpp index 709650ec541..251ff1538cb 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_reliquary_of_souls.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_reliquary_of_souls.cpp @@ -311,7 +311,7 @@ struct boss_essence_of_suffering : public BossAI } } - void DamageTaken(Unit* /*done_by*/, uint32 &damage) override + void DamageTaken(Unit* /*done_by*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (damage >= me->GetHealth()) { @@ -422,7 +422,7 @@ struct boss_essence_of_desire : public BossAI } } - void DamageTaken(Unit* /*done_by*/, uint32 &damage) override + void DamageTaken(Unit* /*done_by*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (damage >= me->GetHealth()) { @@ -621,7 +621,7 @@ struct npc_enslaved_soul : public ScriptedAI me->m_Events.AddEventAtOffset([this]() { me->KillSelf(); }, 500ms); } - void DamageTaken(Unit* /*done_by*/, uint32& damage) override + void DamageTaken(Unit* /*done_by*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (damage >= me->GetHealth()) { @@ -683,7 +683,7 @@ struct npc_reliquary_combat_trigger : public ScriptedAI } } - void DamageTaken(Unit* /*done_by*/, uint32& damage) override + void DamageTaken(Unit* /*done_by*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { damage = 0; } diff --git a/src/server/scripts/Outland/BlackTemple/boss_shade_of_akama.cpp b/src/server/scripts/Outland/BlackTemple/boss_shade_of_akama.cpp index ceaa4e6a2b7..5586a85149d 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_shade_of_akama.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_shade_of_akama.cpp @@ -397,7 +397,7 @@ struct npc_akama_shade : public ScriptedAI } } - void DamageTaken(Unit* /*who*/, uint32& /*damage*/) override + void DamageTaken(Unit* /*who*/, uint32& /*damage*/, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (me->HealthBelowPct(20) && !_hasYelledOnce) { @@ -982,7 +982,7 @@ struct npc_ashtongue_spiritbinder : public ScriptedAI _events.ScheduleEvent(EVENT_SPIRIT_HEAL, 5s, 6s); } - void DamageTaken(Unit* /*who*/, uint32& /*damage*/) override + void DamageTaken(Unit* /*who*/, uint32& /*damage*/, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (!_spiritMend) if (HealthBelowPct(30)) diff --git a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_leotheras_the_blind.cpp b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_leotheras_the_blind.cpp index cbc4d835106..8ad1f28e061 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_leotheras_the_blind.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_leotheras_the_blind.cpp @@ -126,7 +126,7 @@ public: unit->RemoveAurasDueToSpell(SPELL_INSIDIOUS_WHISPER); } - void DamageTaken(Unit* done_by, uint32 &damage) override + void DamageTaken(Unit* done_by, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (!done_by || (done_by->GetGUID() != victimGUID && done_by->GetGUID() != me->GetGUID())) { diff --git a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_warlord_kalithresh.cpp b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_warlord_kalithresh.cpp index 33e4c817e63..9b86a61ee7e 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_warlord_kalithresh.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_warlord_kalithresh.cpp @@ -88,7 +88,7 @@ public: instance->SetData(DATA_DISTILLER, IN_PROGRESS); } - void DamageTaken(Unit* /*done_by*/, uint32 &damage) override + void DamageTaken(Unit* /*done_by*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (me->GetHealth() <= damage) instance->SetData(DATA_DISTILLER, DONE); diff --git a/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/boss_magtheridon.cpp b/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/boss_magtheridon.cpp index 758f0c1fd5a..b3c914a0600 100644 --- a/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/boss_magtheridon.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/boss_magtheridon.cpp @@ -184,7 +184,7 @@ struct boss_magtheridon : public BossAI Talk(SAY_BANISHED); } - void DamageTaken(Unit* /*who*/, uint32& damage) override + void DamageTaken(Unit* /*who*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (me->HealthBelowPctDamaged(30, damage) && !events.IsInPhase(PHASE_3)) { diff --git a/src/server/scripts/Outland/TempestKeep/Eye/boss_alar.cpp b/src/server/scripts/Outland/TempestKeep/Eye/boss_alar.cpp index 4b291d7a4a6..33fabe33e86 100644 --- a/src/server/scripts/Outland/TempestKeep/Eye/boss_alar.cpp +++ b/src/server/scripts/Outland/TempestKeep/Eye/boss_alar.cpp @@ -194,7 +194,7 @@ class boss_alar : public CreatureScript ScriptedAI::AttackStart(who); } - void DamageTaken(Unit* /*killer*/, uint32 &damage) override + void DamageTaken(Unit* /*killer*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (damage >= me->GetHealth() && Phase1) { @@ -516,7 +516,7 @@ class npc_ember_of_alar : public CreatureScript me->setDeathState(JUST_DIED); } - void DamageTaken(Unit* killer, uint32& damage) override + void DamageTaken(Unit* killer, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (damage >= me->GetHealth() && killer != me && !toDie) { diff --git a/src/server/scripts/Outland/TempestKeep/Eye/boss_kaelthas.cpp b/src/server/scripts/Outland/TempestKeep/Eye/boss_kaelthas.cpp index 2d9da692579..28761ab03dc 100644 --- a/src/server/scripts/Outland/TempestKeep/Eye/boss_kaelthas.cpp +++ b/src/server/scripts/Outland/TempestKeep/Eye/boss_kaelthas.cpp @@ -446,7 +446,7 @@ struct boss_kaelthas : public BossAI } } - void DamageTaken(Unit* attacker, uint32& damage) override + void DamageTaken(Unit* attacker, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (_phase == PHASE_NONE) { @@ -803,7 +803,7 @@ struct advisorbase_ai : public ScriptedAI } } - void DamageTaken(Unit* killer, uint32 &damage) override + void DamageTaken(Unit* killer, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (damage >= me->GetHealth() && !_inFakeDeath && !_hasRessurrected) { diff --git a/src/server/scripts/Outland/TempestKeep/Mechanar/boss_pathaleon_the_calculator.cpp b/src/server/scripts/Outland/TempestKeep/Mechanar/boss_pathaleon_the_calculator.cpp index 19c462c2a07..11dbd778ab8 100644 --- a/src/server/scripts/Outland/TempestKeep/Mechanar/boss_pathaleon_the_calculator.cpp +++ b/src/server/scripts/Outland/TempestKeep/Mechanar/boss_pathaleon_the_calculator.cpp @@ -92,7 +92,7 @@ struct boss_pathaleon_the_calculator : public BossAI Talk(SAY_DEATH); } - void DamageTaken(Unit* /*attacker*/, uint32& damage) override + void DamageTaken(Unit* /*attacker*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (me->HealthBelowPctDamaged(20, damage) && !me->HasAura(SPELL_FRENZY)) { diff --git a/src/server/scripts/Outland/TempestKeep/botanica/boss_commander_sarannis.cpp b/src/server/scripts/Outland/TempestKeep/botanica/boss_commander_sarannis.cpp index 4cc3cf527ea..fe845de505d 100644 --- a/src/server/scripts/Outland/TempestKeep/botanica/boss_commander_sarannis.cpp +++ b/src/server/scripts/Outland/TempestKeep/botanica/boss_commander_sarannis.cpp @@ -86,7 +86,7 @@ class boss_commander_sarannis : public CreatureScript Talk(SAY_DEATH); } - void DamageTaken(Unit* /*killer*/, uint32 &damage) override + void DamageTaken(Unit* /*killer*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (me->HealthBelowPctDamaged(50, damage) && _phase) { diff --git a/src/server/scripts/Outland/TempestKeep/botanica/boss_thorngrin_the_tender.cpp b/src/server/scripts/Outland/TempestKeep/botanica/boss_thorngrin_the_tender.cpp index 4d30e5724b6..1af1d6c10cd 100644 --- a/src/server/scripts/Outland/TempestKeep/botanica/boss_thorngrin_the_tender.cpp +++ b/src/server/scripts/Outland/TempestKeep/botanica/boss_thorngrin_the_tender.cpp @@ -91,7 +91,7 @@ class boss_thorngrin_the_tender : public CreatureScript Talk(SAY_DEATH); } - void DamageTaken(Unit* /*killer*/, uint32 &damage) override + void DamageTaken(Unit* /*killer*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (me->HealthBelowPctDamaged(50, damage) && _phase1) { diff --git a/src/server/scripts/Outland/zone_hellfire_peninsula.cpp b/src/server/scripts/Outland/zone_hellfire_peninsula.cpp index d46b87c116c..ff299ede68a 100644 --- a/src/server/scripts/Outland/zone_hellfire_peninsula.cpp +++ b/src/server/scripts/Outland/zone_hellfire_peninsula.cpp @@ -554,7 +554,7 @@ public: me->SetImmuneToPC(true); } - void DamageTaken(Unit* /*attacker*/, uint32 &damage) override + void DamageTaken(Unit* /*attacker*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (damage > me->GetHealth() || me->HealthBelowPctDamaged(20, damage)) { diff --git a/src/server/scripts/Outland/zone_nagrand.cpp b/src/server/scripts/Outland/zone_nagrand.cpp index 6067f4cd24b..7b02b3547e1 100644 --- a/src/server/scripts/Outland/zone_nagrand.cpp +++ b/src/server/scripts/Outland/zone_nagrand.cpp @@ -531,7 +531,7 @@ public: }); } - void DamageTaken(Unit* /*attacker*/, uint32& damage) override + void DamageTaken(Unit* /*attacker*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (!has_fled && me->GetHealth() > damage && me->HealthBelowPctDamaged(15, damage)) { @@ -583,7 +583,7 @@ public: used_bloodthirst = false; } - void DamageTaken(Unit* /*attacker*/, uint32& damage) override + void DamageTaken(Unit* /*attacker*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (!used_bloodthirst && me->GetHealth() > damage && me->HealthBelowPctDamaged(50, damage)) { @@ -612,7 +612,7 @@ public: used_transform = false; } - void DamageTaken(Unit* /*attacker*/, uint32& damage) override + void DamageTaken(Unit* /*attacker*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (!used_transform && me->GetHealth() > damage && me->HealthBelowPctDamaged(65, damage)) { @@ -653,7 +653,7 @@ public: }); } - void DamageTaken(Unit* /*attacker*/, uint32& damage) override + void DamageTaken(Unit* /*attacker*/, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (!used_healing && me->GetHealth() > damage && me->HealthBelowPctDamaged(50, damage)) { diff --git a/src/server/scripts/Outland/zone_terokkar_forest.cpp b/src/server/scripts/Outland/zone_terokkar_forest.cpp index 387b84230de..d654a5139b0 100644 --- a/src/server/scripts/Outland/zone_terokkar_forest.cpp +++ b/src/server/scripts/Outland/zone_terokkar_forest.cpp @@ -97,7 +97,7 @@ public: UnkorUnfriendly_Timer = 60000; } - void DamageTaken(Unit* done_by, uint32 &damage) override + void DamageTaken(Unit* done_by, uint32& damage, DamageEffectType /*damageType*/, SpellInfo const* /*spellInfo = nullptr*/) override { if (!done_by || !me->HealthBelowPctDamaged(30, damage)) return; |
