aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTreeston <treeston.mmoc@gmail.com>2018-09-13 23:04:08 +0200
committerShauren <shauren.trinity@gmail.com>2021-10-31 01:39:10 +0200
commit390001fa624ef996d2ae5331e201f9e2d640211b (patch)
tree6ab7ada29c2fc9b6d07c1341617d09c540dfee5b /src
parent8866065117a406f3bf3317815444fc2f4edc8a8b (diff)
Movement/TaxiPath: Properly clean up list of taxi destinations upon arrival at final node. Closes #22089.
(cherry picked from commit a3697052c3860b9bd5524b932fbda9c8690e9e72)
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Player/PlayerTaxi.cpp2
-rw-r--r--src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp3
2 files changed, 4 insertions, 1 deletions
diff --git a/src/server/game/Entities/Player/PlayerTaxi.cpp b/src/server/game/Entities/Player/PlayerTaxi.cpp
index e7f7a803978..7bd13b6c759 100644
--- a/src/server/game/Entities/Player/PlayerTaxi.cpp
+++ b/src/server/game/Entities/Player/PlayerTaxi.cpp
@@ -165,6 +165,8 @@ std::string PlayerTaxi::SaveTaxiDestinationsToString()
if (m_TaxiDestinations.empty())
return "";
+ ASSERT(m_TaxiDestinations.size() >= 2);
+
std::ostringstream ss;
ss << m_flightMasterFactionId << ' ';
diff --git a/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp
index 00dc385884b..72325844336 100644
--- a/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp
+++ b/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp
@@ -143,6 +143,7 @@ void FlightPathMovementGenerator::DoFinalize(Player* owner, bool active, bool/*
if (!active)
return;
+ owner->m_taxi.ClearTaxiDestinations();
owner->Dismount();
owner->RemoveUnitFlag(UnitFlags(UNIT_FLAG_REMOVE_CLIENT_CONTROL | UNIT_FLAG_TAXI_FLIGHT));
@@ -267,7 +268,7 @@ void FlightPathMovementGenerator::PreloadEndGrid()
// Load the grid
if (endMap)
{
- TC_LOG_DEBUG("movement.flightpath", "FlightPathMovementGenerator::PreloadEndGrid: preloading rid (%f, %f) for map %u at node index %u/%u", _endGridX, _endGridY, _endMapId, _preloadTargetNode, uint32(_path.size() - 1));
+ TC_LOG_DEBUG("movement.flightpath", "FlightPathMovementGenerator::PreloadEndGrid: preloading grid (%f, %f) for map %u at node index %u/%u", _endGridX, _endGridY, _endMapId, _preloadTargetNode, uint32(_path.size() - 1));
endMap->LoadGrid(_endGridX, _endGridY);
}
else