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.afrisby
parent
4eba3373dc
commit
690e517240
|
@ -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);
|
||||
|
|
Loading…
Reference in New Issue