From 7c025ee80304e41de791423682399745aac8ae5d Mon Sep 17 00:00:00 2001 From: Treeston Date: Mon, 12 Feb 2018 03:25:05 +0100 Subject: [PATCH] Core/AI: EscortAI init logic moved from JustAppeared to InitializeAI. There are no escort NPCs using compatibility mode anymore, so this is equivalent. As a result, inheriting scripts calling Start in on-create hooks (like JustSummoned) will now work properly again. Tagging #20310. # Conflicts: # src/server/game/AI/ScriptedAI/ScriptedEscortAI.h --- src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp | 4 +--- src/server/game/AI/ScriptedAI/ScriptedEscortAI.h | 2 +- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp b/src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp index 1c650bd1711..91191c1ea02 100644 --- a/src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp +++ b/src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp @@ -108,7 +108,7 @@ void EscortAI::JustDied(Unit* /*killer*/) } } -void EscortAI::JustAppeared() +void EscortAI::InitializeAI() { _escortState = STATE_ESCORT_NONE; @@ -120,8 +120,6 @@ void EscortAI::JustAppeared() if (me->GetFaction() != me->GetCreatureTemplate()->faction) me->RestoreFaction(); - - Reset(); } void EscortAI::ReturnToLastPoint() diff --git a/src/server/game/AI/ScriptedAI/ScriptedEscortAI.h b/src/server/game/AI/ScriptedAI/ScriptedEscortAI.h index 16e6258c035..56fe8c7208c 100644 --- a/src/server/game/AI/ScriptedAI/ScriptedEscortAI.h +++ b/src/server/game/AI/ScriptedAI/ScriptedEscortAI.h @@ -40,10 +40,10 @@ struct TC_GAME_API EscortAI : public ScriptedAI explicit EscortAI(Creature* creature); ~EscortAI() { } + void InitializeAI() override; void UpdateAI(uint32 diff) override; // the "internal" update, calls UpdateEscortAI() void MoveInLineOfSight(Unit* who) override; void JustDied(Unit*) override; - void JustAppeared() override; void ReturnToLastPoint(); void EnterEvadeMode(EvadeReason /*why*/ = EVADE_REASON_OTHER) override; void MovementInform(uint32, uint32) override;