diff options
author | Teleqraph <nyrdeveloper@gmail.com> | 2023-07-20 19:09:27 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-07-20 19:09:27 +0200 |
commit | 88ff97c1f96381565c47f8ca1993bdc7fce19fd6 (patch) | |
tree | e2b89eb2da0a1a01e8f4eef0a37328e997cb344c /src/server/scripts/World | |
parent | d4112334142f85addcf784bf3b4fb3b04773f1cd (diff) |
Core/Units: Added helper functions to modify UNIT_FLAG_UNINTERACTIBLE (#29159)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
Diffstat (limited to 'src/server/scripts/World')
-rw-r--r-- | src/server/scripts/World/boss_emerald_dragons.cpp | 9 | ||||
-rw-r--r-- | src/server/scripts/World/npcs_special.cpp | 10 |
2 files changed, 11 insertions, 8 deletions
diff --git a/src/server/scripts/World/boss_emerald_dragons.cpp b/src/server/scripts/World/boss_emerald_dragons.cpp index 8131f134dca..cdb4ee81eaa 100644 --- a/src/server/scripts/World/boss_emerald_dragons.cpp +++ b/src/server/scripts/World/boss_emerald_dragons.cpp @@ -95,7 +95,8 @@ struct emerald_dragonAI : public WorldBossAI void Reset() override { WorldBossAI::Reset(); - me->RemoveUnitFlag(UNIT_FLAG_UNINTERACTIBLE | UNIT_FLAG_NON_ATTACKABLE); + me->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE); + me->SetUninteractible(false); me->SetReactState(REACT_AGGRESSIVE); DoCast(me, SPELL_MARK_OF_NATURE_AURA, true); events.ScheduleEvent(EVENT_TAIL_SWEEP, 4s); @@ -633,7 +634,8 @@ class boss_taerar : public CreatureScript _shades += count; DoCast(SPELL_SHADE); - me->SetUnitFlag(UNIT_FLAG_UNINTERACTIBLE | UNIT_FLAG_NON_ATTACKABLE); + me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE); + me->SetUninteractible(true); me->SetReactState(REACT_PASSIVE); ++_stage; @@ -670,7 +672,8 @@ class boss_taerar : public CreatureScript { _banished = false; - me->RemoveUnitFlag(UNIT_FLAG_UNINTERACTIBLE | UNIT_FLAG_NON_ATTACKABLE); + me->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE); + me->SetUninteractible(false); me->RemoveAurasDueToSpell(SPELL_SHADE); me->SetReactState(REACT_AGGRESSIVE); } diff --git a/src/server/scripts/World/npcs_special.cpp b/src/server/scripts/World/npcs_special.cpp index ade17b58a2b..25d8237f808 100644 --- a/src/server/scripts/World/npcs_special.cpp +++ b/src/server/scripts/World/npcs_special.cpp @@ -637,7 +637,7 @@ public: void Reset() override { Initialize(); - me->RemoveUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(false); } void BeginEvent(Player* player) @@ -662,7 +662,7 @@ public: } Event = true; - me->SetUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(true); } void PatientDied(Position const* point) @@ -770,7 +770,7 @@ public: Initialize(); //no select - me->RemoveUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(false); //no regen health me->SetUnitFlag(UNIT_FLAG_IN_COMBAT); @@ -811,7 +811,7 @@ public: ENSURE_AI(npc_doctor::npc_doctorAI, doctor->AI())->PatientSaved(me, player, Coord); //make uninteractible - me->SetUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(true); //regen health me->RemoveUnitFlag(UNIT_FLAG_IN_COMBAT); @@ -848,7 +848,7 @@ public: if (me->IsAlive() && me->GetHealth() <= 6) { me->RemoveUnitFlag(UNIT_FLAG_IN_COMBAT); - me->SetUnitFlag(UNIT_FLAG_UNINTERACTIBLE); + me->SetUninteractible(true); me->setDeathState(JUST_DIED); me->SetUnitFlag3(UNIT_FLAG3_FAKE_DEAD); |