mirror of
https://github.com/opensim/opensim.git
synced 2026-08-07 17:55:48 +08:00
Added a flag to load-xml console command, that will generate new uuids for the loaded Sceneobjects (as per mantis request #53).
To use append "-newUID" to the end of the command, so new format is : "load-xml <filename> -newUID". If you don't add the "-newUID", then the uuids in the xml file will be kept.
This commit is contained in:
@@ -659,11 +659,19 @@ namespace OpenSim
|
||||
case "load-xml":
|
||||
if (cmdparams.Length > 0)
|
||||
{
|
||||
m_sceneManager.LoadCurrentSceneFromXml(cmdparams[0]);
|
||||
bool generateNewIDS = false;
|
||||
if (cmdparams.Length > 1)
|
||||
{
|
||||
if (cmdparams[1] == "-newUID")
|
||||
{
|
||||
generateNewIDS = true;
|
||||
}
|
||||
}
|
||||
m_sceneManager.LoadCurrentSceneFromXml(cmdparams[0], generateNewIDS);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_sceneManager.LoadCurrentSceneFromXml(DEFAULT_PRIM_BACKUP_FILENAME);
|
||||
m_sceneManager.LoadCurrentSceneFromXml(DEFAULT_PRIM_BACKUP_FILENAME, false);
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
@@ -896,9 +896,9 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
prim.OnPrimCountTainted += m_LandManager.setPrimsTainted;
|
||||
}
|
||||
|
||||
public void LoadPrimsFromXml(string fileName)
|
||||
public void LoadPrimsFromXml(string fileName, bool newIdsFlag)
|
||||
{
|
||||
m_sceneXmlLoader.LoadPrimsFromXml(fileName);
|
||||
m_sceneXmlLoader.LoadPrimsFromXml(fileName, newIdsFlag);
|
||||
}
|
||||
|
||||
public void SavePrimsToXml(string fileName)
|
||||
|
||||
@@ -160,9 +160,9 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
CurrentOrFirstScene.SavePrimsToXml(filename);
|
||||
}
|
||||
|
||||
public void LoadCurrentSceneFromXml(string filename)
|
||||
public void LoadCurrentSceneFromXml(string filename, bool generateNewIDs)
|
||||
{
|
||||
CurrentOrFirstScene.LoadPrimsFromXml(filename);
|
||||
CurrentOrFirstScene.LoadPrimsFromXml(filename, generateNewIDs);
|
||||
}
|
||||
|
||||
public void SaveCurrentSceneToXml2(string filename)
|
||||
|
||||
@@ -23,7 +23,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
m_regInfo = regionInfo;
|
||||
}
|
||||
|
||||
public void LoadPrimsFromXml(string fileName)
|
||||
public void LoadPrimsFromXml(string fileName, bool newIDS)
|
||||
{
|
||||
XmlDocument doc = new XmlDocument();
|
||||
XmlNode rootNode;
|
||||
@@ -39,6 +39,10 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
{
|
||||
SceneObjectGroup obj = new SceneObjectGroup(m_parentScene,
|
||||
m_regInfo.RegionHandle, aPrimNode.OuterXml);
|
||||
if (newIDS)
|
||||
{
|
||||
obj.GenerateNewIDs();
|
||||
}
|
||||
//if we want this to be a import method then we need new uuids for the object to avoid any clashes
|
||||
//obj.RegenerateFullIDs();
|
||||
m_innerScene.AddEntity(obj);
|
||||
|
||||
Reference in New Issue
Block a user