diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Scene.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.cs | 39 |
1 files changed, 36 insertions, 3 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index 57fcf51..2499460 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs | |||
@@ -103,8 +103,26 @@ namespace OpenSim.Region.Framework.Scenes | |||
103 | /// </summary> | 103 | /// </summary> |
104 | public bool CollidablePrims { get; private set; } | 104 | public bool CollidablePrims { get; private set; } |
105 | 105 | ||
106 | /// <summary> | ||
107 | /// Minimum value of the size of a non-physical prim in each axis | ||
108 | /// </summary> | ||
109 | public float m_minNonphys = 0.01f; | ||
110 | |||
111 | /// <summary> | ||
112 | /// Maximum value of the size of a non-physical prim in each axis | ||
113 | /// </summary> | ||
106 | public float m_maxNonphys = 256; | 114 | public float m_maxNonphys = 256; |
115 | |||
116 | /// <summary> | ||
117 | /// Minimum value of the size of a physical prim in each axis | ||
118 | /// </summary> | ||
119 | public float m_minPhys = 0.01f; | ||
120 | |||
121 | /// <summary> | ||
122 | /// Maximum value of the size of a physical prim in each axis | ||
123 | /// </summary> | ||
107 | public float m_maxPhys = 10; | 124 | public float m_maxPhys = 10; |
125 | |||
108 | public bool m_clampPrimSize; | 126 | public bool m_clampPrimSize; |
109 | public bool m_trustBinaries; | 127 | public bool m_trustBinaries; |
110 | public bool m_allowScriptCrossings; | 128 | public bool m_allowScriptCrossings; |
@@ -746,12 +764,24 @@ namespace OpenSim.Region.Framework.Scenes | |||
746 | PhysicalPrims = startupConfig.GetBoolean("physical_prim", true); | 764 | PhysicalPrims = startupConfig.GetBoolean("physical_prim", true); |
747 | CollidablePrims = startupConfig.GetBoolean("collidable_prim", true); | 765 | CollidablePrims = startupConfig.GetBoolean("collidable_prim", true); |
748 | 766 | ||
767 | m_minNonphys = startupConfig.GetFloat("NonphysicalPrimMin", m_minNonphys); | ||
768 | if (RegionInfo.NonphysPrimMin > 0) | ||
769 | { | ||
770 | m_minNonphys = RegionInfo.NonphysPrimMin; | ||
771 | } | ||
772 | |||
749 | m_maxNonphys = startupConfig.GetFloat("NonphysicalPrimMax", m_maxNonphys); | 773 | m_maxNonphys = startupConfig.GetFloat("NonphysicalPrimMax", m_maxNonphys); |
750 | if (RegionInfo.NonphysPrimMax > 0) | 774 | if (RegionInfo.NonphysPrimMax > 0) |
751 | { | 775 | { |
752 | m_maxNonphys = RegionInfo.NonphysPrimMax; | 776 | m_maxNonphys = RegionInfo.NonphysPrimMax; |
753 | } | 777 | } |
754 | 778 | ||
779 | m_minPhys = startupConfig.GetFloat("PhysicalPrimMin", m_minPhys); | ||
780 | if (RegionInfo.PhysPrimMin > 0) | ||
781 | { | ||
782 | m_minPhys = RegionInfo.PhysPrimMin; | ||
783 | } | ||
784 | |||
755 | m_maxPhys = startupConfig.GetFloat("PhysicalPrimMax", m_maxPhys); | 785 | m_maxPhys = startupConfig.GetFloat("PhysicalPrimMax", m_maxPhys); |
756 | 786 | ||
757 | if (RegionInfo.PhysPrimMax > 0) | 787 | if (RegionInfo.PhysPrimMax > 0) |
@@ -4310,15 +4340,18 @@ namespace OpenSim.Region.Framework.Scenes | |||
4310 | /// Tell a single agent to disconnect from the region. | 4340 | /// Tell a single agent to disconnect from the region. |
4311 | /// </summary> | 4341 | /// </summary> |
4312 | /// <param name="agentID"></param> | 4342 | /// <param name="agentID"></param> |
4313 | /// <param name="childOnly"></param> | 4343 | /// <param name="force"> |
4314 | public bool IncomingCloseAgent(UUID agentID, bool childOnly) | 4344 | /// Force the agent to close even if it might be in the middle of some other operation. You do not want to |
4345 | /// force unless you are absolutely sure that the agent is dead and a normal close is not working. | ||
4346 | /// </param> | ||
4347 | public bool IncomingCloseAgent(UUID agentID, bool force) | ||
4315 | { | 4348 | { |
4316 | //m_log.DebugFormat("[SCENE]: Processing incoming close agent for {0}", agentID); | 4349 | //m_log.DebugFormat("[SCENE]: Processing incoming close agent for {0}", agentID); |
4317 | 4350 | ||
4318 | ScenePresence presence = m_sceneGraph.GetScenePresence(agentID); | 4351 | ScenePresence presence = m_sceneGraph.GetScenePresence(agentID); |
4319 | if (presence != null) | 4352 | if (presence != null) |
4320 | { | 4353 | { |
4321 | presence.ControllingClient.Close(); | 4354 | presence.ControllingClient.Close(true, force); |
4322 | return true; | 4355 | return true; |
4323 | } | 4356 | } |
4324 | 4357 | ||