From 390001fa624ef996d2ae5331e201f9e2d640211b Mon Sep 17 00:00:00 2001 From: Treeston Date: Thu, 13 Sep 2018 23:04:08 +0200 Subject: Movement/TaxiPath: Properly clean up list of taxi destinations upon arrival at final node. Closes #22089. (cherry picked from commit a3697052c3860b9bd5524b932fbda9c8690e9e72) --- src/server/game/Entities/Player/PlayerTaxi.cpp | 2 ++ .../game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) 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 -- cgit v1.2.3