feat(Core/Movement): port smooth waypoint movement from Cataclysm Preservation Project (#25106)
Co-authored-by: blinkysc <blinkysc@users.noreply.github.com> Co-authored-by: Ovahlord <dreadkiller@gmx.de> Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Co-authored-by: Kitzunu <Kitzunu@users.noreply.github.com>
This commit is contained in:
+2
@@ -213,6 +213,7 @@ struct npc_grimstone : public npc_escortAI
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
@@ -568,6 +569,7 @@ struct npc_rocknot : public npc_escortAI
|
||||
go->SetGoState((GOState)state);
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
|
||||
@@ -176,6 +176,7 @@ public:
|
||||
|
||||
void JustEngagedWith(Unit* /*who*/) override { }
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
|
||||
@@ -52,6 +52,7 @@ public:
|
||||
{
|
||||
npc_professor_phizzlethorpeAI(Creature* creature) : npc_escortAI(creature) { }
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
|
||||
@@ -45,6 +45,7 @@ struct npc_ranger_lilatha : public npc_escortAI
|
||||
{
|
||||
npc_ranger_lilatha(Creature* creature) : npc_escortAI(creature) { }
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
|
||||
@@ -137,6 +137,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
|
||||
@@ -68,6 +68,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
|
||||
@@ -55,6 +55,7 @@ public:
|
||||
{
|
||||
npc_deathstalker_erlandAI(Creature* creature) : npc_escortAI(creature) { }
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
|
||||
@@ -88,6 +88,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
@@ -318,6 +319,7 @@ public:
|
||||
uiPhase = 0;
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
|
||||
@@ -1423,6 +1423,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
@@ -2820,6 +2821,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
|
||||
@@ -81,6 +81,7 @@ public:
|
||||
textCounter = SAY_DS_DOWN_1;
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
|
||||
@@ -55,6 +55,7 @@ public:
|
||||
IsFriendSummoned = false;
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
|
||||
+1
@@ -527,6 +527,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 uiPointId) override
|
||||
{
|
||||
switch (uiPointId)
|
||||
|
||||
@@ -303,6 +303,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
@@ -1014,6 +1015,7 @@ public:
|
||||
Start(false);
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
if (waypointId == 7)
|
||||
|
||||
@@ -227,6 +227,7 @@ struct npc_general_andorov : public npc_escortAI
|
||||
events.ScheduleEvent(EVENT_STRIKE, 2s, 5s);
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
|
||||
@@ -126,6 +126,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
if (Player* player = GetPlayerForEscort())
|
||||
|
||||
@@ -246,6 +246,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
if (Player* player = GetPlayerForEscort())
|
||||
|
||||
@@ -330,6 +330,7 @@ public:
|
||||
// pSummoned->AI()->AttackStart(me);
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
if (Player* player = GetPlayerForEscort())
|
||||
|
||||
@@ -257,6 +257,7 @@ public:
|
||||
me->SetFaction(faction);
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
RelocateSummons();
|
||||
|
||||
@@ -553,6 +553,7 @@ public:
|
||||
else if (EventOnWait) EventTimer -= diff;
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
CurrWP = waypointId;
|
||||
|
||||
@@ -102,6 +102,7 @@ public:
|
||||
{
|
||||
npc_kaya_flathoofAI(Creature* creature) : npc_escortAI(creature) {}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
|
||||
@@ -168,6 +168,7 @@ public:
|
||||
{
|
||||
npc_custodian_of_timeAI(Creature* creature) : npc_escortAI(creature) { }
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
if (Player* player = GetPlayerForEscort())
|
||||
|
||||
@@ -74,6 +74,7 @@ public:
|
||||
|
||||
void Reset() override { }
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
@@ -494,6 +495,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
|
||||
@@ -85,6 +85,7 @@ public:
|
||||
|
||||
void Reset() override { }
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
@@ -170,6 +171,7 @@ public:
|
||||
|
||||
void Reset() override { }
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
|
||||
@@ -69,6 +69,7 @@ public:
|
||||
|
||||
uint32 DemoralizingShoutTimer;
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
if (Player* player = GetPlayerForEscort())
|
||||
|
||||
@@ -383,6 +383,7 @@ public:
|
||||
StartNextDialogueText(SAY_PRIESTESS_ALTAR_3);
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 pointId) override
|
||||
{
|
||||
switch (pointId)
|
||||
|
||||
@@ -233,6 +233,7 @@ public:
|
||||
zarithrian->AI()->JustSummoned(me);
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
if (waypointId == MAX_PATH_FLAMECALLER_WAYPOINTS)
|
||||
|
||||
+1
@@ -519,6 +519,7 @@ public:
|
||||
bCheck = false;
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 uiPoint) override
|
||||
{
|
||||
if (uiPoint == 1)
|
||||
|
||||
+1
@@ -340,6 +340,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 i) override
|
||||
{
|
||||
if (i == 12)
|
||||
|
||||
+1
@@ -592,6 +592,7 @@ public:
|
||||
|
||||
void EnterEvadeMode(EvadeReason /*why*/) override {}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 i) override
|
||||
{
|
||||
if (!pInstance)
|
||||
|
||||
@@ -791,6 +791,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
|
||||
@@ -267,6 +267,7 @@ struct boss_bjarngrim : public npc_escortAI
|
||||
m_uiStance = stance;
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 Point) override
|
||||
{
|
||||
if (Point == 1)
|
||||
|
||||
@@ -312,6 +312,7 @@ public:
|
||||
TalkEvent = false;
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 id) override;
|
||||
void InitializeEvent();
|
||||
|
||||
|
||||
@@ -974,6 +974,7 @@ struct npc_mimirons_inferno : public npc_escortAI
|
||||
|
||||
void AttackStart(Unit*) override { }
|
||||
void MoveInLineOfSight(Unit*) override { }
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 /*waypointId*/) override { }
|
||||
|
||||
void DoAction(int32 param) override
|
||||
|
||||
@@ -895,6 +895,7 @@ struct boss_thorim_lightning_orb : public npc_escortAI
|
||||
me->CastSpell(me, SPELL_LIGHTNING_DESTRUCTION, true);
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 /*point*/) override
|
||||
{
|
||||
}
|
||||
@@ -960,6 +961,7 @@ struct boss_thorim_sif_blizzard : public npc_escortAI
|
||||
me->CastSpell(me, SPELL_BLIZZARD, true);
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 /*point*/) override
|
||||
{
|
||||
}
|
||||
|
||||
@@ -934,6 +934,7 @@ struct boss_yoggsaron_cloud : public npc_escortAI
|
||||
|
||||
void MoveInLineOfSight(Unit* /*who*/) override {}
|
||||
void AttackStart(Unit* /*who*/) override {}
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 /*point*/) override {}
|
||||
|
||||
void Reset() override
|
||||
|
||||
@@ -312,6 +312,7 @@ struct violet_hold_trashAI : public npc_escortAI
|
||||
CreatureStartAttackDoor();
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 id) override
|
||||
{
|
||||
if (PLoc < 6)
|
||||
@@ -1021,6 +1022,7 @@ public:
|
||||
uint32 timer;
|
||||
uint8 count;
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 uiWPointId) override
|
||||
{
|
||||
if (!pInstance)
|
||||
|
||||
@@ -377,6 +377,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
@@ -752,6 +753,7 @@ public:
|
||||
player->FailQuest(QUEST_ESCAPING_THE_MIST);
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
@@ -849,6 +851,7 @@ public:
|
||||
else Bonker_agro = 0;
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
|
||||
@@ -75,6 +75,7 @@ public:
|
||||
summoned->AI()->AttackStart(me->GetVictim());
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
|
||||
@@ -126,6 +126,7 @@ public:
|
||||
DoMeleeAttackIfReady();
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
@@ -210,6 +211,7 @@ public:
|
||||
Start(false, summonerGUID);
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
if (waypointId != 26)
|
||||
|
||||
@@ -747,6 +747,7 @@ public:
|
||||
summons.Despawn(summon);
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 pointId) override
|
||||
{
|
||||
switch (pointId)
|
||||
|
||||
@@ -521,6 +521,7 @@ public:
|
||||
|
||||
uint32 m_uiChatTimer;
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
|
||||
@@ -73,6 +73,7 @@ struct npc_frosthound : public npc_escortAI
|
||||
return;
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
@@ -568,6 +569,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 /*waypointId*/) override { }
|
||||
void JustDied(Unit* /*killer*/) override { }
|
||||
void OnCharmed(bool /*apply*/) override { }
|
||||
|
||||
@@ -195,6 +195,7 @@ public:
|
||||
npc_escortAI::MoveInLineOfSight(who);
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
@@ -320,6 +321,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
|
||||
@@ -114,6 +114,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
@@ -340,6 +341,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
switch (waypointId)
|
||||
|
||||
@@ -164,6 +164,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 i) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
@@ -626,6 +627,7 @@ public:
|
||||
player->FailQuest(Q_ALMABTRIEB);
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
@@ -709,6 +711,7 @@ public:
|
||||
uiTakeTimer = 3000;
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
|
||||
@@ -161,6 +161,7 @@ public:
|
||||
public:
|
||||
npc_kservantAI(Creature* creature) : npc_escortAI(creature) { }
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
|
||||
@@ -374,6 +374,7 @@ public:
|
||||
{
|
||||
npc_isla_starmaneAI(Creature* creature) : npc_escortAI(creature) { }
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 waypointId) override
|
||||
{
|
||||
Player* player = GetPlayerForEscort();
|
||||
|
||||
@@ -1356,6 +1356,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
using CreatureAI::WaypointReached;
|
||||
void WaypointReached(uint32 /*waypointId*/) override
|
||||
{
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user