diff --git a/OpenSim.Physics/BasicPhysicsPlugin/OpenSim.Physics.BasicPhysicsPlugin.csproj b/OpenSim.Physics/BasicPhysicsPlugin/OpenSim.Physics.BasicPhysicsPlugin.csproj
index 2101a91cbd..73625359e5 100644
--- a/OpenSim.Physics/BasicPhysicsPlugin/OpenSim.Physics.BasicPhysicsPlugin.csproj
+++ b/OpenSim.Physics/BasicPhysicsPlugin/OpenSim.Physics.BasicPhysicsPlugin.csproj
@@ -31,6 +31,7 @@
False
..\..\bin\Axiom.MathLib.dll
+ False
diff --git a/OpenSim.Physics/Manager/OpenSim.Physics.Manager.csproj b/OpenSim.Physics/Manager/OpenSim.Physics.Manager.csproj
index 07d9bb6763..45e62522f8 100644
--- a/OpenSim.Physics/Manager/OpenSim.Physics.Manager.csproj
+++ b/OpenSim.Physics/Manager/OpenSim.Physics.Manager.csproj
@@ -27,6 +27,7 @@
False
..\..\bin\Axiom.MathLib.dll
+ False
diff --git a/OpenSim.Physics/PhysXPlugin/OpenSim.Physics.PhysXplugin.csproj b/OpenSim.Physics/PhysXPlugin/OpenSim.Physics.PhysXplugin.csproj
index 80e63bc3f4..bb6c8abafa 100644
--- a/OpenSim.Physics/PhysXPlugin/OpenSim.Physics.PhysXplugin.csproj
+++ b/OpenSim.Physics/PhysXPlugin/OpenSim.Physics.PhysXplugin.csproj
@@ -27,10 +27,12 @@
False
..\..\bin\Axiom.MathLib.dll
+ False
False
..\..\bin\PhysX_Wrapper_Dotnet.dll
+ False
diff --git a/OpenSim.RegionServer/CAPS/SimHttp.cs b/OpenSim.RegionServer/CAPS/SimHttp.cs
index ec69e82afd..f5a87056ce 100644
--- a/OpenSim.RegionServer/CAPS/SimHttp.cs
+++ b/OpenSim.RegionServer/CAPS/SimHttp.cs
@@ -63,7 +63,7 @@ namespace OpenSim.CAPS
OpenSim.Framework.Console.MainConsole.Instance.WriteLine("SimHttp.cs:StartHTTP() - Spawned main thread OK");
Listener = new HttpListener();
- Listener.Prefixes.Add("http://+:" + OpenSimMain.Instance.Cfg.IPListenPort + "/");
+ Listener.Prefixes.Add("http://+:" + OpenSimRoot.Instance.Cfg.IPListenPort + "/");
Listener.Start();
HttpListenerContext context;
@@ -96,9 +96,9 @@ namespace OpenSim.CAPS
agent_data.lastname = (string)requestData["lastname"];
agent_data.AgentID = new LLUUID((string)requestData["agent_id"]);
agent_data.circuitcode = Convert.ToUInt32(requestData["circuit_code"]);
- if (OpenSimMain.Instance.GridServers.GridServer.GetName() == "Remote")
+ if (OpenSimRoot.Instance.GridServers.GridServer.GetName() == "Remote")
{
- ((RemoteGridBase)OpenSimMain.Instance.GridServers.GridServer).agentcircuits.Add((uint)agent_data.circuitcode, agent_data);
+ ((RemoteGridBase)OpenSimRoot.Instance.GridServers.GridServer).agentcircuits.Add((uint)agent_data.circuitcode, agent_data);
}
return "";
break;
diff --git a/OpenSim.RegionServer/Grid.cs b/OpenSim.RegionServer/Grid.cs
index 3a57605b2f..b0df6a8088 100644
--- a/OpenSim.RegionServer/Grid.cs
+++ b/OpenSim.RegionServer/Grid.cs
@@ -18,12 +18,13 @@ namespace OpenSim
{
}
- public void LoadPlugins()
+ public virtual void Initialise()
{
+ //load the dlls
this.AssetServer = this.LoadAssetDll(this.AssetDll);
this.GridServer = this.LoadGridDll(this.GridDll);
}
- public void Close()
+ public virtual void Close()
{
this.AssetServer.Close();
this.GridServer.Close();
diff --git a/OpenSim.RegionServer/OpenSim.RegionServer.csproj b/OpenSim.RegionServer/OpenSim.RegionServer.csproj
index 3d1364955e..bb4636c7a9 100644
--- a/OpenSim.RegionServer/OpenSim.RegionServer.csproj
+++ b/OpenSim.RegionServer/OpenSim.RegionServer.csproj
@@ -58,6 +58,8 @@
+
+
diff --git a/OpenSim.RegionServer/OpenSimApplication.cs b/OpenSim.RegionServer/OpenSimApplication.cs
new file mode 100644
index 0000000000..abfdf45812
--- /dev/null
+++ b/OpenSim.RegionServer/OpenSimApplication.cs
@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+using System.Net;
+using System.Net.Sockets;
+
+namespace OpenSim
+{
+ public abstract class OpenSimApplication
+ {
+ public abstract void StartUp();
+ public abstract void Shutdown();
+ public abstract void SendPacketTo(byte[] buffer, int size, SocketFlags flags, uint circuitcode);// EndPoint packetSender);
+ public abstract void RemoveClientCircuit(uint circuitcode);
+ }
+}
diff --git a/OpenSim.RegionServer/OpenSimMain.cs b/OpenSim.RegionServer/OpenSimMain.cs
index def22f87fe..93c8665a10 100644
--- a/OpenSim.RegionServer/OpenSimMain.cs
+++ b/OpenSim.RegionServer/OpenSimMain.cs
@@ -51,11 +51,11 @@ namespace OpenSim
///
/// Description of MainForm.
///
- public class OpenSimMain
+ public class OpenSimMain : OpenSimApplication
{
- private static OpenSimMain instance = null;
+ /* private static OpenSimRoot instance = null;
- public static OpenSimMain Instance
+ public static OpenSimRoot Instance
{
get
{
@@ -69,6 +69,11 @@ namespace OpenSim
public SimCAPSHTTPServer HttpServer;
public AssetCache AssetCache;
public InventoryCache InventoryCache;
+ public Dictionary ClientThreads = new Dictionary();
+ public DateTime startuptime;
+ */
+ private Dictionary clientCircuits = new Dictionary();
+ private PhysicsManager physManager;
public Socket Server;
private IPEndPoint ServerIncoming;
@@ -78,9 +83,6 @@ namespace OpenSim
private EndPoint epSender;
private AsyncCallback ReceivedData;
- public DateTime startuptime;
- public Dictionary ClientThreads = new Dictionary();
- private PhysicsManager physManager;
private System.Timers.Timer timer1 = new System.Timers.Timer();
private string ConfigDll = "SimConfig.dll";
private string _physicsEngine = "basicphysics";
@@ -94,55 +96,58 @@ namespace OpenSim
Console.WriteLine("Starting...\n");
OpenSim.Framework.Console.MainConsole.Instance = new SimConsole(OpenSim.Framework.Console.ConsoleBase.ConsoleType.Local, "", 0);
- instance = new OpenSimMain();
+ //OpenSimRoot.instance = new OpenSimRoot();
+ OpenSimMain sim = new OpenSimMain();
+ OpenSimRoot.Instance.Application = sim;
- Instance.sandbox = false;
- Instance.loginserver = false;
- Instance._physicsEngine = "basicphysics";
+ sim.sandbox = false;
+ sim.loginserver = false;
+ sim._physicsEngine = "basicphysics";
for (int i = 0; i < args.Length; i++)
{
if (args[i] == "-sandbox")
{
- Instance.sandbox = true;
+ sim.sandbox = true;
+ OpenSimRoot.Instance.Sandbox = true;
}
if (args[i] == "-loginserver")
{
- Instance.loginserver = true;
+ sim.loginserver = true;
}
if (args[i] == "-realphysx")
{
- Instance._physicsEngine = "RealPhysX";
+ sim._physicsEngine = "RealPhysX";
OpenSim.world.Avatar.PhysicsEngineFlying = true;
}
}
- OpenSimMain.Instance.GridServers = new Grid();
- if (Instance.sandbox)
+ OpenSimRoot.Instance.GridServers = new Grid();
+ if (sim.sandbox)
{
- OpenSimMain.Instance.GridServers.AssetDll = "LocalGridServers.dll";
- OpenSimMain.Instance.GridServers.GridDll = "LocalGridServers.dll";
- OpenSimMain.Instance.GridServers.LoadPlugins();
+ OpenSimRoot.Instance.GridServers.AssetDll = "LocalGridServers.dll";
+ OpenSimRoot.Instance.GridServers.GridDll = "LocalGridServers.dll";
+ OpenSimRoot.Instance.GridServers.Initialise();
OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Starting in Sandbox mode");
}
else
{
- OpenSimMain.Instance.GridServers.AssetDll = "RemoteGridServers.dll";
- OpenSimMain.Instance.GridServers.GridDll = "RemoteGridServers.dll";
- OpenSimMain.Instance.GridServers.LoadPlugins();
+ OpenSimRoot.Instance.GridServers.AssetDll = "RemoteGridServers.dll";
+ OpenSimRoot.Instance.GridServers.GridDll = "RemoteGridServers.dll";
+ OpenSimRoot.Instance.GridServers.Initialise();
OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Starting in Grid mode");
}
- if (Instance.loginserver && Instance.sandbox)
+ if (sim.loginserver && sim.sandbox)
{
- LoginServer loginServer = new LoginServer(OpenSimMain.Instance.GridServers.GridServer);
+ LoginServer loginServer = new LoginServer(OpenSimRoot.Instance.GridServers.GridServer);
loginServer.Startup();
}
- Instance.AssetCache = new AssetCache(OpenSimMain.Instance.GridServers.AssetServer);
- Instance.InventoryCache = new InventoryCache();
+ OpenSimRoot.Instance.AssetCache = new AssetCache(OpenSimRoot.Instance.GridServers.AssetServer);
+ OpenSimRoot.Instance.InventoryCache = new InventoryCache();
- Instance.Startup();
+ OpenSimRoot.Instance.StartUp();
while (true)
{
@@ -154,41 +159,41 @@ namespace OpenSim
{
}
- private void Startup()
+ public override void StartUp()
{
- startuptime = DateTime.Now;
+ OpenSimRoot.Instance.startuptime = DateTime.Now;
// We check our local database first, then the grid for config options
OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Main.cs:Startup() - Loading configuration");
- Cfg = this.LoadConfigDll(this.ConfigDll);
- Cfg.InitConfig(this.sandbox);
+ OpenSimRoot.Instance.Cfg = this.LoadConfigDll(this.ConfigDll);
+ OpenSimRoot.Instance.Cfg.InitConfig(this.sandbox);
OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Main.cs:Startup() - Contacting gridserver");
- Cfg.LoadFromGrid();
+ OpenSimRoot.Instance.Cfg.LoadFromGrid();
- OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Main.cs:Startup() - We are " + Cfg.RegionName + " at " + Cfg.RegionLocX.ToString() + "," + Cfg.RegionLocY.ToString());
+ OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Main.cs:Startup() - We are " + OpenSimRoot.Instance.Cfg.RegionName + " at " + OpenSimRoot.Instance.Cfg.RegionLocX.ToString() + "," + OpenSimRoot.Instance.Cfg.RegionLocY.ToString());
OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Initialising world");
- Instance.LocalWorld = new World();
- Instance.LocalWorld.LandMap = Cfg.LoadWorld();
+ OpenSimRoot.Instance.LocalWorld = new World();
+ OpenSimRoot.Instance.LocalWorld.LandMap = OpenSimRoot.Instance.Cfg.LoadWorld();
this.physManager = new OpenSim.Physics.Manager.PhysicsManager();
this.physManager.LoadPlugins();
OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Main.cs:Startup() - Starting up messaging system");
- Instance.LocalWorld.PhysScene = this.physManager.GetPhysicsScene(this._physicsEngine); //should be reading from the config file what physics engine to use
- Instance.LocalWorld.PhysScene.SetTerrain(Instance.LocalWorld.LandMap);
+ OpenSimRoot.Instance.LocalWorld.PhysScene = this.physManager.GetPhysicsScene(this._physicsEngine); //should be reading from the config file what physics engine to use
+ OpenSimRoot.Instance.LocalWorld.PhysScene.SetTerrain(OpenSimRoot.Instance.LocalWorld.LandMap);
- OpenSimMain.Instance.GridServers.AssetServer.SetServerInfo(OpenSimMain.Instance.Cfg.AssetURL, OpenSimMain.Instance.Cfg.AssetSendKey);
- OpenSimMain.Instance.GridServers.GridServer.SetServerInfo(OpenSimMain.Instance.Cfg.GridURL, OpenSimMain.Instance.Cfg.GridSendKey, OpenSimMain.Instance.Cfg.GridRecvKey);
+ OpenSimRoot.Instance.GridServers.AssetServer.SetServerInfo(OpenSimRoot.Instance.Cfg.AssetURL, OpenSimRoot.Instance.Cfg.AssetSendKey);
+ OpenSimRoot.Instance.GridServers.GridServer.SetServerInfo(OpenSimRoot.Instance.Cfg.GridURL, OpenSimRoot.Instance.Cfg.GridSendKey, OpenSimRoot.Instance.Cfg.GridRecvKey);
- Instance.LocalWorld.LoadStorageDLL("Db4LocalStorage.dll"); //all these dll names shouldn't be hard coded.
- Instance.LocalWorld.LoadPrimsFromStorage();
+ OpenSimRoot.Instance.LocalWorld.LoadStorageDLL("Db4LocalStorage.dll"); //all these dll names shouldn't be hard coded.
+ OpenSimRoot.Instance.LocalWorld.LoadPrimsFromStorage();
if (this.sandbox)
{
- this.AssetCache.LoadDefaultTextureSet();
+ OpenSimRoot.Instance.AssetCache.LoadDefaultTextureSet();
}
OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Main.cs:Startup() - Starting CAPS HTTP server");
- HttpServer = new SimCAPSHTTPServer();
+ OpenSimRoot.Instance.HttpServer = new SimCAPSHTTPServer();
timer1.Enabled = true;
timer1.Interval = 100;
@@ -233,16 +238,20 @@ namespace OpenSim
int numBytes = Server.EndReceiveFrom(result, ref epSender);
int packetEnd = numBytes - 1;
packet = Packet.BuildPacket(RecvBuffer, ref packetEnd, ZeroBuffer);
-
+
// This is either a new client or a packet to send to an old one
- if (ClientThreads.ContainsKey(epSender))
+ // if (OpenSimRoot.Instance.ClientThreads.ContainsKey(epSender))
+ if(this.clientCircuits.ContainsKey(epSender))
{
- ClientThreads[epSender].InPacket(packet);
+ OpenSimRoot.Instance.ClientThreads[this.clientCircuits[epSender]].InPacket(packet);
}
else if (packet.Type == PacketType.UseCircuitCode)
{ // new client
- SimClient newuser = new SimClient(epSender, (UseCircuitCodePacket)packet);
- ClientThreads.Add(epSender, newuser);
+ UseCircuitCodePacket useCircuit = (UseCircuitCodePacket)packet;
+ this.clientCircuits.Add(epSender, useCircuit.CircuitCode.Code);
+ SimClient newuser = new SimClient(epSender, useCircuit);
+ //OpenSimRoot.Instance.ClientThreads.Add(epSender, newuser);
+ OpenSimRoot.Instance.ClientThreads.Add(useCircuit.CircuitCode.Code, newuser);
}
else
{ // invalid client
@@ -254,9 +263,9 @@ namespace OpenSim
private void MainServerListener()
{
OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Main.cs:MainServerListener() - New thread started");
- OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Main.cs:MainServerListener() - Opening UDP socket on " + Cfg.IPListenAddr + ":" + Cfg.IPListenPort);
+ OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Main.cs:MainServerListener() - Opening UDP socket on " + OpenSimRoot.Instance.Cfg.IPListenAddr + ":" + OpenSimRoot.Instance.Cfg.IPListenPort);
- ServerIncoming = new IPEndPoint(IPAddress.Any, Cfg.IPListenPort);
+ ServerIncoming = new IPEndPoint(IPAddress.Any, OpenSimRoot.Instance.Cfg.IPListenPort);
Server = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
Server.Bind(ServerIncoming);
@@ -271,15 +280,44 @@ namespace OpenSim
}
- public static void Shutdown()
+ public override void SendPacketTo(byte[] buffer, int size, SocketFlags flags, uint circuitcode )//EndPoint packetSender)
+ {
+ EndPoint sendto = null;
+ foreach(KeyValuePair p in this.clientCircuits)
+ {
+ if (p.Value == circuitcode)
+ {
+ sendto = p.Key;
+ break;
+ }
+ }
+ if (sendto != null)
+ {
+ this.Server.SendTo(buffer, size, flags, sendto);
+ }
+ }
+
+ public override void RemoveClientCircuit(uint circuitcode)
+ {
+ foreach (KeyValuePair p in this.clientCircuits)
+ {
+ if (p.Value == circuitcode)
+ {
+ this.clientCircuits.Remove(p.Key);
+ break;
+ }
+ }
+ }
+
+ public override void Shutdown()
{
OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Main.cs:Shutdown() - Closing all threads");
OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Main.cs:Shutdown() - Killing listener thread");
OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Main.cs:Shutdown() - Killing clients");
// IMPLEMENT THIS
OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Main.cs:Shutdown() - Closing console and terminating");
- OpenSimMain.Instance.LocalWorld.Close();
- OpenSimMain.Instance.GridServers.Close();
+ OpenSimRoot.Instance.LocalWorld.Close();
+ OpenSimRoot.Instance.GridServers.Close();
OpenSim.Framework.Console.MainConsole.Instance.Close();
Environment.Exit(0);
}
@@ -287,7 +325,7 @@ namespace OpenSim
void Timer1Tick(object sender, System.EventArgs e)
{
- Instance.LocalWorld.Update();
+ OpenSimRoot.Instance.LocalWorld.Update();
}
}
diff --git a/OpenSim.RegionServer/OpenSimRoot.cs b/OpenSim.RegionServer/OpenSimRoot.cs
new file mode 100644
index 0000000000..edec4feb65
--- /dev/null
+++ b/OpenSim.RegionServer/OpenSimRoot.cs
@@ -0,0 +1,63 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+using System.Net;
+//using System.Net.Sockets;
+using libsecondlife;
+using libsecondlife.Packets;
+using OpenSim.world;
+using OpenSim.Framework.Interfaces;
+using OpenSim.UserServer;
+using OpenSim.Assets;
+using OpenSim.CAPS;
+using OpenSim.Framework.Console;
+using OpenSim.Physics.Manager;
+
+namespace OpenSim
+{
+ public class OpenSimRoot
+ {
+ private static OpenSimRoot instance = new OpenSimRoot(); //null;
+
+ public static OpenSimRoot Instance
+ {
+ get
+ {
+ return instance;
+ }
+ }
+
+ private OpenSimRoot()
+ {
+
+ }
+
+ public World LocalWorld;
+ public Grid GridServers;
+ public SimConfig Cfg;
+ public SimCAPSHTTPServer HttpServer;
+ public AssetCache AssetCache;
+ public InventoryCache InventoryCache;
+ //public Dictionary ClientThreads = new Dictionary();
+ public Dictionary ClientThreads = new Dictionary();
+ public DateTime startuptime;
+ public OpenSimApplication Application;
+ public bool Sandbox = false;
+
+ public void StartUp()
+ {
+ if (this.Application != null)
+ {
+ this.Application.StartUp();
+ }
+ }
+
+ public void Shutdown()
+ {
+ if (this.Application != null)
+ {
+ this.Application.Shutdown();
+ }
+ }
+ }
+}
diff --git a/OpenSim.RegionServer/SimClient.cs b/OpenSim.RegionServer/SimClient.cs
index d7819b0ae7..d3be19382d 100644
--- a/OpenSim.RegionServer/SimClient.cs
+++ b/OpenSim.RegionServer/SimClient.cs
@@ -60,7 +60,7 @@ namespace OpenSim
private BlockingQueue PacketQueue;
private Dictionary PendingAcks = new Dictionary();
private Dictionary NeedAck = new Dictionary();
- private Dictionary UploadedAssets = new Dictionary();
+ //private Dictionary UploadedAssets = new Dictionary();
private System.Timers.Timer AckTimer;
private uint Sequence = 0;
private object SequenceLock = new object();
@@ -70,7 +70,7 @@ namespace OpenSim
private LLUUID newAssetFolder = LLUUID.Zero;
private bool debug = false;
- public void ack_pack(Packet Pack)
+ private void ack_pack(Packet Pack)
{
//libsecondlife.Packets.PacketAckPacket ack_it = new PacketAckPacket();
//ack_it.Packets = new PacketAckPacket.PacketsBlock[1];
@@ -90,7 +90,7 @@ namespace OpenSim
}
}
- public void ProcessInPacket(Packet Pack)
+ protected virtual void ProcessInPacket(Packet Pack)
{
ack_pack(Pack);
if (debug)
@@ -103,15 +103,15 @@ namespace OpenSim
switch (Pack.Type)
{
case PacketType.CompleteAgentMovement:
- ClientAvatar.CompleteMovement(OpenSimMain.Instance.LocalWorld);
+ ClientAvatar.CompleteMovement(OpenSimRoot.Instance.LocalWorld);
ClientAvatar.SendInitialPosition();
break;
case PacketType.RegionHandshakeReply:
- OpenSimMain.Instance.LocalWorld.SendLayerData(this);
+ OpenSimRoot.Instance.LocalWorld.SendLayerData(this);
break;
case PacketType.AgentWearablesRequest:
ClientAvatar.SendInitialAppearance();
- foreach (SimClient client in OpenSimMain.Instance.ClientThreads.Values)
+ foreach (SimClient client in OpenSimRoot.Instance.ClientThreads.Values)
{
if (client.AgentID != this.AgentID)
{
@@ -120,10 +120,10 @@ namespace OpenSim
client.ClientAvatar.SendAppearanceToOtherAgent(this);
}
}
- OpenSimMain.Instance.LocalWorld.GetInitialPrims(this);
+ OpenSimRoot.Instance.LocalWorld.GetInitialPrims(this);
break;
case PacketType.ObjectAdd:
- OpenSimMain.Instance.LocalWorld.AddNewPrim((ObjectAddPacket)Pack, this);
+ OpenSimRoot.Instance.LocalWorld.AddNewPrim((ObjectAddPacket)Pack, this);
break;
case PacketType.ObjectLink:
OpenSim.Framework.Console.MainConsole.Instance.WriteLine(Pack.ToString());
@@ -135,7 +135,7 @@ namespace OpenSim
ObjectShapePacket shape = (ObjectShapePacket)Pack;
for (int i = 0; i < shape.ObjectData.Length; i++)
{
- foreach (Entity ent in OpenSimMain.Instance.LocalWorld.Entities.Values)
+ foreach (Entity ent in OpenSimRoot.Instance.LocalWorld.Entities.Values)
{
if (ent.localid == shape.ObjectData[i].ObjectLocalID)
{
@@ -152,7 +152,7 @@ namespace OpenSim
if (multipleupdate.ObjectData[i].Type == 9) //change position
{
libsecondlife.LLVector3 pos = new LLVector3(multipleupdate.ObjectData[i].Data, 0);
- foreach (Entity ent in OpenSimMain.Instance.LocalWorld.Entities.Values)
+ foreach (Entity ent in OpenSimRoot.Instance.LocalWorld.Entities.Values)
{
if (ent.localid == multipleupdate.ObjectData[i].ObjectLocalID)
{
@@ -166,7 +166,7 @@ namespace OpenSim
else if (multipleupdate.ObjectData[i].Type == 10)//rotation
{
libsecondlife.LLQuaternion rot = new LLQuaternion(multipleupdate.ObjectData[i].Data, 0, true);
- foreach (Entity ent in OpenSimMain.Instance.LocalWorld.Entities.Values)
+ foreach (Entity ent in OpenSimRoot.Instance.LocalWorld.Entities.Values)
{
if (ent.localid == multipleupdate.ObjectData[i].ObjectLocalID)
{
@@ -179,7 +179,7 @@ namespace OpenSim
{
libsecondlife.LLVector3 scale = new LLVector3(multipleupdate.ObjectData[i].Data, 12);
- foreach (Entity ent in OpenSimMain.Instance.LocalWorld.Entities.Values)
+ foreach (Entity ent in OpenSimRoot.Instance.LocalWorld.Entities.Values)
{
if (ent.localid == multipleupdate.ObjectData[i].ObjectLocalID)
{
@@ -193,13 +193,13 @@ namespace OpenSim
RequestImagePacket imageRequest = (RequestImagePacket)Pack;
for (int i = 0; i < imageRequest.RequestImage.Length; i++)
{
- OpenSimMain.Instance.AssetCache.AddTextureRequest(this, imageRequest.RequestImage[i].Image);
+ OpenSimRoot.Instance.AssetCache.AddTextureRequest(this, imageRequest.RequestImage[i].Image);
}
break;
case PacketType.TransferRequest:
//Console.WriteLine("OpenSimClient.cs:ProcessInPacket() - Got transfer request");
TransferRequestPacket transfer = (TransferRequestPacket)Pack;
- OpenSimMain.Instance.AssetCache.AddAssetRequest(this, transfer);
+ OpenSimRoot.Instance.AssetCache.AddAssetRequest(this, transfer);
break;
case PacketType.AgentUpdate:
ClientAvatar.HandleUpdate((AgentUpdatePacket)Pack);
@@ -219,17 +219,18 @@ namespace OpenSim
kill.ObjectData = new KillObjectPacket.ObjectDataBlock[1];
kill.ObjectData[0] = new KillObjectPacket.ObjectDataBlock();
kill.ObjectData[0].ID = this.ClientAvatar.localid;
- foreach (SimClient client in OpenSimMain.Instance.ClientThreads.Values)
+ foreach (SimClient client in OpenSimRoot.Instance.ClientThreads.Values)
{
client.OutPacket(kill);
}
- OpenSimMain.Instance.GridServers.GridServer.LogoutSession(this.SessionID, this.AgentID, this.CircuitCode);
- lock (OpenSimMain.Instance.LocalWorld.Entities)
+ OpenSimRoot.Instance.GridServers.GridServer.LogoutSession(this.SessionID, this.AgentID, this.CircuitCode);
+ lock (OpenSimRoot.Instance.LocalWorld.Entities)
{
- OpenSimMain.Instance.LocalWorld.Entities.Remove(this.AgentID);
+ OpenSimRoot.Instance.LocalWorld.Entities.Remove(this.AgentID);
}
//need to do other cleaning up here too
- OpenSimMain.Instance.ClientThreads.Remove(this.userEP);
+ OpenSimRoot.Instance.ClientThreads.Remove(this.CircuitCode); //this.userEP);
+ OpenSimRoot.Instance.Application.RemoveClientCircuit(this.CircuitCode);
this.ClientThread.Abort();
break;
case PacketType.ChatFromViewer:
@@ -246,7 +247,7 @@ namespace OpenSim
reply.ChatData.FromName = _enc.GetBytes(this.ClientAvatar.firstname + " " + this.ClientAvatar.lastname + "\0");
reply.ChatData.OwnerID = this.AgentID;
reply.ChatData.SourceID = this.AgentID;
- foreach (SimClient client in OpenSimMain.Instance.ClientThreads.Values)
+ foreach (SimClient client in OpenSimRoot.Instance.ClientThreads.Values)
{
client.OutPacket(reply);
}
@@ -255,7 +256,7 @@ namespace OpenSim
ObjectImagePacket imagePack = (ObjectImagePacket)Pack;
for (int i = 0; i < imagePack.ObjectData.Length; i++)
{
- foreach (Entity ent in OpenSimMain.Instance.LocalWorld.Entities.Values)
+ foreach (Entity ent in OpenSimRoot.Instance.LocalWorld.Entities.Values)
{
if (ent.localid == imagePack.ObjectData[i].ObjectLocalID)
{
@@ -266,7 +267,7 @@ namespace OpenSim
break;
case PacketType.ObjectFlagUpdate:
ObjectFlagUpdatePacket flags = (ObjectFlagUpdatePacket)Pack;
- foreach (Entity ent in OpenSimMain.Instance.LocalWorld.Entities.Values)
+ foreach (Entity ent in OpenSimRoot.Instance.LocalWorld.Entities.Values)
{
if (ent.localid == flags.AgentData.ObjectLocalID)
{
@@ -313,19 +314,19 @@ namespace OpenSim
} */
break;
case PacketType.CreateInventoryFolder:
- Console.WriteLine(Pack.ToString());
+ //Console.WriteLine(Pack.ToString());
break;
case PacketType.CreateInventoryItem:
- Console.WriteLine(Pack.ToString());
+ //Console.WriteLine(Pack.ToString());
break;
case PacketType.FetchInventory:
Console.WriteLine("fetch item packet");
FetchInventoryPacket FetchInventory = (FetchInventoryPacket)Pack;
- OpenSimMain.Instance.InventoryCache.FetchInventory(this, FetchInventory);
+ OpenSimRoot.Instance.InventoryCache.FetchInventory(this, FetchInventory);
break;
case PacketType.FetchInventoryDescendents:
FetchInventoryDescendentsPacket Fetch = (FetchInventoryDescendentsPacket)Pack;
- OpenSimMain.Instance.InventoryCache.FetchInventoryDescendents(this, Fetch);
+ OpenSimRoot.Instance.InventoryCache.FetchInventoryDescendents(this, Fetch);
break;
}
}
@@ -391,7 +392,7 @@ namespace OpenSim
ResendUnacked();
}
- public void ProcessOutPacket(Packet Pack)
+ protected virtual void ProcessOutPacket(Packet Pack)
{
// Keep track of when this packet was sent out
@@ -464,11 +465,11 @@ namespace OpenSim
if (Pack.Header.Zerocoded)
{
int packetsize = Helpers.ZeroEncode(sendbuffer, sendbuffer.Length, ZeroOutBuffer);
- OpenSimMain.Instance.Server.SendTo(ZeroOutBuffer, packetsize, SocketFlags.None, userEP);
+ OpenSimRoot.Instance.Application.SendPacketTo(ZeroOutBuffer, packetsize, SocketFlags.None, CircuitCode);//userEP);
}
else
{
- OpenSimMain.Instance.Server.SendTo(sendbuffer, sendbuffer.Length, SocketFlags.None, userEP);
+ OpenSimRoot.Instance.Application.SendPacketTo(sendbuffer, sendbuffer.Length, SocketFlags.None, CircuitCode); //userEP);
}
}
catch (Exception)
@@ -479,7 +480,7 @@ namespace OpenSim
}
- public void InPacket(Packet NewPack)
+ public virtual void InPacket(Packet NewPack)
{
// Handle appended ACKs
if (NewPack.Header.AppendedAcks)
@@ -524,7 +525,7 @@ namespace OpenSim
}
- public void OutPacket(Packet NewPack)
+ public virtual void OutPacket(Packet NewPack)
{
QueItem item = new QueItem();
item.Packet = NewPack;
@@ -547,7 +548,7 @@ namespace OpenSim
ClientThread.Start();
}
- private void ClientLoop()
+ protected virtual void ClientLoop()
{
OpenSim.Framework.Console.MainConsole.Instance.WriteLine("OpenSimClient.cs:ClientLoop() - Entered loop");
while (true)
@@ -566,17 +567,17 @@ namespace OpenSim
}
}
- private void InitNewClient()
+ protected virtual void InitNewClient()
{
OpenSim.Framework.Console.MainConsole.Instance.WriteLine("OpenSimClient.cs:InitNewClient() - Adding viewer agent to world");
- OpenSimMain.Instance.LocalWorld.AddViewerAgent(this);
- world.Entity tempent = OpenSimMain.Instance.LocalWorld.Entities[this.AgentID];
+ OpenSimRoot.Instance.LocalWorld.AddViewerAgent(this);
+ world.Entity tempent = OpenSimRoot.Instance.LocalWorld.Entities[this.AgentID];
this.ClientAvatar = (world.Avatar)tempent;
}
- private void AuthUser()
+ protected virtual void AuthUser()
{
- AuthenticateResponse sessionInfo = OpenSimMain.Instance.GridServers.GridServer.AuthenticateSession(cirpack.CircuitCode.SessionID, cirpack.CircuitCode.ID, cirpack.CircuitCode.Code);
+ AuthenticateResponse sessionInfo = OpenSimRoot.Instance.GridServers.GridServer.AuthenticateSession(cirpack.CircuitCode.SessionID, cirpack.CircuitCode.ID, cirpack.CircuitCode.Code);
if (!sessionInfo.Authorised)
{
//session/circuit not authorised
@@ -590,29 +591,28 @@ namespace OpenSim
this.AgentID = cirpack.CircuitCode.ID;
this.SessionID = cirpack.CircuitCode.SessionID;
this.CircuitCode = cirpack.CircuitCode.Code;
- InitNewClient();
+ InitNewClient(); //shouldn't be called here as we might be a child agent and not want a full avatar
this.ClientAvatar.firstname = sessionInfo.LoginInfo.First;
this.ClientAvatar.lastname = sessionInfo.LoginInfo.Last;
// Create Inventory, currently only works for sandbox mode
- if (OpenSimMain.Instance.sandbox)
+ if (OpenSimRoot.Instance.Sandbox)
{
if (sessionInfo.LoginInfo.InventoryFolder != null)
{
this.CreateInventory(sessionInfo.LoginInfo.InventoryFolder);
if (sessionInfo.LoginInfo.BaseFolder != null)
{
- OpenSimMain.Instance.InventoryCache.CreateNewInventoryFolder(this, sessionInfo.LoginInfo.BaseFolder);
+ OpenSimRoot.Instance.InventoryCache.CreateNewInventoryFolder(this, sessionInfo.LoginInfo.BaseFolder);
this.newAssetFolder = sessionInfo.LoginInfo.BaseFolder;
- AssetBase[] inventorySet = OpenSimMain.Instance.AssetCache.CreateNewInventorySet(this.AgentID);
+ AssetBase[] inventorySet = OpenSimRoot.Instance.AssetCache.CreateNewInventorySet(this.AgentID);
if (inventorySet != null)
{
for (int i = 0; i < inventorySet.Length; i++)
{
if (inventorySet[i] != null)
{
- Console.WriteLine(Helpers.FieldToString(inventorySet[i].Data));
- OpenSimMain.Instance.InventoryCache.AddNewInventoryItem(this, sessionInfo.LoginInfo.BaseFolder, inventorySet[i]);
+ OpenSimRoot.Instance.InventoryCache.AddNewInventoryItem(this, sessionInfo.LoginInfo.BaseFolder, inventorySet[i]);
}
}
}
@@ -628,8 +628,8 @@ namespace OpenSim
{
AgentInventory inventory = new AgentInventory();
inventory.AgentID = this.AgentID;
- OpenSimMain.Instance.InventoryCache.AddNewAgentsInventory(inventory);
- OpenSimMain.Instance.InventoryCache.CreateNewInventoryFolder(this, baseFolder);
+ OpenSimRoot.Instance.InventoryCache.AddNewAgentsInventory(inventory);
+ OpenSimRoot.Instance.InventoryCache.CreateNewInventoryFolder(this, baseFolder);
}
}
}
diff --git a/OpenSim.RegionServer/SimConsole.cs b/OpenSim.RegionServer/SimConsole.cs
index 5dd7ab3afa..d6d5e44210 100644
--- a/OpenSim.RegionServer/SimConsole.cs
+++ b/OpenSim.RegionServer/SimConsole.cs
@@ -156,11 +156,11 @@ namespace OpenSim
break;
case "regenerate":
- OpenSimMain.Instance.LocalWorld.RegenerateTerrain();
+ OpenSimRoot.Instance.LocalWorld.RegenerateTerrain();
break;
case "shutdown":
- OpenSimMain.Shutdown();
+ OpenSimRoot.Instance.Shutdown();
break;
}
return null;
@@ -170,16 +170,16 @@ namespace OpenSim
public override void ShowCommands(string ShowWhat) {
switch(ShowWhat) {
case "uptime":
- this.WriteLine("OpenSim has been running since " + OpenSimMain.Instance.startuptime.ToString());
- this.WriteLine("That is " + (DateTime.Now-OpenSimMain.Instance.startuptime).ToString());
+ this.WriteLine("OpenSim has been running since " + OpenSimRoot.Instance.startuptime.ToString());
+ this.WriteLine("That is " + (DateTime.Now-OpenSimRoot.Instance.startuptime).ToString());
break;
case "users":
OpenSim.world.Avatar TempAv;
this.WriteLine(String.Format("{0,-16}{1,-16}{2,-25}{3,-25}{4,-16}{5,-16}","Firstname", "Lastname","Agent ID", "Session ID", "Circuit", "IP"));
- foreach (libsecondlife.LLUUID UUID in OpenSimMain.Instance.LocalWorld.Entities.Keys) {
- if(OpenSimMain.Instance.LocalWorld.Entities[UUID].ToString()== "OpenSim.world.Avatar")
+ foreach (libsecondlife.LLUUID UUID in OpenSimRoot.Instance.LocalWorld.Entities.Keys) {
+ if(OpenSimRoot.Instance.LocalWorld.Entities[UUID].ToString()== "OpenSim.world.Avatar")
{
- TempAv=(OpenSim.world.Avatar)OpenSimMain.Instance.LocalWorld.Entities[UUID];
+ TempAv=(OpenSim.world.Avatar)OpenSimRoot.Instance.LocalWorld.Entities[UUID];
this.WriteLine(String.Format("{0,-16}{1,-16}{2,-25}{3,-25}{4,-16},{5,-16}",TempAv.firstname, TempAv.lastname,UUID, TempAv.ControllingClient.SessionID, TempAv.ControllingClient.CircuitCode, TempAv.ControllingClient.userEP.ToString()));
}
}
@@ -190,7 +190,7 @@ namespace OpenSim
// Displays a prompt to the user and then runs the command they entered
public override void MainConsolePrompt() {
string[] tempstrarray;
- string tempstr = this.CmdPrompt("OpenSim-" + OpenSimMain.Instance.Cfg.RegionHandle.ToString() + " # ");
+ string tempstr = this.CmdPrompt("OpenSim-" + OpenSimRoot.Instance.Cfg.RegionHandle.ToString() + " # ");
tempstrarray = tempstr.Split(' ');
string cmd=tempstrarray[0];
Array.Reverse(tempstrarray);
diff --git a/OpenSim.RegionServer/UserServer/LocalUserProfileManager.cs b/OpenSim.RegionServer/UserServer/LocalUserProfileManager.cs
index 2b828f5072..83e340b473 100644
--- a/OpenSim.RegionServer/UserServer/LocalUserProfileManager.cs
+++ b/OpenSim.RegionServer/UserServer/LocalUserProfileManager.cs
@@ -29,8 +29,8 @@ namespace OpenSim.UserServer
uint circode = (uint)response["circuit_code"];
theUser.AddSimCircuit(circode, LLUUID.Random());
response["home"] = "{'region_handle':[r" + (997 * 256).ToString() + ",r" + (996 * 256).ToString() + "], 'position':[r" + theUser.homepos.X.ToString() + ",r" + theUser.homepos.Y.ToString() + ",r" + theUser.homepos.Z.ToString() + "], 'look_at':[r" + theUser.homelookat.X.ToString() + ",r" + theUser.homelookat.Y.ToString() + ",r" + theUser.homelookat.Z.ToString() + "]}";
- response["sim_port"] = OpenSimMain.Instance.Cfg.IPListenPort;
- response["sim_ip"] = OpenSimMain.Instance.Cfg.IPListenAddr;
+ response["sim_port"] = OpenSimRoot.Instance.Cfg.IPListenPort;
+ response["sim_ip"] = OpenSimRoot.Instance.Cfg.IPListenAddr;
response["region_y"] = (Int32)996 * 256;
response["region_x"] = (Int32)997* 256;
@@ -67,7 +67,7 @@ namespace OpenSim.UserServer
_login.InventoryFolder = new LLUUID((string)Inventory1["folder_id"]);
//working on local computer if so lets add to the gridserver's list of sessions?
- if (OpenSimMain.Instance.GridServers.GridServer.GetName() == "Local")
+ if (OpenSimRoot.Instance.GridServers.GridServer.GetName() == "Local")
{
((LocalGridBase)this._gridServer).AddNewSession(_login);
}
diff --git a/OpenSim.RegionServer/UserServer/LoginServer.cs b/OpenSim.RegionServer/UserServer/LoginServer.cs
index 1da23bf322..f50d5211d7 100644
--- a/OpenSim.RegionServer/UserServer/LoginServer.cs
+++ b/OpenSim.RegionServer/UserServer/LoginServer.cs
@@ -289,10 +289,11 @@ namespace OpenSim.UserServer
XmlRpcResponse response = (XmlRpcResponse)(new XmlRpcResponseDeserializer()).Deserialize(this._defaultResponse);
Hashtable responseData = (Hashtable)response.Value;
- responseData["sim_port"] = OpenSimMain.Instance.Cfg.IPListenPort;
- responseData["sim_ip"] = OpenSimMain.Instance.Cfg.IPListenAddr;
+ responseData["sim_port"] = OpenSimRoot.Instance.Cfg.IPListenPort;
+ responseData["sim_ip"] = OpenSimRoot.Instance.Cfg.IPListenAddr;
responseData["agent_id"] = Agent.ToStringHyphenated();
responseData["session_id"] = Session.ToStringHyphenated();
+ responseData["circuit_code"] = (Int32)(Util.RandomClass.Next());
responseData["seconds_since_epoch"] = (Int32)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds;
responseData["login-flags"] = LoginFlags;
responseData["global-textures"] = GlobalTextures;
@@ -324,7 +325,7 @@ namespace OpenSim.UserServer
_login.InventoryFolder = InventoryFolderID;
//working on local computer if so lets add to the gridserver's list of sessions?
- if (OpenSimMain.Instance.GridServers.GridServer.GetName() == "Local")
+ if (OpenSimRoot.Instance.GridServers.GridServer.GetName() == "Local")
{
((LocalGridBase)this._gridServer).AddNewSession(_login);
}
diff --git a/OpenSim.RegionServer/world/Avatar.cs b/OpenSim.RegionServer/world/Avatar.cs
index 3a4c8b9625..b4a3b82d85 100644
--- a/OpenSim.RegionServer/world/Avatar.cs
+++ b/OpenSim.RegionServer/world/Avatar.cs
@@ -27,9 +27,9 @@ namespace OpenSim.world
{
OpenSim.Framework.Console.MainConsole.Instance.WriteLine("Avatar.cs - Loading details from grid (DUMMY)");
ControllingClient = TheClient;
- localid = 8880000 + (OpenSimMain.Instance.LocalWorld._localNumber++);
+ localid = 8880000 + (OpenSimRoot.Instance.LocalWorld._localNumber++);
position = new LLVector3(100.0f, 100.0f, 30.0f);
- position.Z = OpenSimMain.Instance.LocalWorld.LandMap[(int)position.Y * 256 + (int)position.X] + 1;
+ position.Z = OpenSimRoot.Instance.LocalWorld.LandMap[(int)position.Y * 256 + (int)position.X] + 1;
}
public PhysicsActor PhysActor
@@ -73,11 +73,11 @@ namespace OpenSim.world
//use CreateTerseBlock()
ImprovedTerseObjectUpdatePacket.ObjectDataBlock terseBlock = CreateTerseBlock();
ImprovedTerseObjectUpdatePacket terse = new ImprovedTerseObjectUpdatePacket();
- terse.RegionData.RegionHandle = OpenSimMain.Instance.Cfg.RegionHandle; // FIXME
+ terse.RegionData.RegionHandle = OpenSimRoot.Instance.Cfg.RegionHandle; // FIXME
terse.RegionData.TimeDilation = 64096;
terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1];
terse.ObjectData[0] = terseBlock;
- foreach (SimClient client in OpenSimMain.Instance.ClientThreads.Values)
+ foreach (SimClient client in OpenSimRoot.Instance.ClientThreads.Values)
{
client.OutPacket(terse);
}
@@ -95,11 +95,11 @@ namespace OpenSim.world
//It has been a while since last update was sent so lets send one.
ImprovedTerseObjectUpdatePacket.ObjectDataBlock terseBlock = CreateTerseBlock();
ImprovedTerseObjectUpdatePacket terse = new ImprovedTerseObjectUpdatePacket();
- terse.RegionData.RegionHandle = OpenSimMain.Instance.Cfg.RegionHandle; // FIXME
+ terse.RegionData.RegionHandle = OpenSimRoot.Instance.Cfg.RegionHandle; // FIXME
terse.RegionData.TimeDilation = 64096;
terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1];
terse.ObjectData[0] = terseBlock;
- foreach (SimClient client in OpenSimMain.Instance.ClientThreads.Values)
+ foreach (SimClient client in OpenSimRoot.Instance.ClientThreads.Values)
{
client.OutPacket(terse);
}
@@ -141,7 +141,7 @@ namespace OpenSim.world
AgentMovementCompletePacket mov = new AgentMovementCompletePacket();
mov.AgentData.SessionID = this.ControllingClient.SessionID;
mov.AgentData.AgentID = this.ControllingClient.AgentID;
- mov.Data.RegionHandle = OpenSimMain.Instance.Cfg.RegionHandle;
+ mov.Data.RegionHandle = OpenSimRoot.Instance.Cfg.RegionHandle;
// TODO - dynamicalise this stuff
mov.Data.Timestamp = 1172750370;
mov.Data.Position = new LLVector3(100f, 100f, 23f);
@@ -156,7 +156,7 @@ namespace OpenSim.world
System.Text.Encoding _enc = System.Text.Encoding.ASCII;
//send a objectupdate packet with information about the clients avatar
ObjectUpdatePacket objupdate = new ObjectUpdatePacket();
- objupdate.RegionData.RegionHandle = OpenSimMain.Instance.Cfg.RegionHandle;
+ objupdate.RegionData.RegionHandle = OpenSimRoot.Instance.Cfg.RegionHandle;
objupdate.RegionData.TimeDilation = 64096;
objupdate.ObjectData = new libsecondlife.Packets.ObjectUpdatePacket.ObjectDataBlock[1];
@@ -171,9 +171,9 @@ namespace OpenSim.world
byte[] pb = pos2.GetBytes();
Array.Copy(pb, 0, objupdate.ObjectData[0].ObjectData, 16, pb.Length);
- OpenSimMain.Instance.LocalWorld._localNumber++;
+ OpenSimRoot.Instance.LocalWorld._localNumber++;
- foreach (SimClient client in OpenSimMain.Instance.ClientThreads.Values)
+ foreach (SimClient client in OpenSimRoot.Instance.ClientThreads.Values)
{
client.OutPacket(objupdate);
if (client.AgentID != ControllingClient.AgentID)
@@ -215,7 +215,7 @@ namespace OpenSim.world
System.Text.Encoding _enc = System.Text.Encoding.ASCII;
//send a objectupdate packet with information about the clients avatar
ObjectUpdatePacket objupdate = new ObjectUpdatePacket();
- objupdate.RegionData.RegionHandle = OpenSimMain.Instance.Cfg.RegionHandle;
+ objupdate.RegionData.RegionHandle = OpenSimRoot.Instance.Cfg.RegionHandle;
objupdate.RegionData.TimeDilation = 64096;
objupdate.ObjectData = new libsecondlife.Packets.ObjectUpdatePacket.ObjectDataBlock[1];
@@ -394,7 +394,7 @@ namespace OpenSim.world
handshake.RegionInfo.SimAccess = 13;
handshake.RegionInfo.WaterHeight = 20;
handshake.RegionInfo.RegionFlags = 72458694;
- handshake.RegionInfo.SimName = _enc.GetBytes(OpenSimMain.Instance.Cfg.RegionName + "\0");
+ handshake.RegionInfo.SimName = _enc.GetBytes(OpenSimRoot.Instance.Cfg.RegionName + "\0");
handshake.RegionInfo.SimOwner = new LLUUID("00000000-0000-0000-0000-000000000000");
handshake.RegionInfo.TerrainBase0 = new LLUUID("b8d3965a-ad78-bf43-699b-bff8eca6c975");
handshake.RegionInfo.TerrainBase1 = new LLUUID("abb783e6-3e93-26c0-248a-247666855da3");
diff --git a/OpenSim.RegionServer/world/Primitive.cs b/OpenSim.RegionServer/world/Primitive.cs
index efed7e3e51..b190d818df 100644
--- a/OpenSim.RegionServer/world/Primitive.cs
+++ b/OpenSim.RegionServer/world/Primitive.cs
@@ -99,7 +99,7 @@ namespace OpenSim.world
{
if (this.newPrimFlag)
{
- foreach (SimClient client in OpenSimMain.Instance.ClientThreads.Values)
+ foreach (SimClient client in OpenSimRoot.Instance.ClientThreads.Values)
{
client.OutPacket(OurPacket);
}
@@ -108,11 +108,11 @@ namespace OpenSim.world
else if (this.updateFlag)
{
ImprovedTerseObjectUpdatePacket terse = new ImprovedTerseObjectUpdatePacket();
- terse.RegionData.RegionHandle = OpenSimMain.Instance.Cfg.RegionHandle; // FIXME
+ terse.RegionData.RegionHandle = OpenSimRoot.Instance.Cfg.RegionHandle; // FIXME
terse.RegionData.TimeDilation = 64096;
terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1];
terse.ObjectData[0] = this.CreateImprovedBlock();
- foreach (SimClient client in OpenSimMain.Instance.ClientThreads.Values)
+ foreach (SimClient client in OpenSimRoot.Instance.ClientThreads.Values)
{
client.OutPacket(terse);
}
@@ -120,7 +120,7 @@ namespace OpenSim.world
}
else if (this.dirtyFlag)
{
- foreach (SimClient client in OpenSimMain.Instance.ClientThreads.Values)
+ foreach (SimClient client in OpenSimRoot.Instance.ClientThreads.Values)
{
UpdateClient(client);
}
@@ -131,11 +131,11 @@ namespace OpenSim.world
if (this._physActor != null && this.physicsEnabled)
{
ImprovedTerseObjectUpdatePacket terse = new ImprovedTerseObjectUpdatePacket();
- terse.RegionData.RegionHandle = OpenSimMain.Instance.Cfg.RegionHandle; // FIXME
+ terse.RegionData.RegionHandle = OpenSimRoot.Instance.Cfg.RegionHandle; // FIXME
terse.RegionData.TimeDilation = 64096;
terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1];
terse.ObjectData[0] = this.CreateImprovedBlock();
- foreach (SimClient client in OpenSimMain.Instance.ClientThreads.Values)
+ foreach (SimClient client in OpenSimRoot.Instance.ClientThreads.Values)
{
client.OutPacket(terse);
}
@@ -254,7 +254,7 @@ namespace OpenSim.world
public void CreateFromPacket(ObjectAddPacket addPacket, LLUUID agentID, uint localID)
{
ObjectUpdatePacket objupdate = new ObjectUpdatePacket();
- objupdate.RegionData.RegionHandle = OpenSimMain.Instance.Cfg.RegionHandle;
+ objupdate.RegionData.RegionHandle = OpenSimRoot.Instance.Cfg.RegionHandle;
objupdate.RegionData.TimeDilation = 64096;
objupdate.ObjectData = new libsecondlife.Packets.ObjectUpdatePacket.ObjectDataBlock[1];
@@ -322,7 +322,7 @@ namespace OpenSim.world
{
//need to clean this up as it shares a lot of code with CreateFromPacket()
ObjectUpdatePacket objupdate = new ObjectUpdatePacket();
- objupdate.RegionData.RegionHandle = OpenSimMain.Instance.Cfg.RegionHandle;
+ objupdate.RegionData.RegionHandle = OpenSimRoot.Instance.Cfg.RegionHandle;
objupdate.RegionData.TimeDilation = 64096;
objupdate.ObjectData = new libsecondlife.Packets.ObjectUpdatePacket.ObjectDataBlock[1];
@@ -478,7 +478,7 @@ namespace OpenSim.world
this.primData.LocalID = this.localid;
this.primData.Position = this.position;
this.primData.Rotation = new LLQuaternion(this.rotation.x, this.rotation.y, this.rotation.z, this.rotation.w);
- OpenSimMain.Instance.LocalWorld.localStorage.StorePrim(this.primData);
+ OpenSimRoot.Instance.LocalWorld.localStorage.StorePrim(this.primData);
}
}
diff --git a/OpenSim.RegionServer/world/World.cs b/OpenSim.RegionServer/world/World.cs
index 3bd5e944e4..ba99233688 100644
--- a/OpenSim.RegionServer/world/World.cs
+++ b/OpenSim.RegionServer/world/World.cs
@@ -114,9 +114,9 @@ namespace OpenSim.world
HeightmapGenHills hills = new HeightmapGenHills();
this.LandMap = hills.GenerateHeightmap(200, 4.0f, 80.0f, false);
this.phyScene.SetTerrain(this.LandMap);
- OpenSimMain.Instance.Cfg.SaveMap(this.LandMap);
+ OpenSimRoot.Instance.Cfg.SaveMap(this.LandMap);
- foreach(SimClient client in OpenSimMain.Instance.ClientThreads.Values) {
+ foreach(SimClient client in OpenSimRoot.Instance.ClientThreads.Values) {
this.SendLayerData(client);
}
}