mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-02-02 15:17:27 +01:00
Hi, I'm Treeston, and welcome to Combat PR Prep Refactors.
Today, we're moving UNIT_FLAG_IMMUNE_TO_PC and UNIT_FLAG_IMMUNE_TO_NPC to higher-level abstraction so combat manager can react to it.
New methods on Unit:
- void SetImmuneTo<All/PC/NPC>(apply, keepCombat = false);
- bool IsImmuneTo<All/PC/NPC>() const;
(cherry picked from commit 74af880217)
This commit is contained in:
@@ -188,7 +188,7 @@ void npc_escortAI::EnterEvadeMode(EvadeReason /*why*/)
|
||||
{
|
||||
me->GetMotionMaster()->MoveTargetedHome();
|
||||
if (HasImmuneToNPCFlags)
|
||||
me->AddUnitFlag(UNIT_FLAG_IMMUNE_TO_NPC);
|
||||
me->SetImmuneToNPC(true);
|
||||
Reset();
|
||||
}
|
||||
}
|
||||
@@ -472,10 +472,10 @@ void npc_escortAI::Start(bool isActiveAttacker /* = true*/, bool run /* = false
|
||||
//disable npcflags
|
||||
me->SetNpcFlags(UNIT_NPC_FLAG_NONE);
|
||||
me->SetNpcFlags2(UNIT_NPC_FLAG_2_NONE);
|
||||
if (me->HasUnitFlag(UNIT_FLAG_IMMUNE_TO_NPC))
|
||||
if (me->IsImmuneToNPC())
|
||||
{
|
||||
HasImmuneToNPCFlags = true;
|
||||
me->RemoveUnitFlag(UNIT_FLAG_IMMUNE_TO_NPC);
|
||||
me->SetImmuneToNPC(false);
|
||||
}
|
||||
|
||||
TC_LOG_DEBUG("scripts", "EscortAI started with " UI64FMTD " waypoints. ActiveAttacker = %d, Run = %d, %s", uint64(WaypointList.size()), m_bIsActiveAttacker, m_bIsRunning, m_uiPlayerGUID.ToString().c_str());
|
||||
|
||||
Reference in New Issue
Block a user