From 29e14042e7356a513104e366095b4f7595a7bf4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E4=BD=A9=E8=8C=B9?= Date: Wed, 27 Jul 2022 10:15:08 -0600 Subject: [PATCH] Update to work with latest AzerothCore master --- src/server/game/AI/CreatureAI.cpp | 2 +- .../game/Entities/Creature/Creature.cpp | 20 +++++-------------- src/server/game/Entities/Creature/Creature.h | 1 + 3 files changed, 7 insertions(+), 16 deletions(-) diff --git a/src/server/game/AI/CreatureAI.cpp b/src/server/game/AI/CreatureAI.cpp index 14048b6f3..def842518 100644 --- a/src/server/game/AI/CreatureAI.cpp +++ b/src/server/game/AI/CreatureAI.cpp @@ -307,7 +307,7 @@ bool CreatureAI::_EnterEvadeMode(EvadeReason /*why*/) me->SetLootRecipient(nullptr); me->ResetPlayerDamageReq(); me->SetLastDamagedTime(0); - me->SetCannotReachTarget(); + me->SetCannotReachTarget(true); if (ZoneScript* zoneScript = me->GetZoneScript() ? me->GetZoneScript() : (ZoneScript*)me->GetInstanceScript()) zoneScript->OnCreatureEvade(me); diff --git a/src/server/game/Entities/Creature/Creature.cpp b/src/server/game/Entities/Creature/Creature.cpp index 6eb485cee..7e261d8d7 100644 --- a/src/server/game/Entities/Creature/Creature.cpp +++ b/src/server/game/Entities/Creature/Creature.cpp @@ -3494,6 +3494,11 @@ bool Creature::IsMovementPreventedByCasting() const return false; } +bool Creature::SetCannotReachTarget() +{ + return SetCannotReachTarget(true); +} + bool Creature::SetCannotReachTarget(bool cannotReach, bool isChase /*= true*/) { if (!isChase || !Unit::SetCannotReachTarget(cannotReach)) @@ -3511,21 +3516,6 @@ bool Creature::SetCannotReachTarget(bool cannotReach, bool isChase /*= true*/) return true; } -bool Creature::CanNotReachTarget() const -{ - return m_cannotReachTarget; -} - -bool Creature::IsNotReachableAndNeedRegen() const -{ - if (CanNotReachTarget()) - { - return m_cannotReachTimer >= (sWorld->getIntConfig(CONFIG_NPC_REGEN_TIME_IF_NOT_REACHABLE_IN_RAID) * IN_MILLISECONDS); - } - - return false; -} - time_t Creature::GetLastDamagedTime() const { if (!_lastDamagedTime) diff --git a/src/server/game/Entities/Creature/Creature.h b/src/server/game/Entities/Creature/Creature.h index f63b54179..ffafd9bf4 100644 --- a/src/server/game/Entities/Creature/Creature.h +++ b/src/server/game/Entities/Creature/Creature.h @@ -310,6 +310,7 @@ public: return m_charmInfo->GetCharmSpell(pos)->GetAction(); } + bool SetCannotReachTarget(); bool SetCannotReachTarget(bool cannotReach, bool isChase = true) override; [[nodiscard]] bool IsNotReachable() const { return (m_cannotReachTimer >= (sWorld->getIntConfig(CONFIG_NPC_EVADE_IF_NOT_REACHABLE) * IN_MILLISECONDS)) && m_cannotReachTarget; } [[nodiscard]] bool IsNotReachableAndNeedRegen() const { return (m_cannotReachTimer >= (sWorld->getIntConfig(CONFIG_NPC_REGEN_TIME_IF_NOT_REACHABLE_IN_RAID) * IN_MILLISECONDS)) && m_cannotReachTarget; }