diff options
author | ModoX <moardox@gmail.com> | 2024-01-05 18:34:49 +0100 |
---|---|---|
committer | funjoker <funjoker109@gmail.com> | 2024-01-09 20:42:23 +0100 |
commit | be16d63b7ef2dbd87d8f9347416fbc284b80a232 (patch) | |
tree | 9fa06842eeb38b8c8527e264393f62328a8e7360 /src | |
parent | e1737f0f72e971b63876de52130a458452a4de90 (diff) |
Scripts/Movement: De-optional followPathBackwardsFromEndToStart in WaypointMovementGenerator
(cherry picked from commit 70d0eaf4f82af5c5477971292df55f8a3e01dabb)
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.cpp | 4 | ||||
-rwxr-xr-x | src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.h | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.cpp index bd5e6cbe996..f1b118ca8f2 100644 --- a/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.cpp +++ b/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.cpp @@ -287,7 +287,7 @@ void WaypointMovementGenerator<Creature>::OnArrived(Creature* owner) _nextMoveTime.Reset(waypoint.Delay); } - if (_waitTimeRangeAtPathEnd && _followPathBackwardsFromEndToStart && *_followPathBackwardsFromEndToStart + if (_waitTimeRangeAtPathEnd && _followPathBackwardsFromEndToStart && ((_isReturningToStart && _currentNode == 0) || (!_isReturningToStart && _currentNode == _path->Nodes.size() - 1))) { owner->ClearUnitState(UNIT_STATE_ROAMING_MOVE); @@ -435,7 +435,7 @@ bool WaypointMovementGenerator<Creature>::ComputeNextNode() if ((_currentNode == _path->Nodes.size() - 1) && !_repeating) return false; - if (!_followPathBackwardsFromEndToStart.value_or(false) || _path->Nodes.size() < WAYPOINT_PATH_FLAG_FOLLOW_PATH_BACKWARDS_MINIMUM_NODES) + if (!_followPathBackwardsFromEndToStart || _path->Nodes.size() < WAYPOINT_PATH_FLAG_FOLLOW_PATH_BACKWARDS_MINIMUM_NODES) _currentNode = (_currentNode + 1) % _path->Nodes.size(); else { diff --git a/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.h b/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.h index 6474e9df85e..3764a9629f0 100755 --- a/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.h +++ b/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.h @@ -85,7 +85,7 @@ class WaypointMovementGenerator<Creature> : public MovementGeneratorMedium<Creat MovementWalkRunSpeedSelectionMode _speedSelectionMode; Optional<std::pair<Milliseconds, Milliseconds>> _waitTimeRangeAtPathEnd; Optional<float> _wanderDistanceAtPathEnds; - Optional<bool> _followPathBackwardsFromEndToStart; + bool _followPathBackwardsFromEndToStart; bool _isReturningToStart; bool _generatePath; }; |