diff options
| author | Giacomo Pozzoni <giacomopoz@gmail.com> | 2021-08-09 17:00:34 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2022-03-12 14:45:04 +0100 |
| commit | 71c2f0af46b3ccec8c3422534e4403f3650b757d (patch) | |
| tree | 824556b76e51acd3698bb3b80fa3475e99f1a449 /src/server/scripts/Outland | |
| parent | 5f38fd2f2d4fc2f7caba8c6b9e0b3286d8d79339 (diff) | |
Core/AI: Add DamageEffectType and SpellInfo parameters to UnitAI::DamageTaken (#26787)
* Core/AI: Add DamageEffectType and SpellInfo parameters to UnitAI::DamageTaken
* Update scripts
(cherry picked from commit 0800ab20a8039620fd271a43c173c008af68c22a)
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 da3ce3a033e..c832d7bbdcb 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 7b9215be52a..dcc8271d137 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 f29b0fae409..466532df271 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 830acc59b64..9a0f3bda655 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 c8785f30bdf..0bde38f7a19 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 5a173298087..52887bccfa6 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 ab2389ced15..7293fc9f6ee 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 a67aa4a0f69..3ef45fe782c 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 3f25aaba4f0..bf06102bb4d 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 77698b3755c..9047b6cde0e 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 b35812c58c6..cb6490b171e 100644 --- a/src/server/scripts/Outland/TempestKeep/Eye/boss_kaelthas.cpp +++ b/src/server/scripts/Outland/TempestKeep/Eye/boss_kaelthas.cpp @@ -445,7 +445,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) { @@ -802,7 +802,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 3ebfa24c0d4..2f5291af8e0 100644 --- a/src/server/scripts/Outland/zone_hellfire_peninsula.cpp +++ b/src/server/scripts/Outland/zone_hellfire_peninsula.cpp @@ -553,7 +553,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 70b94a9e0d8..37f5ec0a41a 100644 --- a/src/server/scripts/Outland/zone_nagrand.cpp +++ b/src/server/scripts/Outland/zone_nagrand.cpp @@ -529,7 +529,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)) { @@ -581,7 +581,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)) { @@ -610,7 +610,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)) { @@ -651,7 +651,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 b30ef7719a6..b74a428c7ec 100644 --- a/src/server/scripts/Outland/zone_terokkar_forest.cpp +++ b/src/server/scripts/Outland/zone_terokkar_forest.cpp @@ -94,7 +94,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; |
