diff --git a/OpenSim/Framework/IClientAPI.cs b/OpenSim/Framework/IClientAPI.cs index ee7ab8713a..04ba9c69e9 100644 --- a/OpenSim/Framework/IClientAPI.cs +++ b/OpenSim/Framework/IClientAPI.cs @@ -592,7 +592,6 @@ namespace OpenSim.Framework public readonly Vector3 Velocity; public readonly Vector3 Acceleration; public readonly Vector3 AngularVelocity; - public readonly byte State; public readonly UUID AssetID; public readonly UUID OwnerID; public readonly int AttachPoint; @@ -600,7 +599,7 @@ namespace OpenSim.Framework public readonly double Priority; public SendPrimitiveTerseData(ulong regionHandle, ushort timeDilation, uint localID, Vector3 position, - Quaternion rotation, Vector3 velocity, Vector3 acceleration, Vector3 rotationalvelocity, byte state, + Quaternion rotation, Vector3 velocity, Vector3 acceleration, Vector3 rotationalvelocity, UUID assetID, UUID ownerID, int attachPoint, byte[] textureEntry, double priority) { RegionHandle = regionHandle; @@ -611,7 +610,6 @@ namespace OpenSim.Framework Velocity = velocity; Acceleration = acceleration; AngularVelocity = rotationalvelocity; - State = state; AssetID = assetID; OwnerID = ownerID; AttachPoint = attachPoint; diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs index 35ccad9221..7eb829ece5 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs @@ -4037,11 +4037,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP protected ImprovedTerseObjectUpdatePacket.ObjectDataBlock CreateImprovedTerseBlock(SendPrimitiveTerseData data) { - return CreateImprovedTerseBlock(false, data.LocalID, data.State, Vector4.Zero, data.Position, data.Velocity, + return CreateImprovedTerseBlock(false, data.LocalID, data.AttachPoint, Vector4.Zero, data.Position, data.Velocity, data.Acceleration, data.Rotation, data.AngularVelocity, data.TextureEntry); } - protected ImprovedTerseObjectUpdatePacket.ObjectDataBlock CreateImprovedTerseBlock(bool avatar, uint localID, byte state, + protected ImprovedTerseObjectUpdatePacket.ObjectDataBlock CreateImprovedTerseBlock(bool avatar, uint localID, int attachPoint, Vector4 collisionPlane, Vector3 position, Vector3 velocity, Vector3 acceleration, Quaternion rotation, Vector3 angularVelocity, byte[] textureEntry) { @@ -4053,7 +4053,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP pos += 4; // Avatar/CollisionPlane - data[pos++] = state; + data[pos++] = (byte)((attachPoint % 16) * 16 + (attachPoint / 16)); ; if (avatar) { data[pos++] = 1; diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs index f47be990a2..73d0984e6b 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs @@ -3758,14 +3758,12 @@ namespace OpenSim.Region.Framework.Scenes Vector3 lPos = OffsetPosition; - byte state = Shape.State; if (IsAttachment) { if (ParentGroup.RootPart != this) return; lPos = ParentGroup.RootPart.AttachedPos; - state = (byte)AttachmentPoint; } else { @@ -3778,7 +3776,7 @@ namespace OpenSim.Region.Framework.Scenes remoteClient.SendPrimTerseUpdate(new SendPrimitiveTerseData(m_regionHandle, m_parentGroup.GetTimeDilation(), LocalId, lPos, RotationOffset, Velocity, Acceleration, - AngularVelocity, state, FromItemID, + AngularVelocity, FromItemID, OwnerID, (int)AttachmentPoint, null, ParentGroup.GetUpdatePriority(remoteClient))); }