diff options
Diffstat (limited to 'OpenSim/Region/Environment/Scenes')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/Scene.cs | 130 | ||||
-rw-r--r-- | OpenSim/Region/Environment/Scenes/ScenePresence.cs | 120 |
2 files changed, 124 insertions, 126 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index 1204020..6984d8f 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs | |||
@@ -227,6 +227,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
227 | get { return m_innerScene.RestorePresences; } | 227 | get { return m_innerScene.RestorePresences; } |
228 | set { m_innerScene.RestorePresences = value; } | 228 | set { m_innerScene.RestorePresences = value; } |
229 | } | 229 | } |
230 | |||
230 | #endregion | 231 | #endregion |
231 | 232 | ||
232 | #region Constructors | 233 | #region Constructors |
@@ -395,15 +396,15 @@ namespace OpenSim.Region.Environment.Scenes | |||
395 | try | 396 | try |
396 | { | 397 | { |
397 | ForEachScenePresence(delegate(ScenePresence agent) | 398 | ForEachScenePresence(delegate(ScenePresence agent) |
399 | { | ||
400 | // If agent is a root agent. | ||
401 | if (!agent.IsChildAgent) | ||
398 | { | 402 | { |
399 | // If agent is a root agent. | 403 | //agent.ControllingClient.new |
400 | if (!agent.IsChildAgent) | 404 | //this.CommsManager.InterRegion.InformRegionOfChildAgent(otherRegion.RegionHandle, agent.ControllingClient.RequestClientInfo()); |
401 | { | 405 | InformClientOfNeighbor(agent, otherRegion); |
402 | //agent.ControllingClient.new | ||
403 | //this.CommsManager.InterRegion.InformRegionOfChildAgent(otherRegion.RegionHandle, agent.ControllingClient.RequestClientInfo()); | ||
404 | InformClientOfNeighbor(agent, otherRegion); | ||
405 | } | ||
406 | } | 406 | } |
407 | } | ||
407 | ); | 408 | ); |
408 | } | 409 | } |
409 | catch (NullReferenceException) | 410 | catch (NullReferenceException) |
@@ -463,7 +464,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
463 | { | 464 | { |
464 | if (m_RestartTimerCounter == 4 || m_RestartTimerCounter == 6 || m_RestartTimerCounter == 7) | 465 | if (m_RestartTimerCounter == 4 || m_RestartTimerCounter == 6 || m_RestartTimerCounter == 7) |
465 | SendRegionMessageFromEstateTools(LLUUID.Random(), LLUUID.Random(), String.Empty, RegionInfo.RegionName + ": Restarting in " + | 466 | SendRegionMessageFromEstateTools(LLUUID.Random(), LLUUID.Random(), String.Empty, RegionInfo.RegionName + ": Restarting in " + |
466 | ((8 - m_RestartTimerCounter) * 15) + " seconds"); | 467 | ((8 - m_RestartTimerCounter) * 15) + " seconds"); |
467 | 468 | ||
468 | // SendGeneralAlert(RegionInfo.RegionName + ": Restarting in " + ((8 - m_RestartTimerCounter)*15) + | 469 | // SendGeneralAlert(RegionInfo.RegionName + ": Restarting in " + ((8 - m_RestartTimerCounter)*15) + |
469 | //" seconds"); | 470 | //" seconds"); |
@@ -505,15 +506,15 @@ namespace OpenSim.Region.Environment.Scenes | |||
505 | try | 506 | try |
506 | { | 507 | { |
507 | ForEachScenePresence(delegate(ScenePresence agent) | 508 | ForEachScenePresence(delegate(ScenePresence agent) |
509 | { | ||
510 | // If agent is a root agent. | ||
511 | if (!agent.IsChildAgent) | ||
508 | { | 512 | { |
509 | // If agent is a root agent. | 513 | //agent.ControllingClient.new |
510 | if (!agent.IsChildAgent) | 514 | //this.CommsManager.InterRegion.InformRegionOfChildAgent(otherRegion.RegionHandle, agent.ControllingClient.RequestClientInfo()); |
511 | { | 515 | InformClientOfNeighbor(agent, region); |
512 | //agent.ControllingClient.new | ||
513 | //this.CommsManager.InterRegion.InformRegionOfChildAgent(otherRegion.RegionHandle, agent.ControllingClient.RequestClientInfo()); | ||
514 | InformClientOfNeighbor(agent, region); | ||
515 | } | ||
516 | } | 516 | } |
517 | } | ||
517 | ); | 518 | ); |
518 | } | 519 | } |
519 | catch (NullReferenceException) | 520 | catch (NullReferenceException) |
@@ -580,16 +581,16 @@ namespace OpenSim.Region.Environment.Scenes | |||
580 | m_log.Warn("[SCENE]: Closing down the single simulator: " + RegionInfo.RegionName); | 581 | m_log.Warn("[SCENE]: Closing down the single simulator: " + RegionInfo.RegionName); |
581 | // Kick all ROOT agents with the message, 'The simulator is going down' | 582 | // Kick all ROOT agents with the message, 'The simulator is going down' |
582 | ForEachScenePresence(delegate(ScenePresence avatar) | 583 | ForEachScenePresence(delegate(ScenePresence avatar) |
583 | { | 584 | { |
584 | if (avatar.KnownChildRegions.Contains(RegionInfo.RegionHandle)) | 585 | if (avatar.KnownChildRegions.Contains(RegionInfo.RegionHandle)) |
585 | avatar.KnownChildRegions.Remove(RegionInfo.RegionHandle); | 586 | avatar.KnownChildRegions.Remove(RegionInfo.RegionHandle); |
586 | 587 | ||
587 | if (!avatar.IsChildAgent) | 588 | if (!avatar.IsChildAgent) |
588 | avatar.ControllingClient.Kick("The simulator is going down."); | 589 | avatar.ControllingClient.Kick("The simulator is going down."); |
589 | 590 | ||
590 | avatar.ControllingClient.OutPacket(PacketPool.Instance.GetPacket(libsecondlife.Packets.PacketType.DisableSimulator), | 591 | avatar.ControllingClient.OutPacket(PacketPool.Instance.GetPacket(libsecondlife.Packets.PacketType.DisableSimulator), |
591 | ThrottleOutPacketType.Task); | 592 | ThrottleOutPacketType.Task); |
592 | }); | 593 | }); |
593 | 594 | ||
594 | // Wait here, or the kick messages won't actually get to the agents before the scene terminates. | 595 | // Wait here, or the kick messages won't actually get to the agents before the scene terminates. |
595 | Thread.Sleep(500); | 596 | Thread.Sleep(500); |
@@ -793,7 +794,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
793 | { | 794 | { |
794 | tmpval = tmpval - (tmpval - 1.0f); | 795 | tmpval = tmpval - (tmpval - 1.0f); |
795 | } | 796 | } |
796 | m_timedilation = tmpval; | 797 | m_timedilation = tmpval; |
797 | 798 | ||
798 | m_lastupdate = DateTime.Now; | 799 | m_lastupdate = DateTime.Now; |
799 | } | 800 | } |
@@ -884,9 +885,9 @@ namespace OpenSim.Region.Environment.Scenes | |||
884 | { | 885 | { |
885 | List<MapBlockData> mapBlocks = | 886 | List<MapBlockData> mapBlocks = |
886 | m_sceneGridService.RequestNeighbourMapBlocks((int)(RegionInfo.RegionLocX - 9), | 887 | m_sceneGridService.RequestNeighbourMapBlocks((int)(RegionInfo.RegionLocX - 9), |
887 | (int)(RegionInfo.RegionLocY - 9), | 888 | (int)(RegionInfo.RegionLocY - 9), |
888 | (int)(RegionInfo.RegionLocX + 9), | 889 | (int)(RegionInfo.RegionLocX + 9), |
889 | (int)(RegionInfo.RegionLocY + 9)); | 890 | (int)(RegionInfo.RegionLocY + 9)); |
890 | List<AssetBase> textures = new List<AssetBase>(); | 891 | List<AssetBase> textures = new List<AssetBase>(); |
891 | List<Image> bitImages = new List<Image>(); | 892 | List<Image> bitImages = new List<Image>(); |
892 | 893 | ||
@@ -1048,7 +1049,6 @@ namespace OpenSim.Region.Environment.Scenes | |||
1048 | m_log.Info("[SCENE]: Loaded " + PrimsFromDB.Count.ToString() + " SceneObject(s)"); | 1049 | m_log.Info("[SCENE]: Loaded " + PrimsFromDB.Count.ToString() + " SceneObject(s)"); |
1049 | } | 1050 | } |
1050 | 1051 | ||
1051 | |||
1052 | /// <summary> | 1052 | /// <summary> |
1053 | /// Returns a new unallocated primitive ID | 1053 | /// Returns a new unallocated primitive ID |
1054 | /// </summary> | 1054 | /// </summary> |
@@ -1134,7 +1134,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1134 | } | 1134 | } |
1135 | 1135 | ||
1136 | public SceneObjectGroup AddTree(LLVector3 scale, LLQuaternion rotation, LLVector3 position, | 1136 | public SceneObjectGroup AddTree(LLVector3 scale, LLQuaternion rotation, LLVector3 position, |
1137 | Tree treeType, bool newTree) | 1137 | Tree treeType, bool newTree) |
1138 | { | 1138 | { |
1139 | LLUUID uuid = this.RegionInfo.MasterAvatarAssignedUUID; | 1139 | LLUUID uuid = this.RegionInfo.MasterAvatarAssignedUUID; |
1140 | PrimitiveBaseShape treeShape = new PrimitiveBaseShape(); | 1140 | PrimitiveBaseShape treeShape = new PrimitiveBaseShape(); |
@@ -1228,7 +1228,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1228 | { | 1228 | { |
1229 | pos.Y = ((pos.Y - Constants.RegionSize)); | 1229 | pos.Y = ((pos.Y - Constants.RegionSize)); |
1230 | newRegionHandle = Util.UIntsToLong((uint)(thisx * Constants.RegionSize), (uint)((thisy + 1) * Constants.RegionSize)); | 1230 | newRegionHandle = Util.UIntsToLong((uint)(thisx * Constants.RegionSize), (uint)((thisy + 1) * Constants.RegionSize)); |
1231 | // y + 1 | 1231 | // y + 1 |
1232 | } | 1232 | } |
1233 | else if (position.Y < -1f) | 1233 | else if (position.Y < -1f) |
1234 | { | 1234 | { |
@@ -1269,12 +1269,14 @@ namespace OpenSim.Region.Environment.Scenes | |||
1269 | } | 1269 | } |
1270 | } | 1270 | } |
1271 | } | 1271 | } |
1272 | |||
1272 | public void IncomingInterRegionPrimGroup(ulong regionHandle, LLUUID primID, string objXMLData) | 1273 | public void IncomingInterRegionPrimGroup(ulong regionHandle, LLUUID primID, string objXMLData) |
1273 | { | 1274 | { |
1274 | m_log.Warn("{[INTERREGION]: A new prim arrived from a neighbor"); | 1275 | m_log.Warn("{[INTERREGION]: A new prim arrived from a neighbor"); |
1275 | m_sceneXmlLoader.LoadGroupFromXml2String(objXMLData); | 1276 | m_sceneXmlLoader.LoadGroupFromXml2String(objXMLData); |
1276 | 1277 | ||
1277 | } | 1278 | } |
1279 | |||
1278 | #endregion | 1280 | #endregion |
1279 | 1281 | ||
1280 | #region Add/Remove Avatar Methods | 1282 | #region Add/Remove Avatar Methods |
@@ -1301,11 +1303,11 @@ namespace OpenSim.Region.Environment.Scenes | |||
1301 | 1303 | ||
1302 | m_innerScene.AddScenePresence(presence); | 1304 | m_innerScene.AddScenePresence(presence); |
1303 | 1305 | ||
1304 | lock (m_restorePresences) | 1306 | lock (m_restorePresences) |
1305 | { | 1307 | { |
1306 | Monitor.PulseAll(m_restorePresences); | 1308 | Monitor.PulseAll(m_restorePresences); |
1307 | } | 1309 | } |
1308 | } | 1310 | } |
1309 | else | 1311 | else |
1310 | { | 1312 | { |
1311 | m_log.Info("[REGION]: Add New Scene Presence"); | 1313 | m_log.Info("[REGION]: Add New Scene Presence"); |
@@ -1382,8 +1384,8 @@ namespace OpenSim.Region.Environment.Scenes | |||
1382 | client.OnMoveInventoryItem += MoveInventoryItem; | 1384 | client.OnMoveInventoryItem += MoveInventoryItem; |
1383 | client.OnRemoveInventoryItem += RemoveInventoryItem; | 1385 | client.OnRemoveInventoryItem += RemoveInventoryItem; |
1384 | client.OnRemoveInventoryFolder += RemoveInventoryFolder; | 1386 | client.OnRemoveInventoryFolder += RemoveInventoryFolder; |
1385 | // client.OnAssetUploadRequest += CommsManager.TransactionsManager.HandleUDPUploadRequest; | 1387 | // client.OnAssetUploadRequest += CommsManager.TransactionsManager.HandleUDPUploadRequest; |
1386 | // client.OnXferReceive += CommsManager.TransactionsManager.HandleXfer; | 1388 | // client.OnXferReceive += CommsManager.TransactionsManager.HandleXfer; |
1387 | client.OnRezScript += RezScript; | 1389 | client.OnRezScript += RezScript; |
1388 | 1390 | ||
1389 | client.OnRequestTaskInventory += RequestTaskInventory; | 1391 | client.OnRequestTaskInventory += RequestTaskInventory; |
@@ -1452,8 +1454,8 @@ namespace OpenSim.Region.Environment.Scenes | |||
1452 | { | 1454 | { |
1453 | m_innerScene.removeUserCount(true); | 1455 | m_innerScene.removeUserCount(true); |
1454 | m_sceneGridService.LogOffUser(agentID, RegionInfo.RegionID, RegionInfo.RegionHandle, | 1456 | m_sceneGridService.LogOffUser(agentID, RegionInfo.RegionID, RegionInfo.RegionHandle, |
1455 | avatar.AbsolutePosition.X, avatar.AbsolutePosition.Y, | 1457 | avatar.AbsolutePosition.X, avatar.AbsolutePosition.Y, |
1456 | avatar.AbsolutePosition.Z); | 1458 | avatar.AbsolutePosition.Z); |
1457 | List<ulong> childknownRegions = new List<ulong>(); | 1459 | List<ulong> childknownRegions = new List<ulong>(); |
1458 | List<ulong> ckn = avatar.GetKnownRegionList(); | 1460 | List<ulong> ckn = avatar.GetKnownRegionList(); |
1459 | for (int i = 0; i < ckn.Count; i++) | 1461 | for (int i = 0; i < ckn.Count; i++) |
@@ -1477,16 +1479,16 @@ namespace OpenSim.Region.Environment.Scenes | |||
1477 | } | 1479 | } |
1478 | m_eventManager.TriggerOnRemovePresence(agentID); | 1480 | m_eventManager.TriggerOnRemovePresence(agentID); |
1479 | Broadcast(delegate(IClientAPI client) | 1481 | Broadcast(delegate(IClientAPI client) |
1482 | { | ||
1483 | try | ||
1484 | { | ||
1485 | client.SendKillObject(avatar.RegionHandle, avatar.LocalId); | ||
1486 | } | ||
1487 | catch (System.NullReferenceException) | ||
1480 | { | 1488 | { |
1481 | try | 1489 | //We can safely ignore null reference exceptions. It means the avatar are dead and cleaned up anyway. |
1482 | { | 1490 | } |
1483 | client.SendKillObject(avatar.RegionHandle, avatar.LocalId); | 1491 | }); |
1484 | } | ||
1485 | catch (System.NullReferenceException) | ||
1486 | { | ||
1487 | //We can safely ignore null reference exceptions. It means the avatar are dead and cleaned up anyway. | ||
1488 | } | ||
1489 | }); | ||
1490 | 1492 | ||
1491 | ForEachScenePresence( | 1493 | ForEachScenePresence( |
1492 | delegate(ScenePresence presence) { presence.CoarseLocationChange(); }); | 1494 | delegate(ScenePresence presence) { presence.CoarseLocationChange(); }); |
@@ -1903,8 +1905,6 @@ namespace OpenSim.Region.Environment.Scenes | |||
1903 | } | 1905 | } |
1904 | } | 1906 | } |
1905 | 1907 | ||
1906 | |||
1907 | |||
1908 | #endregion | 1908 | #endregion |
1909 | 1909 | ||
1910 | #region Other Methods | 1910 | #region Other Methods |
@@ -2152,10 +2152,10 @@ namespace OpenSim.Region.Environment.Scenes | |||
2152 | { | 2152 | { |
2153 | 2153 | ||
2154 | ClientManager.ForEachClient(delegate(IClientAPI controller) | 2154 | ClientManager.ForEachClient(delegate(IClientAPI controller) |
2155 | { | 2155 | { |
2156 | controller.SendBlueBoxMessage(FromAvatarID, fromSessionID, FromAvatarName, Message); | 2156 | controller.SendBlueBoxMessage(FromAvatarID, fromSessionID, FromAvatarName, Message); |
2157 | } | 2157 | } |
2158 | ); | 2158 | ); |
2159 | } | 2159 | } |
2160 | 2160 | ||
2161 | /// <summary> | 2161 | /// <summary> |
@@ -2180,27 +2180,27 @@ namespace OpenSim.Region.Environment.Scenes | |||
2180 | if (agentID == kickUserID) | 2180 | if (agentID == kickUserID) |
2181 | { | 2181 | { |
2182 | ClientManager.ForEachClient(delegate(IClientAPI controller) | 2182 | ClientManager.ForEachClient(delegate(IClientAPI controller) |
2183 | { | 2183 | { |
2184 | if (controller.AgentId != godID) | 2184 | if (controller.AgentId != godID) |
2185 | controller.Kick(Helpers.FieldToUTF8String(reason)); | 2185 | controller.Kick(Helpers.FieldToUTF8String(reason)); |
2186 | 2186 | ||
2187 | 2187 | ||
2188 | 2188 | ||
2189 | } | 2189 | } |
2190 | ); | 2190 | ); |
2191 | // This is a bit crude. It seems the client will be null before it actually stops the thread | 2191 | // This is a bit crude. It seems the client will be null before it actually stops the thread |
2192 | // The thread will kill itself eventually :/ | 2192 | // The thread will kill itself eventually :/ |
2193 | // Is there another way to make sure *all* clients get this 'inter region' message? | 2193 | // Is there another way to make sure *all* clients get this 'inter region' message? |
2194 | ClientManager.ForEachClient(delegate(IClientAPI controller) | 2194 | ClientManager.ForEachClient(delegate(IClientAPI controller) |
2195 | { | 2195 | { |
2196 | ScenePresence p = GetScenePresence(controller.AgentId); | 2196 | ScenePresence p = GetScenePresence(controller.AgentId); |
2197 | bool childagent = !p.Equals(null) && p.IsChildAgent; | 2197 | bool childagent = !p.Equals(null) && p.IsChildAgent; |
2198 | if (controller.AgentId != godID && !childagent) | 2198 | if (controller.AgentId != godID && !childagent) |
2199 | // Do we really want to kick the initiator of this madness? | 2199 | // Do we really want to kick the initiator of this madness? |
2200 | { | 2200 | { |
2201 | controller.Close(true); | 2201 | controller.Close(true); |
2202 | } | ||
2203 | } | 2202 | } |
2203 | } | ||
2204 | ); | 2204 | ); |
2205 | } | 2205 | } |
2206 | else | 2206 | else |
diff --git a/OpenSim/Region/Environment/Scenes/ScenePresence.cs b/OpenSim/Region/Environment/Scenes/ScenePresence.cs index b00b678..050bf95 100644 --- a/OpenSim/Region/Environment/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Environment/Scenes/ScenePresence.cs | |||
@@ -115,12 +115,11 @@ namespace OpenSim.Region.Environment.Scenes | |||
115 | 115 | ||
116 | protected AvatarAppearance m_appearance; | 116 | protected AvatarAppearance m_appearance; |
117 | 117 | ||
118 | //neighbouring regions we have enabled a child agent in | ||
118 | private readonly List<ulong> m_knownChildRegions = new List<ulong>(); | 119 | private readonly List<ulong> m_knownChildRegions = new List<ulong>(); |
119 | //neighbouring regions we have enabled a child agent in | ||
120 | 120 | ||
121 | private SignificantClientMovement handlerSignificantClientMovement = null; //OnSignificantClientMovement; | 121 | private SignificantClientMovement handlerSignificantClientMovement = null; //OnSignificantClientMovement; |
122 | 122 | ||
123 | |||
124 | /// <summary> | 123 | /// <summary> |
125 | /// Implemented Control Flags | 124 | /// Implemented Control Flags |
126 | /// </summary> | 125 | /// </summary> |
@@ -1447,12 +1446,12 @@ namespace OpenSim.Region.Environment.Scenes | |||
1447 | m_perfMonMS=System.Environment.TickCount; | 1446 | m_perfMonMS=System.Environment.TickCount; |
1448 | 1447 | ||
1449 | m_scene.ForEachScenePresence(delegate(ScenePresence scenePresence) | 1448 | m_scene.ForEachScenePresence(delegate(ScenePresence scenePresence) |
1449 | { | ||
1450 | if (scenePresence.UUID != UUID) | ||
1450 | { | 1451 | { |
1451 | if (scenePresence.UUID != UUID) | 1452 | m_appearance.SendAppearanceToOtherAgent(scenePresence); |
1452 | { | 1453 | } |
1453 | m_appearance.SendAppearanceToOtherAgent(scenePresence); | 1454 | }); |
1454 | } | ||
1455 | }); | ||
1456 | m_scene.AddAgentTime(System.Environment.TickCount - m_perfMonMS); | 1455 | m_scene.AddAgentTime(System.Environment.TickCount - m_perfMonMS); |
1457 | } | 1456 | } |
1458 | 1457 | ||
@@ -1780,9 +1779,9 @@ namespace OpenSim.Region.Environment.Scenes | |||
1780 | } | 1779 | } |
1781 | 1780 | ||
1782 | [SecurityPermission(SecurityAction.LinkDemand, | 1781 | [SecurityPermission(SecurityAction.LinkDemand, |
1783 | Flags = SecurityPermissionFlag.SerializationFormatter)] | 1782 | Flags = SecurityPermissionFlag.SerializationFormatter)] |
1784 | public virtual void GetObjectData( | 1783 | public virtual void GetObjectData( |
1785 | SerializationInfo info, StreamingContext context) | 1784 | SerializationInfo info, StreamingContext context) |
1786 | { | 1785 | { |
1787 | if (info == null) | 1786 | if (info == null) |
1788 | { | 1787 | { |
@@ -1792,7 +1791,6 @@ namespace OpenSim.Region.Environment.Scenes | |||
1792 | info.AddValue("FullID", FullID.UUID); | 1791 | info.AddValue("FullID", FullID.UUID); |
1793 | info.AddValue("LastFullUpdateTime", LastFullUpdateTime); | 1792 | info.AddValue("LastFullUpdateTime", LastFullUpdateTime); |
1794 | info.AddValue("LastTerseUpdateTime", LastTerseUpdateTime); | 1793 | info.AddValue("LastTerseUpdateTime", LastTerseUpdateTime); |
1795 | |||
1796 | } | 1794 | } |
1797 | } | 1795 | } |
1798 | 1796 | ||
@@ -1929,9 +1927,9 @@ namespace OpenSim.Region.Environment.Scenes | |||
1929 | 1927 | ||
1930 | m_requestedSitOffset | 1928 | m_requestedSitOffset |
1931 | = new LLVector3( | 1929 | = new LLVector3( |
1932 | (float)info.GetValue("m_requestedSitOffset.X", typeof(float)), | 1930 | (float)info.GetValue("m_requestedSitOffset.X", typeof(float)), |
1933 | (float)info.GetValue("m_requestedSitOffset.Y", typeof(float)), | 1931 | (float)info.GetValue("m_requestedSitOffset.Y", typeof(float)), |
1934 | (float)info.GetValue("m_requestedSitOffset.Z", typeof(float))); | 1932 | (float)info.GetValue("m_requestedSitOffset.Z", typeof(float))); |
1935 | 1933 | ||
1936 | m_sitAvatarHeight = (float)info.GetValue("m_sitAvatarHeight", typeof(float)); | 1934 | m_sitAvatarHeight = (float)info.GetValue("m_sitAvatarHeight", typeof(float)); |
1937 | m_godlevel = (float)info.GetValue("m_godlevel", typeof(float)); | 1935 | m_godlevel = (float)info.GetValue("m_godlevel", typeof(float)); |
@@ -1939,10 +1937,10 @@ namespace OpenSim.Region.Environment.Scenes | |||
1939 | 1937 | ||
1940 | m_bodyRot | 1938 | m_bodyRot |
1941 | = new Quaternion( | 1939 | = new Quaternion( |
1942 | (float)info.GetValue("m_bodyRot.w", typeof(float)), | 1940 | (float)info.GetValue("m_bodyRot.w", typeof(float)), |
1943 | (float)info.GetValue("m_bodyRot.x", typeof(float)), | 1941 | (float)info.GetValue("m_bodyRot.x", typeof(float)), |
1944 | (float)info.GetValue("m_bodyRot.y", typeof(float)), | 1942 | (float)info.GetValue("m_bodyRot.y", typeof(float)), |
1945 | (float)info.GetValue("m_bodyRot.z", typeof(float))); | 1943 | (float)info.GetValue("m_bodyRot.z", typeof(float))); |
1946 | 1944 | ||
1947 | IsRestrictedToRegion = (bool)info.GetValue("IsRestrictedToRegion", typeof(bool)); | 1945 | IsRestrictedToRegion = (bool)info.GetValue("IsRestrictedToRegion", typeof(bool)); |
1948 | m_newForce = (bool)info.GetValue("m_newForce", typeof(bool)); | 1946 | m_newForce = (bool)info.GetValue("m_newForce", typeof(bool)); |
@@ -1964,33 +1962,33 @@ namespace OpenSim.Region.Environment.Scenes | |||
1964 | 1962 | ||
1965 | lastPhysPos | 1963 | lastPhysPos |
1966 | = new LLVector3( | 1964 | = new LLVector3( |
1967 | (float)info.GetValue("lastPhysPos.X", typeof(float)), | 1965 | (float)info.GetValue("lastPhysPos.X", typeof(float)), |
1968 | (float)info.GetValue("lastPhysPos.Y", typeof(float)), | 1966 | (float)info.GetValue("lastPhysPos.Y", typeof(float)), |
1969 | (float)info.GetValue("lastPhysPos.Z", typeof(float))); | 1967 | (float)info.GetValue("lastPhysPos.Z", typeof(float))); |
1970 | 1968 | ||
1971 | m_CameraCenter | 1969 | m_CameraCenter |
1972 | = new Vector3( | 1970 | = new Vector3( |
1973 | (float)info.GetValue("m_CameraCenter.X", typeof(float)), | 1971 | (float)info.GetValue("m_CameraCenter.X", typeof(float)), |
1974 | (float)info.GetValue("m_CameraCenter.Y", typeof(float)), | 1972 | (float)info.GetValue("m_CameraCenter.Y", typeof(float)), |
1975 | (float)info.GetValue("m_CameraCenter.Z", typeof(float))); | 1973 | (float)info.GetValue("m_CameraCenter.Z", typeof(float))); |
1976 | 1974 | ||
1977 | m_CameraAtAxis | 1975 | m_CameraAtAxis |
1978 | = new Vector3( | 1976 | = new Vector3( |
1979 | (float)info.GetValue("m_CameraAtAxis.X", typeof(float)), | 1977 | (float)info.GetValue("m_CameraAtAxis.X", typeof(float)), |
1980 | (float)info.GetValue("m_CameraAtAxis.Y", typeof(float)), | 1978 | (float)info.GetValue("m_CameraAtAxis.Y", typeof(float)), |
1981 | (float)info.GetValue("m_CameraAtAxis.Z", typeof(float))); | 1979 | (float)info.GetValue("m_CameraAtAxis.Z", typeof(float))); |
1982 | 1980 | ||
1983 | m_CameraLeftAxis | 1981 | m_CameraLeftAxis |
1984 | = new Vector3( | 1982 | = new Vector3( |
1985 | (float)info.GetValue("m_CameraLeftAxis.X", typeof(float)), | 1983 | (float)info.GetValue("m_CameraLeftAxis.X", typeof(float)), |
1986 | (float)info.GetValue("m_CameraLeftAxis.Y", typeof(float)), | 1984 | (float)info.GetValue("m_CameraLeftAxis.Y", typeof(float)), |
1987 | (float)info.GetValue("m_CameraLeftAxis.Z", typeof(float))); | 1985 | (float)info.GetValue("m_CameraLeftAxis.Z", typeof(float))); |
1988 | 1986 | ||
1989 | m_CameraUpAxis | 1987 | m_CameraUpAxis |
1990 | = new Vector3( | 1988 | = new Vector3( |
1991 | (float)info.GetValue("m_CameraUpAxis.X", typeof(float)), | 1989 | (float)info.GetValue("m_CameraUpAxis.X", typeof(float)), |
1992 | (float)info.GetValue("m_CameraUpAxis.Y", typeof(float)), | 1990 | (float)info.GetValue("m_CameraUpAxis.Y", typeof(float)), |
1993 | (float)info.GetValue("m_CameraUpAxis.Z", typeof(float))); | 1991 | (float)info.GetValue("m_CameraUpAxis.Z", typeof(float))); |
1994 | 1992 | ||
1995 | m_DrawDistance = (float)info.GetValue("m_DrawDistance", typeof(float)); | 1993 | m_DrawDistance = (float)info.GetValue("m_DrawDistance", typeof(float)); |
1996 | m_appearance = (AvatarAppearance)info.GetValue("m_appearance", typeof(AvatarAppearance)); | 1994 | m_appearance = (AvatarAppearance)info.GetValue("m_appearance", typeof(AvatarAppearance)); |
@@ -1998,9 +1996,9 @@ namespace OpenSim.Region.Environment.Scenes | |||
1998 | 1996 | ||
1999 | posLastSignificantMove | 1997 | posLastSignificantMove |
2000 | = new LLVector3( | 1998 | = new LLVector3( |
2001 | (float)info.GetValue("posLastSignificantMove.X", typeof(float)), | 1999 | (float)info.GetValue("posLastSignificantMove.X", typeof(float)), |
2002 | (float)info.GetValue("posLastSignificantMove.Y", typeof(float)), | 2000 | (float)info.GetValue("posLastSignificantMove.Y", typeof(float)), |
2003 | (float)info.GetValue("posLastSignificantMove.Z", typeof(float))); | 2001 | (float)info.GetValue("posLastSignificantMove.Z", typeof(float))); |
2004 | 2002 | ||
2005 | // m_partsUpdateQueue = (UpdateQueue)info.GetValue("m_partsUpdateQueue", typeof(UpdateQueue)); | 2003 | // m_partsUpdateQueue = (UpdateQueue)info.GetValue("m_partsUpdateQueue", typeof(UpdateQueue)); |
2006 | 2004 | ||
@@ -2018,41 +2016,41 @@ namespace OpenSim.Region.Environment.Scenes | |||
2018 | m_lastname = (string)info.GetValue("m_lastname", typeof(string)); | 2016 | m_lastname = (string)info.GetValue("m_lastname", typeof(string)); |
2019 | m_allowMovement = (bool)info.GetValue("m_allowMovement", typeof(bool)); | 2017 | m_allowMovement = (bool)info.GetValue("m_allowMovement", typeof(bool)); |
2020 | m_parentPosition = new LLVector3((float)info.GetValue("m_parentPosition.X", typeof(float)), | 2018 | m_parentPosition = new LLVector3((float)info.GetValue("m_parentPosition.X", typeof(float)), |
2021 | (float)info.GetValue("m_parentPosition.Y", typeof(float)), | 2019 | (float)info.GetValue("m_parentPosition.Y", typeof(float)), |
2022 | (float)info.GetValue("m_parentPosition.Z", typeof(float))); | 2020 | (float)info.GetValue("m_parentPosition.Z", typeof(float))); |
2023 | 2021 | ||
2024 | m_isChildAgent = (bool)info.GetValue("m_isChildAgent", typeof(bool)); | 2022 | m_isChildAgent = (bool)info.GetValue("m_isChildAgent", typeof(bool)); |
2025 | m_parentID = (uint)info.GetValue("m_parentID", typeof(uint)); | 2023 | m_parentID = (uint)info.GetValue("m_parentID", typeof(uint)); |
2026 | 2024 | ||
2027 | // for OpenSim_v0.5 | 2025 | // for OpenSim_v0.5 |
2028 | currentParcelUUID = new LLUUID((Guid)info.GetValue("currentParcelUUID", typeof(Guid))); | 2026 | currentParcelUUID = new LLUUID((Guid)info.GetValue("currentParcelUUID", typeof(Guid))); |
2029 | 2027 | ||
2030 | lastKnownAllowedPosition | 2028 | lastKnownAllowedPosition |
2031 | = new Vector3( | 2029 | = new Vector3( |
2032 | (float)info.GetValue("lastKnownAllowedPosition.X", typeof(float)), | 2030 | (float)info.GetValue("lastKnownAllowedPosition.X", typeof(float)), |
2033 | (float)info.GetValue("lastKnownAllowedPosition.Y", typeof(float)), | 2031 | (float)info.GetValue("lastKnownAllowedPosition.Y", typeof(float)), |
2034 | (float)info.GetValue("lastKnownAllowedPosition.Z", typeof(float))); | 2032 | (float)info.GetValue("lastKnownAllowedPosition.Z", typeof(float))); |
2035 | 2033 | ||
2036 | sentMessageAboutRestrictedParcelFlyingDown = (bool)info.GetValue("sentMessageAboutRestrictedParcelFlyingDown", typeof(bool)); | 2034 | sentMessageAboutRestrictedParcelFlyingDown = (bool)info.GetValue("sentMessageAboutRestrictedParcelFlyingDown", typeof(bool)); |
2037 | 2035 | ||
2038 | m_LastChildAgentUpdatePosition | 2036 | m_LastChildAgentUpdatePosition |
2039 | = new LLVector3( | 2037 | = new LLVector3( |
2040 | (float)info.GetValue("m_LastChildAgentUpdatePosition.X", typeof(float)), | 2038 | (float)info.GetValue("m_LastChildAgentUpdatePosition.X", typeof(float)), |
2041 | (float)info.GetValue("m_LastChildAgentUpdatePosition.Y", typeof(float)), | 2039 | (float)info.GetValue("m_LastChildAgentUpdatePosition.Y", typeof(float)), |
2042 | (float)info.GetValue("m_LastChildAgentUpdatePosition.Z", typeof(float))); | 2040 | (float)info.GetValue("m_LastChildAgentUpdatePosition.Z", typeof(float))); |
2043 | 2041 | ||
2044 | m_perfMonMS = (int)info.GetValue("m_perfMonMS", typeof(int)); | 2042 | m_perfMonMS = (int)info.GetValue("m_perfMonMS", typeof(int)); |
2045 | m_AgentControlFlags = (uint)info.GetValue("m_AgentControlFlags", typeof(uint)); | 2043 | m_AgentControlFlags = (uint)info.GetValue("m_AgentControlFlags", typeof(uint)); |
2046 | 2044 | ||
2047 | m_headrotation | 2045 | m_headrotation |
2048 | = new LLQuaternion( | 2046 | = new LLQuaternion( |
2049 | (float)info.GetValue("m_headrotation.W", typeof(float)), | 2047 | (float)info.GetValue("m_headrotation.W", typeof(float)), |
2050 | (float)info.GetValue("m_headrotation.X", typeof(float)), | 2048 | (float)info.GetValue("m_headrotation.X", typeof(float)), |
2051 | (float)info.GetValue("m_headrotation.Y", typeof(float)), | 2049 | (float)info.GetValue("m_headrotation.Y", typeof(float)), |
2052 | (float)info.GetValue("m_headrotation.Z", typeof(float))); | 2050 | (float)info.GetValue("m_headrotation.Z", typeof(float))); |
2053 | 2051 | ||
2054 | m_state = (byte)info.GetValue("m_state", typeof(byte)); | 2052 | m_state = (byte)info.GetValue("m_state", typeof(byte)); |
2055 | 2053 | ||
2056 | List<Guid> knownPrimUUID_work = (List<Guid>)info.GetValue("m_knownPrimUUID", typeof(List<Guid>)); | 2054 | List<Guid> knownPrimUUID_work = (List<Guid>)info.GetValue("m_knownPrimUUID", typeof(List<Guid>)); |
2057 | 2055 | ||
2058 | foreach (Guid id in knownPrimUUID_work) | 2056 | foreach (Guid id in knownPrimUUID_work) |
@@ -2064,9 +2062,9 @@ namespace OpenSim.Region.Environment.Scenes | |||
2064 | } | 2062 | } |
2065 | 2063 | ||
2066 | [SecurityPermission(SecurityAction.LinkDemand, | 2064 | [SecurityPermission(SecurityAction.LinkDemand, |
2067 | Flags = SecurityPermissionFlag.SerializationFormatter)] | 2065 | Flags = SecurityPermissionFlag.SerializationFormatter)] |
2068 | public override void GetObjectData( | 2066 | public override void GetObjectData( |
2069 | SerializationInfo info, StreamingContext context) | 2067 | SerializationInfo info, StreamingContext context) |
2070 | { | 2068 | { |
2071 | if (info == null) | 2069 | if (info == null) |
2072 | { | 2070 | { |
@@ -2196,17 +2194,17 @@ namespace OpenSim.Region.Environment.Scenes | |||
2196 | info.AddValue("m_LastChildAgentUpdatePosition.X", m_LastChildAgentUpdatePosition.X); | 2194 | info.AddValue("m_LastChildAgentUpdatePosition.X", m_LastChildAgentUpdatePosition.X); |
2197 | info.AddValue("m_LastChildAgentUpdatePosition.Y", m_LastChildAgentUpdatePosition.Y); | 2195 | info.AddValue("m_LastChildAgentUpdatePosition.Y", m_LastChildAgentUpdatePosition.Y); |
2198 | info.AddValue("m_LastChildAgentUpdatePosition.Z", m_LastChildAgentUpdatePosition.Z); | 2196 | info.AddValue("m_LastChildAgentUpdatePosition.Z", m_LastChildAgentUpdatePosition.Z); |
2199 | 2197 | ||
2200 | info.AddValue("m_perfMonMS", m_perfMonMS); | 2198 | info.AddValue("m_perfMonMS", m_perfMonMS); |
2201 | info.AddValue("m_AgentControlFlags", m_AgentControlFlags); | 2199 | info.AddValue("m_AgentControlFlags", m_AgentControlFlags); |
2202 | 2200 | ||
2203 | info.AddValue("m_headrotation.W", m_headrotation.W); | 2201 | info.AddValue("m_headrotation.W", m_headrotation.W); |
2204 | info.AddValue("m_headrotation.X", m_headrotation.X); | 2202 | info.AddValue("m_headrotation.X", m_headrotation.X); |
2205 | info.AddValue("m_headrotation.Y", m_headrotation.Y); | 2203 | info.AddValue("m_headrotation.Y", m_headrotation.Y); |
2206 | info.AddValue("m_headrotation.Z", m_headrotation.Z); | 2204 | info.AddValue("m_headrotation.Z", m_headrotation.Z); |
2207 | 2205 | ||
2208 | info.AddValue("m_state", m_state); | 2206 | info.AddValue("m_state", m_state); |
2209 | 2207 | ||
2210 | List<Guid> knownPrimUUID_work = new List<Guid>(); | 2208 | List<Guid> knownPrimUUID_work = new List<Guid>(); |
2211 | 2209 | ||
2212 | foreach (LLUUID id in m_knownPrimUUID) | 2210 | foreach (LLUUID id in m_knownPrimUUID) |
@@ -2215,6 +2213,6 @@ namespace OpenSim.Region.Environment.Scenes | |||
2215 | } | 2213 | } |
2216 | 2214 | ||
2217 | info.AddValue("m_knownPrimUUID", knownPrimUUID_work); | 2215 | info.AddValue("m_knownPrimUUID", knownPrimUUID_work); |
2218 | } | 2216 | } |
2219 | } | 2217 | } |
2220 | } | 2218 | } |