aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Movement/MotionMaster.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Movement/MotionMaster.cpp')
-rw-r--r--src/server/game/Movement/MotionMaster.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/server/game/Movement/MotionMaster.cpp b/src/server/game/Movement/MotionMaster.cpp
index 5c20494bfcc..46a4c806067 100644
--- a/src/server/game/Movement/MotionMaster.cpp
+++ b/src/server/game/Movement/MotionMaster.cpp
@@ -440,9 +440,17 @@ MotionMaster::MoveTaxiFlight(uint32 path, uint32 pathnode)
{
if (i_owner->GetTypeId() == TYPEID_PLAYER)
{
- DEBUG_LOG("Player (GUID: %u) taxi to (Path %u node %u)", i_owner->GetGUIDLow(), path, pathnode);
- FlightPathMovementGenerator* mgen = new FlightPathMovementGenerator(path,pathnode);
- Mutate(mgen, MOTION_SLOT_CONTROLLED);
+ if (path < sTaxiPathNodesByPath.size())
+ {
+ DEBUG_LOG("%s taxi to (Path %u node %u)", i_owner->GetName(), path, pathnode);
+ FlightPathMovementGenerator* mgen = new FlightPathMovementGenerator(sTaxiPathNodesByPath[path],pathnode);
+ Mutate(mgen, MOTION_SLOT_CONTROLLED);
+ }
+ else
+ {
+ sLog.outError("%s attempt taxi to (not existed Path %u node %u)",
+ i_owner->GetName(), path, pathnode);
+ }
}
else
{