aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/LindenUDP
diff options
context:
space:
mode:
authorMW2008-07-23 11:07:59 +0000
committerMW2008-07-23 11:07:59 +0000
commit9b51bb545ecf07ad1b1b8188d62d4b4a03bc3fff (patch)
treeb92da6a4195eb7948d0ab5b255b6479388244e8b /OpenSim/Region/ClientStack/LindenUDP
parentThe new secure inventory server mode (in r5590) can now be disabled from Open... (diff)
downloadopensim-SC-9b51bb545ecf07ad1b1b8188d62d4b4a03bc3fff.zip
opensim-SC-9b51bb545ecf07ad1b1b8188d62d4b4a03bc3fff.tar.gz
opensim-SC-9b51bb545ecf07ad1b1b8188d62d4b4a03bc3fff.tar.bz2
opensim-SC-9b51bb545ecf07ad1b1b8188d62d4b4a03bc3fff.tar.xz
Changed it so the avatar's rotation is now sent as part of a full avatar update.
This should fix the wrong rotation on existing sitting avatar when logging in bug.
Diffstat (limited to 'OpenSim/Region/ClientStack/LindenUDP')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs7
1 files changed, 6 insertions, 1 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index 41ac657..3fa26e4 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -2132,7 +2132,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2132 /// <param name="avatarLocalID"></param> 2132 /// <param name="avatarLocalID"></param>
2133 /// <param name="Pos"></param> 2133 /// <param name="Pos"></param>
2134 public void SendAvatarData(ulong regionHandle, string firstName, string lastName, LLUUID avatarID, 2134 public void SendAvatarData(ulong regionHandle, string firstName, string lastName, LLUUID avatarID,
2135 uint avatarLocalID, LLVector3 Pos, byte[] textureEntry, uint parentID) 2135 uint avatarLocalID, LLVector3 Pos, byte[] textureEntry, uint parentID, LLQuaternion rotation)
2136 { 2136 {
2137 ObjectUpdatePacket objupdate = (ObjectUpdatePacket)PacketPool.Instance.GetPacket(PacketType.ObjectUpdate); 2137 ObjectUpdatePacket objupdate = (ObjectUpdatePacket)PacketPool.Instance.GetPacket(PacketType.ObjectUpdate);
2138 // TODO: don't create new blocks if recycling an old packet 2138 // TODO: don't create new blocks if recycling an old packet
@@ -2147,9 +2147,14 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2147 objupdate.ObjectData[0].ParentID = parentID; 2147 objupdate.ObjectData[0].ParentID = parentID;
2148 objupdate.ObjectData[0].NameValue = 2148 objupdate.ObjectData[0].NameValue =
2149 Helpers.StringToField("FirstName STRING RW SV " + firstName + "\nLastName STRING RW SV " + lastName); 2149 Helpers.StringToField("FirstName STRING RW SV " + firstName + "\nLastName STRING RW SV " + lastName);
2150
2150 LLVector3 pos2 = new LLVector3((float)Pos.X, (float)Pos.Y, (float)Pos.Z); 2151 LLVector3 pos2 = new LLVector3((float)Pos.X, (float)Pos.Y, (float)Pos.Z);
2151 byte[] pb = pos2.GetBytes(); 2152 byte[] pb = pos2.GetBytes();
2152 Array.Copy(pb, 0, objupdate.ObjectData[0].ObjectData, 16, pb.Length); 2153 Array.Copy(pb, 0, objupdate.ObjectData[0].ObjectData, 16, pb.Length);
2154
2155 byte[] rot = rotation.GetBytes();
2156 Array.Copy(rot, 0, objupdate.ObjectData[0].ObjectData, 52, rot.Length);
2157
2153 objupdate.Header.Zerocoded = true; 2158 objupdate.Header.Zerocoded = true;
2154 OutPacket(objupdate, ThrottleOutPacketType.Task); 2159 OutPacket(objupdate, ThrottleOutPacketType.Task);
2155 } 2160 }