aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack
diff options
context:
space:
mode:
authorJustin Clarke Casey2008-10-14 20:28:34 +0000
committerJustin Clarke Casey2008-10-14 20:28:34 +0000
commitb70a28537350908e8cbf5fe254315fa760a2ee4e (patch)
tree56cf427a81232a406a86dcf8086bae3485b9075a /OpenSim/Region/ClientStack
parentmove from index based to exists strategy here (diff)
downloadopensim-SC_OLD-b70a28537350908e8cbf5fe254315fa760a2ee4e.zip
opensim-SC_OLD-b70a28537350908e8cbf5fe254315fa760a2ee4e.tar.gz
opensim-SC_OLD-b70a28537350908e8cbf5fe254315fa760a2ee4e.tar.bz2
opensim-SC_OLD-b70a28537350908e8cbf5fe254315fa760a2ee4e.tar.xz
* Send an avatar update to other clients when an avatar rotates, as well as when it moves
* This should fix a long standing issue where you often wouldn't see other people simply turn around without moving at all * Arguably lastPhysRot (to mirror lastPhysPos) is not a good name, may change variable names later
Diffstat (limited to 'OpenSim/Region/ClientStack')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs5
1 files changed, 4 insertions, 1 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index 476b3d5..6a011b4 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -2339,7 +2339,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2339 } 2339 }
2340 2340
2341 /// <summary> 2341 /// <summary>
2342 /// 2342 /// Send a terse positional/rotation/velocity update about an avatar to the client. This avatar can be that of
2343 /// the client itself.
2343 /// </summary> 2344 /// </summary>
2344 /// <param name="regionHandle"></param> 2345 /// <param name="regionHandle"></param>
2345 /// <param name="timeDilation"></param> 2346 /// <param name="timeDilation"></param>
@@ -2352,6 +2353,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2352 if (rotation.X == rotation.Y && rotation.Y == rotation.Z && rotation.Z == rotation.W && rotation.W == 0) 2353 if (rotation.X == rotation.Y && rotation.Y == rotation.Z && rotation.Z == rotation.W && rotation.W == 0)
2353 rotation = Quaternion.Identity; 2354 rotation = Quaternion.Identity;
2354 2355
2356 //m_log.DebugFormat("[CLIENT]: Sending rotation {0} for {1} to {2}", rotation, localID, Name);
2357
2355 ImprovedTerseObjectUpdatePacket.ObjectDataBlock terseBlock = 2358 ImprovedTerseObjectUpdatePacket.ObjectDataBlock terseBlock =
2356 CreateAvatarImprovedBlock(localID, position, velocity, rotation); 2359 CreateAvatarImprovedBlock(localID, position, velocity, rotation);
2357 ImprovedTerseObjectUpdatePacket terse = (ImprovedTerseObjectUpdatePacket)PacketPool.Instance.GetPacket(PacketType.ImprovedTerseObjectUpdate); 2360 ImprovedTerseObjectUpdatePacket terse = (ImprovedTerseObjectUpdatePacket)PacketPool.Instance.GetPacket(PacketType.ImprovedTerseObjectUpdate);