aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authormegamage <none@none>2009-06-18 20:53:32 -0500
committermegamage <none@none>2009-06-18 20:53:32 -0500
commite5d56a23d4c19335f6317f5069825854ec853bd4 (patch)
tree8a0216a8915387811a626efe1935e1f992935278 /src
parent8397da15e52009279bfe456dda4d95bf2ef28300 (diff)
*Fix the bug that player turn is not updated in server side.
--HG-- branch : trunk
Diffstat (limited to 'src')
-rw-r--r--src/game/Player.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/game/Player.cpp b/src/game/Player.cpp
index 09468436aa9..4f931a24aad 100644
--- a/src/game/Player.cpp
+++ b/src/game/Player.cpp
@@ -5646,10 +5646,12 @@ bool Player::SetPosition(float x, float y, float z, float orientation, bool tele
// mover->RemoveAurasWithInterruptFlags(AURA_INTERRUPT_FLAG_TURNING);
//AURA_INTERRUPT_FLAG_JUMP not sure
- if(GetOrientation() != orientation)
+ bool turn = (GetOrientation() != orientation);
+ bool move2d = (teleport || GetPositionX() != x || GetPositionY() != y);
+
+ if(turn)
RemoveAurasWithInterruptFlags(AURA_INTERRUPT_FLAG_TURNING);
- bool move2d = (teleport || GetPositionX() != x || GetPositionY() != y);
if(move2d || GetPositionZ() != z)
{
RemoveAurasWithInterruptFlags(AURA_INTERRUPT_FLAG_MOVE);
@@ -5669,6 +5671,10 @@ bool Player::SetPosition(float x, float y, float z, float orientation, bool tele
CheckExploreSystem();
}
+ else if(turn)
+ {
+ SetOrientation(orientation);
+ }
return true;
}