aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/ClientStack/ClientView.cs14
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneObjectPart.cs4
-rw-r--r--OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs2
3 files changed, 11 insertions, 9 deletions
diff --git a/OpenSim/Region/ClientStack/ClientView.cs b/OpenSim/Region/ClientStack/ClientView.cs
index f11ac56..58d425d 100644
--- a/OpenSim/Region/ClientStack/ClientView.cs
+++ b/OpenSim/Region/ClientStack/ClientView.cs
@@ -1898,7 +1898,7 @@ namespace OpenSim.Region.ClientStack
1898 /// <param name="position"></param> 1898 /// <param name="position"></param>
1899 /// <param name="rotation"></param> 1899 /// <param name="rotation"></param>
1900 public void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID, LLVector3 position, 1900 public void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID, LLVector3 position,
1901 LLQuaternion rotation) 1901 LLQuaternion rotation, byte state)
1902 { 1902 {
1903 LLVector3 velocity = new LLVector3(0f, 0f, 0f); 1903 LLVector3 velocity = new LLVector3(0f, 0f, 0f);
1904 LLVector3 rotationalvelocity = new LLVector3(0f, 0f, 0f); 1904 LLVector3 rotationalvelocity = new LLVector3(0f, 0f, 0f);
@@ -1907,7 +1907,7 @@ namespace OpenSim.Region.ClientStack
1907 terse.RegionData.RegionHandle = regionHandle; 1907 terse.RegionData.RegionHandle = regionHandle;
1908 terse.RegionData.TimeDilation = timeDilation; 1908 terse.RegionData.TimeDilation = timeDilation;
1909 terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1]; 1909 terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1];
1910 terse.ObjectData[0] = CreatePrimImprovedBlock(localID, position, rotation, velocity, rotationalvelocity); 1910 terse.ObjectData[0] = CreatePrimImprovedBlock(localID, position, rotation, velocity, rotationalvelocity, state);
1911 terse.Header.Reliable = false; 1911 terse.Header.Reliable = false;
1912 OutPacket(terse, ThrottleOutPacketType.Task); 1912 OutPacket(terse, ThrottleOutPacketType.Task);
1913 } 1913 }
@@ -1920,7 +1920,7 @@ namespace OpenSim.Region.ClientStack
1920 terse.RegionData.RegionHandle = regionHandle; 1920 terse.RegionData.RegionHandle = regionHandle;
1921 terse.RegionData.TimeDilation = timeDilation; 1921 terse.RegionData.TimeDilation = timeDilation;
1922 terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1]; 1922 terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1];
1923 terse.ObjectData[0] = CreatePrimImprovedBlock(localID, position, rotation, velocity, rotationalvelocity); 1923 terse.ObjectData[0] = CreatePrimImprovedBlock(localID, position, rotation, velocity, rotationalvelocity, 0);
1924 terse.Header.Reliable = false; 1924 terse.Header.Reliable = false;
1925 OutPacket(terse, ThrottleOutPacketType.Task); 1925 OutPacket(terse, ThrottleOutPacketType.Task);
1926 } 1926 }
@@ -2027,7 +2027,8 @@ namespace OpenSim.Region.ClientStack
2027 LLVector3 position, 2027 LLVector3 position,
2028 LLQuaternion rotation, 2028 LLQuaternion rotation,
2029 LLVector3 velocity, 2029 LLVector3 velocity,
2030 LLVector3 rotationalvelocity) 2030 LLVector3 rotationalvelocity,
2031 byte state)
2031 { 2032 {
2032 uint ID = localID; 2033 uint ID = localID;
2033 byte[] bytes = new byte[60]; 2034 byte[] bytes = new byte[60];
@@ -2039,7 +2040,7 @@ namespace OpenSim.Region.ClientStack
2039 bytes[i++] = (byte)((ID >> 8) % 256); 2040 bytes[i++] = (byte)((ID >> 8) % 256);
2040 bytes[i++] = (byte)((ID >> 16) % 256); 2041 bytes[i++] = (byte)((ID >> 16) % 256);
2041 bytes[i++] = (byte)((ID >> 24) % 256); 2042 bytes[i++] = (byte)((ID >> 24) % 256);
2042 bytes[i++] = 0; 2043 bytes[i++] = state;
2043 bytes[i++] = 0; 2044 bytes[i++] = 0;
2044 2045
2045 byte[] pb = position.GetBytes(); 2046 byte[] pb = position.GetBytes();
@@ -2125,7 +2126,8 @@ namespace OpenSim.Region.ClientStack
2125 SetDefaultPrimPacketValues(objupdate); 2126 SetDefaultPrimPacketValues(objupdate);
2126 objupdate.UpdateFlags = flags; 2127 objupdate.UpdateFlags = flags;
2127 SetPrimPacketShapeData(objupdate, primShape); 2128 SetPrimPacketShapeData(objupdate, primShape);
2128 if ((primShape.PCode == 111) || (primShape.PCode == 255)) 2129 // if ((primShape.PCode == 111) || (primShape.PCode == 255))
2130 if ((primShape.PCode == (byte)PCode.NewTree) || (primShape.PCode == (byte)PCode.Tree) || (primShape.PCode == (byte)PCode.Grass))
2129 { 2131 {
2130 objupdate.Data = new byte[1]; 2132 objupdate.Data = new byte[1];
2131 objupdate.Data[0] = primShape.State; 2133 objupdate.Data[0] = primShape.State;
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
index 6ed63be..f20a638 100644
--- a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
@@ -1814,7 +1814,7 @@ namespace OpenSim.Region.Environment.Scenes
1814 LLQuaternion mRot = RotationOffset; 1814 LLQuaternion mRot = RotationOffset;
1815 if ((ObjectFlags & (uint) LLObject.ObjectFlags.Physics) == 0) 1815 if ((ObjectFlags & (uint) LLObject.ObjectFlags.Physics) == 0)
1816 { 1816 {
1817 remoteClient.SendPrimTerseUpdate(m_regionHandle, (ushort)(m_parentGroup.GetTimeDilation() * (float)ushort.MaxValue), LocalId, lPos, mRot); 1817 remoteClient.SendPrimTerseUpdate(m_regionHandle, (ushort)(m_parentGroup.GetTimeDilation() * (float)ushort.MaxValue), LocalId, lPos, mRot, Shape.State);
1818 } 1818 }
1819 else 1819 else
1820 { 1820 {
@@ -1829,7 +1829,7 @@ namespace OpenSim.Region.Environment.Scenes
1829 LLQuaternion mRot = RotationOffset; 1829 LLQuaternion mRot = RotationOffset;
1830 if ((ObjectFlags & (uint) LLObject.ObjectFlags.Physics) == 0) 1830 if ((ObjectFlags & (uint) LLObject.ObjectFlags.Physics) == 0)
1831 { 1831 {
1832 remoteClient.SendPrimTerseUpdate(m_regionHandle, (ushort)(m_parentGroup.GetTimeDilation() * (float)ushort.MaxValue), LocalId, lPos, mRot); 1832 remoteClient.SendPrimTerseUpdate(m_regionHandle, (ushort)(m_parentGroup.GetTimeDilation() * (float)ushort.MaxValue), LocalId, lPos, mRot, Shape.State);
1833 } 1833 }
1834 else 1834 else
1835 { 1835 {
diff --git a/OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs b/OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs
index 68fea97..82ff3cc 100644
--- a/OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs
+++ b/OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs
@@ -357,7 +357,7 @@ namespace SimpleApp
357 { 357 {
358 } 358 }
359 public virtual void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID, 359 public virtual void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID,
360 LLVector3 position, LLQuaternion rotation) 360 LLVector3 position, LLQuaternion rotation, byte state)
361 { 361 {
362 } 362 }
363 363