aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorzengwf <darkerone@sina.com>2014-02-15 11:52:49 +0800
committerzengwf <darkerone@sina.com>2014-02-18 20:46:27 +0800
commit6fac5dd859491b40a4638f970fb296227157161a (patch)
treec010324ae713b9a764ec8bb11fc81bd657d91e34 /src
parentcb237a4bc2775a1fdd726faa99ef4ae97dea2bd8 (diff)
Core/Movement:Fix waypointed creature aggro
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/game/Movement/MovementGenerators/WaypointMovementGenerator.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.cpp
index c181750a414..29ea82de5bc 100755
--- a/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.cpp
+++ b/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.cpp
@@ -191,6 +191,10 @@ bool WaypointMovementGenerator<Creature>::DoUpdate(Creature* creature, uint32 di
}
else
{
+ // Set home position at place on waypoint movement.
+ if (!creature->HasUnitMovementFlag(MOVEMENTFLAG_ONTRANSPORT) || !creature->GetTransGUID())
+ creature->SetHomePosition(creature->GetPositionX(), creature->GetPositionY(), creature->GetPositionZ(), creature->GetOrientation());
+
if (creature->IsStopped())
Stop(STOP_TIME_FOR_PLAYER);
else if (creature->movespline->Finalized())