aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Movement
diff options
context:
space:
mode:
authormik1893 <michele.roscelli@gmail.com>2015-07-15 18:43:19 +0200
committermik1893 <michele.roscelli@gmail.com>2015-07-15 18:43:19 +0200
commit90fcfb3f2d71e15d162cb52b915b53a11bc42212 (patch)
tree2958e0ce9236b0f9041193c58359253baff2545d /src/server/game/Movement
parent35f0d8e9c1e89c3095c82e0dd89d9f8f08f288a3 (diff)
parent1e0213bc57922719d4f7e8897cb7e8871c138fdc (diff)
Merge pull request #14974 from pete318/stealth_work
Stealth changes (Player stealthed vs NPCs) - 3.3.5
Diffstat (limited to 'src/server/game/Movement')
-rwxr-xr-xsrc/server/game/Movement/MovementGenerators/IdleMovementGenerator.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/server/game/Movement/MovementGenerators/IdleMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/IdleMovementGenerator.cpp
index 78d86fb7abb..2aaaa719e94 100755
--- a/src/server/game/Movement/MovementGenerators/IdleMovementGenerator.cpp
+++ b/src/server/game/Movement/MovementGenerators/IdleMovementGenerator.cpp
@@ -81,12 +81,23 @@ void RotateMovementGenerator::Finalize(Unit* unit)
void DistractMovementGenerator::Initialize(Unit* owner)
{
+ // Distracted creatures stand up if not standing
+ if (!owner->IsStandState())
+ owner->SetStandState(UNIT_STAND_STATE_STAND);
+
owner->AddUnitState(UNIT_STATE_DISTRACTED);
}
void DistractMovementGenerator::Finalize(Unit* owner)
{
owner->ClearUnitState(UNIT_STATE_DISTRACTED);
+
+ // If this is a creature, then return orientation to original position (for idle movement creatures)
+ if (owner->GetTypeId() == TYPEID_UNIT && owner->ToCreature())
+ {
+ float angle = owner->ToCreature()->GetHomePosition().GetOrientation();
+ owner->SetFacingTo(angle);
+ }
}
bool DistractMovementGenerator::Update(Unit* /*owner*/, uint32 time_diff)