diff options
author | Tom Grimshaw | 2010-06-12 04:36:14 -0700 |
---|---|---|
committer | Tom Grimshaw | 2010-06-12 04:36:14 -0700 |
commit | 63531b1df5463d43821c91a26bd0f6414716d0d0 (patch) | |
tree | 381fddf86dbe4880b6e5114f3db8737fc9ecb53a /OpenSim/Region/Framework/Scenes | |
parent | Get rid of spamming SOG debug message (diff) | |
parent | Preserving the link numbers is a serializer's highest duty. (diff) | |
download | opensim-SC_OLD-63531b1df5463d43821c91a26bd0f6414716d0d0.zip opensim-SC_OLD-63531b1df5463d43821c91a26bd0f6414716d0d0.tar.gz opensim-SC_OLD-63531b1df5463d43821c91a26bd0f6414716d0d0.tar.bz2 opensim-SC_OLD-63531b1df5463d43821c91a26bd0f6414716d0d0.tar.xz |
Merge branch 'careminster-presence-refactor' of ssh://3dhosting.de/var/git/careminster into careminster-presence-refactor
Diffstat (limited to 'OpenSim/Region/Framework/Scenes')
3 files changed, 11 insertions, 22 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs index c4cff12..c3cdca8 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs | |||
@@ -681,7 +681,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
681 | foreach (TaskInventoryItem item in items) | 681 | foreach (TaskInventoryItem item in items) |
682 | { | 682 | { |
683 | m_items.Add(item.ItemID, item); | 683 | m_items.Add(item.ItemID, item); |
684 | m_part.TriggerScriptChangedEvent(Changed.INVENTORY); | 684 | // m_part.TriggerScriptChangedEvent(Changed.INVENTORY); |
685 | } | 685 | } |
686 | m_items.LockItemsForWrite(false); | 686 | m_items.LockItemsForWrite(false); |
687 | 687 | ||
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 8cd3ac6..b6f67f7 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -1098,27 +1098,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
1098 | 1098 | ||
1099 | public void StopFlying() | 1099 | public void StopFlying() |
1100 | { | 1100 | { |
1101 | // It turns out to get the agent to stop flying, you have to feed it stop flying velocities | 1101 | ControllingClient.StopFlying(this); |
1102 | // There's no explicit message to send the client to tell it to stop flying.. it relies on the | ||
1103 | // velocity, collision plane and avatar height | ||
1104 | |||
1105 | // Add 1/6 the avatar's height to it's position so it doesn't shoot into the air | ||
1106 | // when the avatar stands up | ||
1107 | |||
1108 | if (m_avHeight != 127.0f) | ||
1109 | { | ||
1110 | AbsolutePosition = AbsolutePosition + new Vector3(0f, 0f, (m_avHeight / 6f)); | ||
1111 | } | ||
1112 | else | ||
1113 | { | ||
1114 | AbsolutePosition = AbsolutePosition + new Vector3(0f, 0f, (1.56f / 6f)); | ||
1115 | } | ||
1116 | |||
1117 | m_updateCount = UPDATE_COUNT; //KF: Trigger Anim updates to catch falling anim. | ||
1118 | |||
1119 | ControllingClient.SendPrimUpdate(this, PrimUpdateFlags.Position); | ||
1120 | //ControllingClient.SendAvatarTerseUpdate(new SendAvatarTerseData(m_rootRegionHandle, (ushort)(m_scene.TimeDilation * ushort.MaxValue), LocalId, | ||
1121 | // AbsolutePosition, Velocity, Vector3.Zero, m_bodyRot, new Vector4(0,0,1,AbsolutePosition.Z - 0.5f), m_uuid, null, GetUpdatePriority(ControllingClient))); | ||
1122 | } | 1102 | } |
1123 | 1103 | ||
1124 | public void AddNeighbourRegion(ulong regionHandle, string cap) | 1104 | public void AddNeighbourRegion(ulong regionHandle, string cap) |
diff --git a/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs b/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs index f7544ac..5bdaa17 100644 --- a/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs +++ b/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs | |||
@@ -221,7 +221,16 @@ namespace OpenSim.Region.Framework.Scenes.Serialization | |||
221 | sr = new StringReader(parts[i].OuterXml); | 221 | sr = new StringReader(parts[i].OuterXml); |
222 | reader = new XmlTextReader(sr); | 222 | reader = new XmlTextReader(sr); |
223 | SceneObjectPart part = SceneObjectPart.FromXml(reader); | 223 | SceneObjectPart part = SceneObjectPart.FromXml(reader); |
224 | |||
225 | int originalLinkNum = part.LinkNum; | ||
226 | |||
224 | sceneObject.AddPart(part); | 227 | sceneObject.AddPart(part); |
228 | |||
229 | // SceneObjectGroup.AddPart() tries to be smart and automatically set the LinkNum. | ||
230 | // We override that here | ||
231 | if (originalLinkNum != 0) | ||
232 | part.LinkNum = originalLinkNum; | ||
233 | |||
225 | part.StoreUndoState(); | 234 | part.StoreUndoState(); |
226 | reader.Close(); | 235 | reader.Close(); |
227 | sr.Close(); | 236 | sr.Close(); |