aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTreeston <treeston.mmoc@gmail.com>2018-09-13 23:04:08 +0200
committerTreeston <treeston.mmoc@gmail.com>2018-09-13 23:04:08 +0200
commita3697052c3860b9bd5524b932fbda9c8690e9e72 (patch)
treeae94e08579a2c63326e6a65681322954bb776234 /src
parente4d38fd7075144a937156fe202e715333a2fa8bb (diff)
Movement/TaxiPath: Properly clean up list of taxi destinations upon arrival at final node. Closes #22089.
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 94f780eaf46..e867b936d1a 100644
--- a/src/server/game/Entities/Player/PlayerTaxi.cpp
+++ b/src/server/game/Entities/Player/PlayerTaxi.cpp
@@ -131,6 +131,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 85a1159a6b7..2bae6b07aec 100644
--- a/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp
+++ b/src/server/game/Movement/MovementGenerators/FlightPathMovementGenerator.cpp
@@ -140,6 +140,7 @@ void FlightPathMovementGenerator::DoFinalize(Player* owner, bool active, bool/*
if (!active)
return;
+ owner->m_taxi.ClearTaxiDestinations();
owner->Dismount();
owner->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_REMOVE_CLIENT_CONTROL | UNIT_FLAG_TAXI_FLIGHT);
@@ -262,7 +263,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