mirror of
https://github.com/opensim/opensim.git
synced 2026-08-05 00:46:02 +08:00
* Add extra backup parameter to InnerScene.AddRestoredSceneObject()
This commit is contained in:
@@ -181,7 +181,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
{
|
||||
SceneObjectGroup obj = new SceneObjectGroup(xmlData);
|
||||
|
||||
scene.AddSceneObjectFromStorage(obj);
|
||||
scene.AddRestoredSceneObject(obj, true);
|
||||
}
|
||||
|
||||
public static void SavePrimsToXml2(Scene scene, string fileName)
|
||||
|
||||
@@ -192,7 +192,11 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
/// Add an object into the scene that has come from storage
|
||||
/// </summary>
|
||||
/// <param name="sceneObject"></param>
|
||||
protected internal void AddSceneObjectFromStorage(SceneObjectGroup sceneObject)
|
||||
/// <param name="attachToBackup">
|
||||
/// If true, changes to the object will be reflected in its persisted data
|
||||
/// If false, the persisted data will not be changed even if the object in the scene is changed
|
||||
/// </param>
|
||||
protected internal void AddRestoredSceneObject(SceneObjectGroup sceneObject, bool attachToBackup)
|
||||
{
|
||||
sceneObject.RegionHandle = m_regInfo.RegionHandle;
|
||||
sceneObject.SetScene(m_parentScene);
|
||||
@@ -204,7 +208,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
|
||||
sceneObject.UpdateParentIDs();
|
||||
|
||||
AddSceneObject(sceneObject, true);
|
||||
AddSceneObject(sceneObject, attachToBackup);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -1470,7 +1470,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
List<SceneObjectGroup> PrimsFromDB = m_storageManager.DataStore.LoadObjects(regionID);
|
||||
foreach (SceneObjectGroup group in PrimsFromDB)
|
||||
{
|
||||
AddSceneObjectFromStorage(group);
|
||||
AddRestoredSceneObject(group, true);
|
||||
SceneObjectPart rootPart = group.GetChildPart(group.UUID);
|
||||
rootPart.ObjectFlags &= ~(uint)LLObject.ObjectFlags.Scripted;
|
||||
rootPart.TrimPermissions();
|
||||
@@ -1651,9 +1651,9 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
/// Add an object into the scene that has come from storage
|
||||
/// </summary>
|
||||
/// <param name="sceneObject"></param>
|
||||
public void AddSceneObjectFromStorage(SceneObjectGroup sceneObject)
|
||||
public void AddRestoredSceneObject(SceneObjectGroup sceneObject, bool attachToBackup)
|
||||
{
|
||||
m_innerScene.AddSceneObjectFromStorage(sceneObject);
|
||||
m_innerScene.AddRestoredSceneObject(sceneObject, attachToBackup);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -94,6 +94,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
/// since the group's last persistent backup
|
||||
/// </summary>
|
||||
public bool HasGroupChanged = false;
|
||||
|
||||
public float scriptScore = 0f;
|
||||
|
||||
private LLVector3 lastPhysGroupPos;
|
||||
@@ -1530,7 +1531,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Schedule a full update for every part in this object
|
||||
/// Schedule a full update for this scene object
|
||||
/// </summary>
|
||||
public void ScheduleGroupForFullUpdate()
|
||||
{
|
||||
@@ -1546,7 +1547,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// Schedule a terse update for this scene object
|
||||
/// </summary>
|
||||
public void ScheduleGroupForTerseUpdate()
|
||||
{
|
||||
@@ -1562,7 +1563,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// Immediately send a full update for this scene object.
|
||||
/// </summary>
|
||||
public void SendGroupFullUpdate()
|
||||
{
|
||||
@@ -1583,7 +1584,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// Immediately send a terse update for this scene object.
|
||||
/// </summary>
|
||||
public void SendGroupTerseUpdate()
|
||||
{
|
||||
@@ -2100,7 +2101,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
#region Resize
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// Resize the given part
|
||||
/// </summary>
|
||||
/// <param name="scale"></param>
|
||||
/// <param name="localID"></param>
|
||||
@@ -2531,6 +2532,12 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Set the user group to which this scene object belongs.
|
||||
/// </summary>
|
||||
/// <param name="GroupID"></param>
|
||||
/// <param name="client"></param>
|
||||
public void SetGroup(LLUUID GroupID, IClientAPI client)
|
||||
{
|
||||
lock (m_parts)
|
||||
@@ -2540,6 +2547,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
part.SetGroup(GroupID, client);
|
||||
}
|
||||
}
|
||||
|
||||
ScheduleGroupForFullUpdate();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3125,12 +3125,14 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
ParentGroup.RootPart.BaseMask);
|
||||
|
||||
}
|
||||
|
||||
public void SetGroup(LLUUID groupID, IClientAPI client)
|
||||
{
|
||||
GroupID = groupID;
|
||||
GetProperties(client);
|
||||
m_updateFlag = 2;
|
||||
}
|
||||
|
||||
private void handleTimerAccounting(uint localID, double interval)
|
||||
{
|
||||
if (localID == LocalId)
|
||||
|
||||
Reference in New Issue
Block a user