aboutsummaryrefslogtreecommitdiff
path: root/src/game/WaypointMovementGenerator.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/WaypointMovementGenerator.cpp')
-rw-r--r--src/game/WaypointMovementGenerator.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/game/WaypointMovementGenerator.cpp b/src/game/WaypointMovementGenerator.cpp
index 85ef44b51be..67c56d763bc 100644
--- a/src/game/WaypointMovementGenerator.cpp
+++ b/src/game/WaypointMovementGenerator.cpp
@@ -36,11 +36,17 @@ void
WaypointMovementGenerator<Creature>::Initialize(Creature &u)
{
u.StopMoving();
- i_nextMoveTime.Reset(0);
- i_currentNode = -1;
if(!path_id)
path_id = u.GetWaypointPath();
- waypoints = WaypointMgr.GetPath(path_id);
+ waypoints = WaypointMgr.GetPath(path_id);
+ if(waypoints && waypoints->size())
+ {
+ Traveller<Creature> traveller(unit);
+ node = *(waypoints->at(i_currentNode));
+ InitTraveller(u,node);
+ i_destinationHolder.SetDestination(traveller, node.x, node.y, node.z);
+ i_nextMoveTime.Reset(i_destinationHolder.GetTotalTravelTime());
+ }
}
template<>