aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/Scene.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Scene.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.cs26
1 files changed, 19 insertions, 7 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index fbabb5c..c12c81b 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -878,6 +878,15 @@ namespace OpenSim.Region.Framework.Scenes
878 /// <param name="seconds">float indicating duration before restart.</param> 878 /// <param name="seconds">float indicating duration before restart.</param>
879 public virtual void Restart(float seconds) 879 public virtual void Restart(float seconds)
880 { 880 {
881 Restart(seconds, true);
882 }
883
884 /// <summary>
885 /// Given float seconds, this will restart the region. showDialog will optionally alert the users.
886 /// </summary>
887 /// <param name="seconds">float indicating duration before restart.</param>
888 public virtual void Restart(float seconds, bool showDialog)
889 {
881 // notifications are done in 15 second increments 890 // notifications are done in 15 second increments
882 // so .. if the number of seconds is less then 15 seconds, it's not really a restart request 891 // so .. if the number of seconds is less then 15 seconds, it's not really a restart request
883 // It's a 'Cancel restart' request. 892 // It's a 'Cancel restart' request.
@@ -898,8 +907,11 @@ namespace OpenSim.Region.Framework.Scenes
898 m_restartTimer.Elapsed += new ElapsedEventHandler(RestartTimer_Elapsed); 907 m_restartTimer.Elapsed += new ElapsedEventHandler(RestartTimer_Elapsed);
899 m_log.Info("[REGION]: Restarting Region in " + (seconds / 60) + " minutes"); 908 m_log.Info("[REGION]: Restarting Region in " + (seconds / 60) + " minutes");
900 m_restartTimer.Start(); 909 m_restartTimer.Start();
901 m_dialogModule.SendNotificationToUsersInRegion( 910 if (showDialog)
902 UUID.Random(), String.Empty, RegionInfo.RegionName + ": Restarting in 2 Minutes"); 911 {
912 m_dialogModule.SendNotificationToUsersInRegion(
913 UUID.Random(), String.Empty, RegionInfo.RegionName + ": Restarting in " + (seconds / 60).ToString() + " Minutes");
914 }
903 } 915 }
904 } 916 }
905 917
@@ -1169,16 +1181,16 @@ namespace OpenSim.Region.Framework.Scenes
1169 // Check if any objects have reached their targets 1181 // Check if any objects have reached their targets
1170 CheckAtTargets(); 1182 CheckAtTargets();
1171 1183
1172 // Update SceneObjectGroups that have scheduled themselves for updates
1173 // Objects queue their updates onto all scene presences
1174 if (m_frame % m_update_objects == 0)
1175 m_sceneGraph.UpdateObjectGroups();
1176
1177 // Run through all ScenePresences looking for updates 1184 // Run through all ScenePresences looking for updates
1178 // Presence updates and queued object updates for each presence are sent to clients 1185 // Presence updates and queued object updates for each presence are sent to clients
1179 if (m_frame % m_update_presences == 0) 1186 if (m_frame % m_update_presences == 0)
1180 m_sceneGraph.UpdatePresences(); 1187 m_sceneGraph.UpdatePresences();
1181 1188
1189 // Update SceneObjectGroups that have scheduled themselves for updates
1190 // Objects queue their updates onto all scene presences
1191 if (m_frame % m_update_objects == 0)
1192 m_sceneGraph.UpdateObjectGroups();
1193
1182 int TempPhysicsMS2 = Environment.TickCount; 1194 int TempPhysicsMS2 = Environment.TickCount;
1183 if ((m_frame % m_update_physics == 0) && m_physics_enabled) 1195 if ((m_frame % m_update_physics == 0) && m_physics_enabled)
1184 m_sceneGraph.UpdatePreparePhysics(); 1196 m_sceneGraph.UpdatePreparePhysics();