aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2025-02-10 18:52:18 +0100
committerOvahlord <dreadkiller@gmx.de>2025-02-10 21:58:13 +0100
commit79236e20173e1d708333c72b6bc187640d94d45d (patch)
treeb35774160ef3c6928335b8ea151b42896f7ebd20
parent963f6699be5fc40e0368cdae493ecbf13ff41824 (diff)
Core/Movement: Fixed formation movement resetting state on every waypoint of its leader
Closes #29950 (cherry picked from commit 1f62d3caaac234bca14929ec2397befe69b85900)
-rw-r--r--src/server/game/Entities/Creature/CreatureGroups.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/server/game/Entities/Creature/CreatureGroups.cpp b/src/server/game/Entities/Creature/CreatureGroups.cpp
index da6c4ba208a..97e64340f3c 100644
--- a/src/server/game/Entities/Creature/CreatureGroups.cpp
+++ b/src/server/game/Entities/Creature/CreatureGroups.cpp
@@ -291,7 +291,7 @@ void CreatureGroup::LeaderStartedMoving()
float angle = formationInfo->FollowAngle + float(M_PI); // for some reason, someone thought it was a great idea to invert relativ angles...
float dist = formationInfo->FollowDist;
- if (!member->HasUnitState(UNIT_STATE_FOLLOW_FORMATION))
+ if (member->GetMotionMaster()->GetCurrentMovementGeneratorType(MOTION_SLOT_DEFAULT) != FORMATION_MOTION_TYPE)
member->GetMotionMaster()->MoveFormation(_leader, dist, angle, formationInfo->LeaderWaypointIDs[0], formationInfo->LeaderWaypointIDs[1]);
}
}