mirror of
https://github.com/opensim/opensim.git
synced 2026-08-11 11:57:03 +08:00
Make create region save the new region to ini file format if the name
specifies an ini file. If the ini file exists, the region will be added.
This commit is contained in:
@@ -443,20 +443,38 @@ namespace OpenSim
|
||||
|
||||
private void HandleCreateRegion(string module, string[] cmd)
|
||||
{
|
||||
if (cmd.Length < 4 || !cmd[3].EndsWith(".xml"))
|
||||
if (cmd.Length < 4)
|
||||
{
|
||||
m_log.Error("Usage: create region <region name> <region_file.xml>");
|
||||
return;
|
||||
}
|
||||
if (cmd[3].EndsWith(".xml"))
|
||||
{
|
||||
string regionsDir = ConfigSource.Source.Configs["Startup"].GetString("regionload_regionsdir", "Regions").Trim();
|
||||
string regionFile = String.Format("{0}/{1}", regionsDir, cmd[3]);
|
||||
// Allow absolute and relative specifiers
|
||||
if (cmd[3].StartsWith("/") || cmd[3].StartsWith("\\") || cmd[3].StartsWith(".."))
|
||||
regionFile = cmd[3];
|
||||
|
||||
string regionsDir = ConfigSource.Source.Configs["Startup"].GetString("regionload_regionsdir", "Regions").Trim();
|
||||
string regionFile = String.Format("{0}/{1}", regionsDir, cmd[3]);
|
||||
// Allow absolute and relative specifiers
|
||||
if (cmd[3].StartsWith("/") || cmd[3].StartsWith("\\") || cmd[3].StartsWith(".."))
|
||||
regionFile = cmd[3];
|
||||
IScene scene;
|
||||
CreateRegion(new RegionInfo(cmd[2], regionFile, false, ConfigSource.Source), true, out scene);
|
||||
}
|
||||
else if (cmd[3].EndsWith(".ini"))
|
||||
{
|
||||
string regionsDir = ConfigSource.Source.Configs["Startup"].GetString("regionload_regionsdir", "Regions").Trim();
|
||||
string regionFile = String.Format("{0}/{1}", regionsDir, cmd[3]);
|
||||
// Allow absolute and relative specifiers
|
||||
if (cmd[3].StartsWith("/") || cmd[3].StartsWith("\\") || cmd[3].StartsWith(".."))
|
||||
regionFile = cmd[3];
|
||||
|
||||
IScene scene;
|
||||
CreateRegion(new RegionInfo(cmd[2], regionFile, false, ConfigSource.Source), true, out scene);
|
||||
IScene scene;
|
||||
CreateRegion(new RegionInfo(cmd[2], regionFile, false, ConfigSource.Source, cmd[2]), true, out scene);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_log.Error("Usage: create region <region name> <region_file.xml>");
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
private void HandleLoginEnable(string module, string[] cmd)
|
||||
|
||||
Reference in New Issue
Block a user