Gird mode in sugilite should now work in so far as you should be able to login and move between regions in the same instance. Moving to regions in a different instance of opensim still needs implementing (working on it now).
Also trying to look at the map in grid mode will crash the server.Sugilite
parent
9f5f65c847
commit
7f03246653
|
@ -31,6 +31,7 @@ using libsecondlife.Packets;
|
||||||
using OpenSim.Framework.Data;
|
using OpenSim.Framework.Data;
|
||||||
using OpenSim.Framework.Interfaces;
|
using OpenSim.Framework.Interfaces;
|
||||||
using OpenSim.Framework.Types;
|
using OpenSim.Framework.Types;
|
||||||
|
using OpenSim.Framework.Servers;
|
||||||
|
|
||||||
namespace OpenSim.Framework.Communications
|
namespace OpenSim.Framework.Communications
|
||||||
{
|
{
|
||||||
|
@ -42,7 +43,7 @@ namespace OpenSim.Framework.Communications
|
||||||
public IInterRegionCommunications InterRegion;
|
public IInterRegionCommunications InterRegion;
|
||||||
|
|
||||||
public NetworkServersInfo ServersInfo;
|
public NetworkServersInfo ServersInfo;
|
||||||
public CommunicationsManager(NetworkServersInfo serversInfo)
|
public CommunicationsManager(NetworkServersInfo serversInfo, BaseHttpServer httpServer)
|
||||||
{
|
{
|
||||||
ServersInfo = serversInfo;
|
ServersInfo = serversInfo;
|
||||||
}
|
}
|
||||||
|
|
|
@ -80,6 +80,10 @@ namespace OpenSim.Framework.Data
|
||||||
public uint serverPort;
|
public uint serverPort;
|
||||||
public string serverURI = "";
|
public string serverURI = "";
|
||||||
|
|
||||||
|
public uint httpPort;
|
||||||
|
public uint remotingPort;
|
||||||
|
public string httpServerURI = "";
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Set of optional overrides. Can be used to create non-eulicidean spaces.
|
/// Set of optional overrides. Can be used to create non-eulicidean spaces.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -143,7 +147,10 @@ namespace OpenSim.Framework.Data
|
||||||
simData.regionHandle = Helpers.UIntsToLong((simData.regionLocX * 256), (simData.regionLocY * 256));
|
simData.regionHandle = Helpers.UIntsToLong((simData.regionLocX * 256), (simData.regionLocY * 256));
|
||||||
simData.serverIP = (string)responseData["sim_ip"];
|
simData.serverIP = (string)responseData["sim_ip"];
|
||||||
simData.serverPort = Convert.ToUInt32((string)responseData["sim_port"]);
|
simData.serverPort = Convert.ToUInt32((string)responseData["sim_port"]);
|
||||||
|
simData.httpPort = Convert.ToUInt32((string)responseData["http_port"]);
|
||||||
|
simData.remotingPort = Convert.ToUInt32((string)responseData["remoting_port"]);
|
||||||
simData.serverURI = "http://" + simData.serverIP + ":" + simData.serverPort.ToString() + "/";
|
simData.serverURI = "http://" + simData.serverIP + ":" + simData.serverPort.ToString() + "/";
|
||||||
|
simData.httpServerURI = "http://" + simData.serverIP + ":" + simData.httpPort.ToString() + "/";
|
||||||
simData.UUID = new LLUUID((string)responseData["region_UUID"]);
|
simData.UUID = new LLUUID((string)responseData["region_UUID"]);
|
||||||
simData.regionName = (string)responseData["region_name"];
|
simData.regionName = (string)responseData["region_name"];
|
||||||
|
|
||||||
|
@ -172,6 +179,9 @@ namespace OpenSim.Framework.Data
|
||||||
simData.regionHandle = Helpers.UIntsToLong((simData.regionLocX * 256), (simData.regionLocY * 256));
|
simData.regionHandle = Helpers.UIntsToLong((simData.regionLocX * 256), (simData.regionLocY * 256));
|
||||||
simData.serverIP = (string)responseData["sim_ip"];
|
simData.serverIP = (string)responseData["sim_ip"];
|
||||||
simData.serverPort = Convert.ToUInt32((string)responseData["sim_port"]);
|
simData.serverPort = Convert.ToUInt32((string)responseData["sim_port"]);
|
||||||
|
simData.httpPort = Convert.ToUInt32((string)responseData["http_port"]);
|
||||||
|
simData.remotingPort = Convert.ToUInt32((string)responseData["remoting_port"]);
|
||||||
|
simData.httpServerURI = "http://" + simData.serverIP + ":" + simData.httpPort.ToString() + "/";
|
||||||
simData.serverURI = "http://" + simData.serverIP + ":" + simData.serverPort.ToString() + "/";
|
simData.serverURI = "http://" + simData.serverIP + ":" + simData.serverPort.ToString() + "/";
|
||||||
simData.UUID = new LLUUID((string)responseData["region_UUID"]);
|
simData.UUID = new LLUUID((string)responseData["region_UUID"]);
|
||||||
simData.regionName = (string)responseData["region_name"];
|
simData.regionName = (string)responseData["region_name"];
|
||||||
|
|
|
@ -261,12 +261,16 @@ namespace OpenSim.Grid.GridServer
|
||||||
|
|
||||||
TheSim.serverIP = (string)requestData["sim_ip"];
|
TheSim.serverIP = (string)requestData["sim_ip"];
|
||||||
TheSim.serverPort = Convert.ToUInt32((string)requestData["sim_port"]);
|
TheSim.serverPort = Convert.ToUInt32((string)requestData["sim_port"]);
|
||||||
|
TheSim.httpPort = Convert.ToUInt32((string)requestData["http_port"]);
|
||||||
|
TheSim.remotingPort = Convert.ToUInt32((string)requestData["remoting_port"]);
|
||||||
TheSim.regionLocX = Convert.ToUInt32((string)requestData["region_locx"]);
|
TheSim.regionLocX = Convert.ToUInt32((string)requestData["region_locx"]);
|
||||||
TheSim.regionLocY = Convert.ToUInt32((string)requestData["region_locy"]);
|
TheSim.regionLocY = Convert.ToUInt32((string)requestData["region_locy"]);
|
||||||
TheSim.regionLocZ = 0;
|
TheSim.regionLocZ = 0;
|
||||||
|
|
||||||
TheSim.regionHandle = Helpers.UIntsToLong((TheSim.regionLocX * 256), (TheSim.regionLocY * 256));
|
TheSim.regionHandle = Helpers.UIntsToLong((TheSim.regionLocX * 256), (TheSim.regionLocY * 256));
|
||||||
|
System.Console.WriteLine("adding region " + TheSim.regionLocX + " , " + TheSim.regionLocY + " , " + TheSim.regionHandle);
|
||||||
TheSim.serverURI = "http://" + TheSim.serverIP + ":" + TheSim.serverPort + "/";
|
TheSim.serverURI = "http://" + TheSim.serverIP + ":" + TheSim.serverPort + "/";
|
||||||
|
TheSim.httpServerURI = "http://" + TheSim.serverIP + ":" + TheSim.httpPort + "/";
|
||||||
|
|
||||||
Console.WriteLine("NEW SIM: " + TheSim.serverURI);
|
Console.WriteLine("NEW SIM: " + TheSim.serverURI);
|
||||||
TheSim.regionName = (string)requestData["sim_name"];
|
TheSim.regionName = (string)requestData["sim_name"];
|
||||||
|
@ -400,6 +404,8 @@ namespace OpenSim.Grid.GridServer
|
||||||
{
|
{
|
||||||
responseData["sim_ip"] = simData.serverIP;
|
responseData["sim_ip"] = simData.serverIP;
|
||||||
responseData["sim_port"] = simData.serverPort.ToString();
|
responseData["sim_port"] = simData.serverPort.ToString();
|
||||||
|
responseData["http_port"] = simData.httpPort.ToString();
|
||||||
|
responseData["remoting_port"] = simData.remotingPort.ToString();
|
||||||
responseData["region_locx"] = simData.regionLocX.ToString() ;
|
responseData["region_locx"] = simData.regionLocX.ToString() ;
|
||||||
responseData["region_locy"] = simData.regionLocY.ToString();
|
responseData["region_locy"] = simData.regionLocY.ToString();
|
||||||
responseData["region_UUID"] = simData.UUID.UUID.ToString();
|
responseData["region_UUID"] = simData.UUID.UUID.ToString();
|
||||||
|
@ -438,7 +444,7 @@ namespace OpenSim.Grid.GridServer
|
||||||
response.Value = responseData;
|
response.Value = responseData;
|
||||||
IList simProfileList = new ArrayList();
|
IList simProfileList = new ArrayList();
|
||||||
|
|
||||||
bool fastMode = true; // MySQL Only
|
bool fastMode = false; // MySQL Only
|
||||||
|
|
||||||
if (fastMode)
|
if (fastMode)
|
||||||
{
|
{
|
||||||
|
@ -449,6 +455,7 @@ namespace OpenSim.Grid.GridServer
|
||||||
Hashtable simProfileBlock = new Hashtable();
|
Hashtable simProfileBlock = new Hashtable();
|
||||||
simProfileBlock["x"] = aSim.Value.regionLocX.ToString();
|
simProfileBlock["x"] = aSim.Value.regionLocX.ToString();
|
||||||
simProfileBlock["y"] = aSim.Value.regionLocY.ToString();
|
simProfileBlock["y"] = aSim.Value.regionLocY.ToString();
|
||||||
|
System.Console.WriteLine("send neighbour info for " + aSim.Value.regionLocX.ToString() + " , " + aSim.Value.regionLocY.ToString());
|
||||||
simProfileBlock["name"] = aSim.Value.regionName;
|
simProfileBlock["name"] = aSim.Value.regionName;
|
||||||
simProfileBlock["access"] = 21;
|
simProfileBlock["access"] = 21;
|
||||||
simProfileBlock["region-flags"] = 512;
|
simProfileBlock["region-flags"] = 512;
|
||||||
|
@ -470,11 +477,12 @@ namespace OpenSim.Grid.GridServer
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
SimProfileData simProfile;
|
SimProfileData simProfile;
|
||||||
for (int x = xmin; x < xmax; x++)
|
for (int x = xmin; x < xmax+1; x++)
|
||||||
{
|
{
|
||||||
for (int y = ymin; y < ymax; y++)
|
for (int y = ymin; y < ymax+1; y++)
|
||||||
{
|
{
|
||||||
simProfile = getRegion(Helpers.UIntsToLong((uint)(x * 256), (uint)(y * 256)));
|
ulong regHandle = Helpers.UIntsToLong((uint)(x * 256), (uint)(y * 256));
|
||||||
|
simProfile = getRegion(regHandle);
|
||||||
if (simProfile != null)
|
if (simProfile != null)
|
||||||
{
|
{
|
||||||
Hashtable simProfileBlock = new Hashtable();
|
Hashtable simProfileBlock = new Hashtable();
|
||||||
|
|
|
@ -85,9 +85,10 @@ namespace OpenSim.Grid.UserServer
|
||||||
theUser.currentAgent.currentRegion = SimInfo.UUID;
|
theUser.currentAgent.currentRegion = SimInfo.UUID;
|
||||||
theUser.currentAgent.currentHandle = SimInfo.regionHandle;
|
theUser.currentAgent.currentHandle = SimInfo.regionHandle;
|
||||||
|
|
||||||
|
System.Console.WriteLine("sending reply");
|
||||||
// Send
|
// Send
|
||||||
XmlRpcRequest GridReq = new XmlRpcRequest("expect_user", SendParams);
|
XmlRpcRequest GridReq = new XmlRpcRequest("expect_user", SendParams);
|
||||||
XmlRpcResponse GridResp = GridReq.Send(SimInfo.serverURI, 3000);
|
XmlRpcResponse GridResp = GridReq.Send(SimInfo.httpServerURI, 3000);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -93,17 +93,17 @@ namespace OpenSim
|
||||||
|
|
||||||
ClientView.TerrainManager = new TerrainManager(new SecondLife());
|
ClientView.TerrainManager = new TerrainManager(new SecondLife());
|
||||||
|
|
||||||
|
this.SetupHttpListener();
|
||||||
|
|
||||||
if (m_sandbox)
|
if (m_sandbox)
|
||||||
{
|
{
|
||||||
this.SetupLocalGridServers();
|
this.SetupLocalGridServers();
|
||||||
// this.checkServer = new CheckSumServer(12036);
|
// this.checkServer = new CheckSumServer(12036);
|
||||||
// this.checkServer.ServerListener();
|
// this.checkServer.ServerListener();
|
||||||
this.commsManager = new CommunicationsLocal(this.serversData);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
this.SetupRemoteGridServers();
|
this.SetupRemoteGridServers();
|
||||||
this.commsManager = new CommunicationsOGS1(this.serversData);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
startuptime = DateTime.Now;
|
startuptime = DateTime.Now;
|
||||||
|
@ -111,14 +111,10 @@ namespace OpenSim
|
||||||
this.physManager = new PhysicsManager();
|
this.physManager = new PhysicsManager();
|
||||||
this.physManager.LoadPlugins();
|
this.physManager.LoadPlugins();
|
||||||
|
|
||||||
this.SetupHttpListener();
|
|
||||||
|
|
||||||
this.SetupWorld();
|
this.SetupWorld();
|
||||||
|
|
||||||
m_log.Verbose("Main.cs:Startup() - Initialising HTTP server");
|
m_log.Verbose("Main.cs:Startup() - Initialising HTTP server");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (m_sandbox)
|
if (m_sandbox)
|
||||||
{
|
{
|
||||||
httpServer.AddXmlRPCHandler("login_to_simulator", ((CommunicationsLocal)this.commsManager).UserServices.XmlRpcLoginMethod);
|
httpServer.AddXmlRPCHandler("login_to_simulator", ((CommunicationsLocal)this.commsManager).UserServices.XmlRpcLoginMethod);
|
||||||
|
@ -143,6 +139,7 @@ namespace OpenSim
|
||||||
{
|
{
|
||||||
AssetCache = new AssetCache("OpenSim.Region.GridInterfaces.Local.dll", this.serversData.AssetURL, this.serversData.AssetSendKey);
|
AssetCache = new AssetCache("OpenSim.Region.GridInterfaces.Local.dll", this.serversData.AssetURL, this.serversData.AssetSendKey);
|
||||||
InventoryCache = new InventoryCache();
|
InventoryCache = new InventoryCache();
|
||||||
|
this.commsManager = new CommunicationsLocal(this.serversData, httpServer);
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
@ -156,8 +153,9 @@ namespace OpenSim
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
AssetCache = new AssetCache("OpenSim.Region.GridInterfaces.Remote.dll", this.serversData.AssetURL, this.serversData.AssetSendKey);
|
AssetCache = new AssetCache("OpenSim.Region.GridInterfaces.Local.dll", this.serversData.AssetURL, this.serversData.AssetSendKey);
|
||||||
InventoryCache = new InventoryCache();
|
InventoryCache = new InventoryCache();
|
||||||
|
this.commsManager = new CommunicationsOGS1(this.serversData, httpServer);
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
|
|
@ -41,7 +41,6 @@ namespace OpenSim.Region.ClientStack
|
||||||
protected override void ProcessInPacket(Packet Pack)
|
protected override void ProcessInPacket(Packet Pack)
|
||||||
{
|
{
|
||||||
ack_pack(Pack);
|
ack_pack(Pack);
|
||||||
debug = true;
|
|
||||||
if (debug)
|
if (debug)
|
||||||
{
|
{
|
||||||
if (Pack.Type != PacketType.AgentUpdate)
|
if (Pack.Type != PacketType.AgentUpdate)
|
||||||
|
|
|
@ -71,7 +71,8 @@ namespace OpenSim.Region.ClientStack
|
||||||
// Keep track of when this packet was sent out
|
// Keep track of when this packet was sent out
|
||||||
Pack.TickCount = Environment.TickCount;
|
Pack.TickCount = Environment.TickCount;
|
||||||
|
|
||||||
Console.WriteLine("OUT: " + Pack.Type.ToString());
|
|
||||||
|
// Console.WriteLine("OUT: " + Pack.Type.ToString());
|
||||||
|
|
||||||
if (!Pack.Header.Resent)
|
if (!Pack.Header.Resent)
|
||||||
{
|
{
|
||||||
|
|
|
@ -27,6 +27,7 @@
|
||||||
*/
|
*/
|
||||||
using OpenSim.Framework.Communications;
|
using OpenSim.Framework.Communications;
|
||||||
using OpenSim.Framework.Types;
|
using OpenSim.Framework.Types;
|
||||||
|
using OpenSim.Framework.Servers;
|
||||||
|
|
||||||
namespace OpenSim.Region.Communications.Local
|
namespace OpenSim.Region.Communications.Local
|
||||||
{
|
{
|
||||||
|
@ -35,8 +36,8 @@ namespace OpenSim.Region.Communications.Local
|
||||||
public LocalBackEndServices SandBoxServices = new LocalBackEndServices();
|
public LocalBackEndServices SandBoxServices = new LocalBackEndServices();
|
||||||
public LocalUserServices UserServices;
|
public LocalUserServices UserServices;
|
||||||
|
|
||||||
public CommunicationsLocal(NetworkServersInfo serversInfo)
|
public CommunicationsLocal(NetworkServersInfo serversInfo, BaseHttpServer httpServer )
|
||||||
: base(serversInfo)
|
: base(serversInfo, httpServer)
|
||||||
{
|
{
|
||||||
UserServices = new LocalUserServices(this, serversInfo);
|
UserServices = new LocalUserServices(this, serversInfo);
|
||||||
UserServices.AddPlugin("OpenSim.Framework.Data.DB4o.dll");
|
UserServices.AddPlugin("OpenSim.Framework.Data.DB4o.dll");
|
||||||
|
|
|
@ -1,14 +1,15 @@
|
||||||
using OpenSim.Framework.Communications;
|
using OpenSim.Framework.Communications;
|
||||||
using OpenSim.Framework.Types;
|
using OpenSim.Framework.Types;
|
||||||
|
using OpenSim.Framework.Servers;
|
||||||
|
|
||||||
namespace OpenSim.Region.Communications.OGS1
|
namespace OpenSim.Region.Communications.OGS1
|
||||||
{
|
{
|
||||||
public class CommunicationsOGS1 : CommunicationsManager
|
public class CommunicationsOGS1 : CommunicationsManager
|
||||||
{
|
{
|
||||||
|
|
||||||
public CommunicationsOGS1(NetworkServersInfo serversInfo) :base(serversInfo)
|
public CommunicationsOGS1(NetworkServersInfo serversInfo, BaseHttpServer httpServer ) :base(serversInfo, httpServer)
|
||||||
{
|
{
|
||||||
OGS1GridServices gridInterComms = new OGS1GridServices(serversInfo);
|
OGS1GridServices gridInterComms = new OGS1GridServices(serversInfo, httpServer);
|
||||||
GridServer = gridInterComms;
|
GridServer = gridInterComms;
|
||||||
InterRegion = gridInterComms;
|
InterRegion = gridInterComms;
|
||||||
UserServer = new OGS1UserServices(this);
|
UserServer = new OGS1UserServices(this);
|
||||||
|
|
|
@ -18,16 +18,26 @@ namespace OpenSim.Region.Communications.OGS1
|
||||||
public class OGS1GridServices : IGridServices, IInterRegionCommunications
|
public class OGS1GridServices : IGridServices, IInterRegionCommunications
|
||||||
{
|
{
|
||||||
public Dictionary<ulong, RegionCommsListener> listeners = new Dictionary<ulong, RegionCommsListener>();
|
public Dictionary<ulong, RegionCommsListener> listeners = new Dictionary<ulong, RegionCommsListener>();
|
||||||
|
protected Dictionary<ulong, RegionInfo> regions = new Dictionary<ulong, RegionInfo>();
|
||||||
|
|
||||||
public BaseHttpServer httpListener;
|
public BaseHttpServer httpListener;
|
||||||
public NetworkServersInfo serversInfo;
|
public NetworkServersInfo serversInfo;
|
||||||
|
public BaseHttpServer httpServer;
|
||||||
|
|
||||||
public OGS1GridServices(NetworkServersInfo servers_info)
|
public OGS1GridServices(NetworkServersInfo servers_info, BaseHttpServer httpServe)
|
||||||
{
|
{
|
||||||
serversInfo = servers_info;
|
serversInfo = servers_info;
|
||||||
|
httpServer = httpServe;
|
||||||
|
httpServer.AddXmlRPCHandler("expect_user", this.ExpectUser);
|
||||||
}
|
}
|
||||||
|
|
||||||
public RegionCommsListener RegisterRegion(RegionInfo regionInfo)
|
public RegionCommsListener RegisterRegion(RegionInfo regionInfo)
|
||||||
{
|
{
|
||||||
|
if (!this.regions.ContainsKey((uint)regionInfo.RegionHandle))
|
||||||
|
{
|
||||||
|
this.regions.Add(regionInfo.RegionHandle, regionInfo);
|
||||||
|
}
|
||||||
|
|
||||||
Hashtable GridParams = new Hashtable();
|
Hashtable GridParams = new Hashtable();
|
||||||
|
|
||||||
|
|
||||||
|
@ -40,13 +50,13 @@ namespace OpenSim.Region.Communications.OGS1
|
||||||
GridParams["region_locx"] = regionInfo.RegionLocX.ToString();
|
GridParams["region_locx"] = regionInfo.RegionLocX.ToString();
|
||||||
GridParams["region_locy"] = regionInfo.RegionLocY.ToString();
|
GridParams["region_locy"] = regionInfo.RegionLocY.ToString();
|
||||||
GridParams["sim_name"] = regionInfo.RegionName;
|
GridParams["sim_name"] = regionInfo.RegionName;
|
||||||
|
GridParams["http_port"] = serversInfo.HttpListenerPort.ToString();
|
||||||
|
GridParams["remoting_port"] = serversInfo.RemotingListenerPort.ToString();
|
||||||
|
|
||||||
// Package into an XMLRPC Request
|
// Package into an XMLRPC Request
|
||||||
ArrayList SendParams = new ArrayList();
|
ArrayList SendParams = new ArrayList();
|
||||||
SendParams.Add(GridParams);
|
SendParams.Add(GridParams);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Send Request
|
// Send Request
|
||||||
XmlRpcRequest GridReq = new XmlRpcRequest("simulator_login", SendParams);
|
XmlRpcRequest GridReq = new XmlRpcRequest("simulator_login", SendParams);
|
||||||
XmlRpcResponse GridResp = GridReq.Send(serversInfo.GridURL, 3000);
|
XmlRpcResponse GridResp = GridReq.Send(serversInfo.GridURL, 3000);
|
||||||
|
@ -62,23 +72,32 @@ namespace OpenSim.Region.Communications.OGS1
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!this.listeners.ContainsKey(regionInfo.RegionHandle))
|
/* if (!this.listeners.ContainsKey(regionInfo.RegionHandle))
|
||||||
{
|
{
|
||||||
MainLog.Instance.Verbose("OGS1 - Registering new HTTP listener on port " + regionInfo.InternalEndPoint.Port.ToString());
|
MainLog.Instance.Verbose("OGS1 - Registering new HTTP listener on port " + regionInfo.InternalEndPoint.Port.ToString());
|
||||||
// initialised = true;
|
// initialised = true;
|
||||||
httpListener = new BaseHttpServer( regionInfo.InternalEndPoint.Port );
|
httpListener = new BaseHttpServer( regionInfo.InternalEndPoint.Port );
|
||||||
httpListener.AddXmlRPCHandler("expect_user", this.ExpectUser);
|
httpListener.AddXmlRPCHandler("expect_user", this.ExpectUser);
|
||||||
httpListener.Start();
|
httpListener.Start();
|
||||||
}
|
}*/
|
||||||
|
|
||||||
// Initialise the background listeners
|
// Initialise the background listeners
|
||||||
listeners[regionInfo.RegionHandle] = new RegionCommsListener();
|
RegionCommsListener regListener = new RegionCommsListener();
|
||||||
|
if (this.listeners.ContainsKey(regionInfo.RegionHandle))
|
||||||
|
{
|
||||||
|
this.listeners.Add(regionInfo.RegionHandle, regListener);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
listeners[regionInfo.RegionHandle] = regListener;
|
||||||
|
}
|
||||||
|
|
||||||
return listeners[regionInfo.RegionHandle];
|
return regListener;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<RegionInfo> RequestNeighbours(RegionInfo regionInfo)
|
public List<RegionInfo> RequestNeighbours(RegionInfo regionInfo)
|
||||||
{
|
{
|
||||||
|
|
||||||
Hashtable respData = MapBlockQuery((int)regionInfo.RegionLocX - 1, (int)regionInfo.RegionLocY - 1, (int)regionInfo.RegionLocX + 1, (int)regionInfo.RegionLocY + 1);
|
Hashtable respData = MapBlockQuery((int)regionInfo.RegionLocX - 1, (int)regionInfo.RegionLocY - 1, (int)regionInfo.RegionLocX + 1, (int)regionInfo.RegionLocY + 1);
|
||||||
|
|
||||||
List<RegionInfo> neighbours = new List<RegionInfo>();
|
List<RegionInfo> neighbours = new List<RegionInfo>();
|
||||||
|
@ -86,15 +105,18 @@ namespace OpenSim.Region.Communications.OGS1
|
||||||
foreach (ArrayList a in respData.Values)
|
foreach (ArrayList a in respData.Values)
|
||||||
{
|
{
|
||||||
foreach (Hashtable n in a)
|
foreach (Hashtable n in a)
|
||||||
|
{
|
||||||
|
uint regX = Convert.ToUInt32(n["x"]);
|
||||||
|
uint regY = Convert.ToUInt32(n["y"]);
|
||||||
|
if ((regionInfo.RegionLocX != regX) || (regionInfo.RegionLocY != regY))
|
||||||
{
|
{
|
||||||
string internalIpStr = (string)n["sim_ip"];
|
string internalIpStr = (string)n["sim_ip"];
|
||||||
int port = (int)n["sim_port"];
|
uint port = Convert.ToUInt32(n["sim_port"]);
|
||||||
string externalUri = (string)n["sim_uri"];
|
string externalUri = (string)n["sim_uri"];
|
||||||
|
|
||||||
IPEndPoint neighbourInternalEndPoint = new IPEndPoint(IPAddress.Parse(internalIpStr), port);
|
IPEndPoint neighbourInternalEndPoint = new IPEndPoint(IPAddress.Parse(internalIpStr), (int)port);
|
||||||
string neighbourExternalUri = externalUri;
|
string neighbourExternalUri = externalUri;
|
||||||
|
RegionInfo neighbour = new RegionInfo(regX, regY, neighbourInternalEndPoint, internalIpStr);
|
||||||
RegionInfo neighbour = new RegionInfo((uint)n["x"], (uint)n["y"], neighbourInternalEndPoint, neighbourExternalUri);
|
|
||||||
|
|
||||||
//OGS1
|
//OGS1
|
||||||
//neighbour.RegionHandle = (ulong)n["regionhandle"]; is now calculated locally
|
//neighbour.RegionHandle = (ulong)n["regionhandle"]; is now calculated locally
|
||||||
|
@ -107,12 +129,18 @@ namespace OpenSim.Region.Communications.OGS1
|
||||||
neighbours.Add(neighbour);
|
neighbours.Add(neighbour);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return neighbours;
|
return neighbours;
|
||||||
}
|
}
|
||||||
|
|
||||||
public RegionInfo RequestNeighbourInfo(ulong regionHandle)
|
public RegionInfo RequestNeighbourInfo(ulong regionHandle)
|
||||||
{
|
{
|
||||||
|
if (this.regions.ContainsKey(regionHandle))
|
||||||
|
{
|
||||||
|
return this.regions[regionHandle];
|
||||||
|
}
|
||||||
|
//TODO not a region in this instance so ask remote grid server
|
||||||
MainLog.Instance.Warn("Unimplemented - RequestNeighbourInfo()");
|
MainLog.Instance.Warn("Unimplemented - RequestNeighbourInfo()");
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
@ -225,6 +253,7 @@ namespace OpenSim.Region.Communications.OGS1
|
||||||
}
|
}
|
||||||
//TODO need to see if we know about where this region is and use .net remoting
|
//TODO need to see if we know about where this region is and use .net remoting
|
||||||
// to inform it.
|
// to inform it.
|
||||||
|
Console.WriteLine("Inform remote region of child agent not implemented yet");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -47,7 +47,6 @@ namespace OpenSim.Region.Communications.OGS1
|
||||||
}
|
}
|
||||||
public UserProfileData GetUserProfile(string name)
|
public UserProfileData GetUserProfile(string name)
|
||||||
{
|
{
|
||||||
|
|
||||||
//try
|
//try
|
||||||
//{
|
//{
|
||||||
Hashtable param = new Hashtable();
|
Hashtable param = new Hashtable();
|
||||||
|
|
|
@ -57,7 +57,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
|
|
||||||
protected Quaternion m_rotation = new Quaternion(0,0,1,0);
|
protected Quaternion m_rotation = new Quaternion(0,0,1,0);
|
||||||
|
|
||||||
public virtual Quaternion rotation
|
public virtual Quaternion Rotation
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
|
@ -86,7 +86,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
|
|
||||||
m_pos = new LLVector3();
|
m_pos = new LLVector3();
|
||||||
m_velocity = new LLVector3();
|
m_velocity = new LLVector3();
|
||||||
rotation = new Quaternion();
|
Rotation = new Quaternion();
|
||||||
m_name = "(basic entity)";
|
m_name = "(basic entity)";
|
||||||
children = new List<EntityBase>();
|
children = new List<EntityBase>();
|
||||||
}
|
}
|
||||||
|
|
|
@ -83,7 +83,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
{
|
{
|
||||||
Primitive parentPrim = (Primitive)this.m_Parent;
|
Primitive parentPrim = (Primitive)this.m_Parent;
|
||||||
Axiom.Math.Vector3 offsetPos = new Vector3(this.m_pos.X, this.m_pos.Y, this.m_pos.Z);
|
Axiom.Math.Vector3 offsetPos = new Vector3(this.m_pos.X, this.m_pos.Y, this.m_pos.Z);
|
||||||
offsetPos = parentPrim.rotation * offsetPos;
|
offsetPos = parentPrim.Rotation * offsetPos;
|
||||||
return parentPrim.WorldPos + new LLVector3(offsetPos.x, offsetPos.y, offsetPos.z);
|
return parentPrim.WorldPos + new LLVector3(offsetPos.x, offsetPos.y, offsetPos.z);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -139,7 +139,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
this.m_isRootPrim = isRoot;
|
this.m_isRootPrim = isRoot;
|
||||||
this.m_RootParent = rootObject;
|
this.m_RootParent = rootObject;
|
||||||
this.CreateFromPacket(addPacket, ownerID, localID);
|
this.CreateFromPacket(addPacket, ownerID, localID);
|
||||||
this.rotation = Axiom.Math.Quaternion.Identity;
|
this.Rotation = Axiom.Math.Quaternion.Identity;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -169,7 +169,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
dupe.LocalId = newLocalID;
|
dupe.LocalId = newLocalID;
|
||||||
|
|
||||||
dupe.Scale = new LLVector3(this.Scale.X, this.Scale.Y, this.Scale.Z);
|
dupe.Scale = new LLVector3(this.Scale.X, this.Scale.Y, this.Scale.Z);
|
||||||
dupe.rotation = new Quaternion(this.rotation.w, this.rotation.x, this.rotation.y, this.rotation.z);
|
dupe.Rotation = new Quaternion(this.Rotation.w, this.Rotation.x, this.Rotation.y, this.Rotation.z);
|
||||||
dupe.Pos = new LLVector3(this.Pos.X, this.Pos.Y, this.Pos.Z);
|
dupe.Pos = new LLVector3(this.Pos.X, this.Pos.Y, this.Pos.Z);
|
||||||
|
|
||||||
return dupe;
|
return dupe;
|
||||||
|
@ -278,10 +278,10 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
this.m_RootParent.AddChildToList(this);
|
this.m_RootParent.AddChildToList(this);
|
||||||
this.Pos = oldPos;
|
this.Pos = oldPos;
|
||||||
Axiom.Math.Vector3 axPos = new Axiom.Math.Vector3(this.m_pos.X, m_pos.Y, m_pos.Z);
|
Axiom.Math.Vector3 axPos = new Axiom.Math.Vector3(this.m_pos.X, m_pos.Y, m_pos.Z);
|
||||||
axPos = this.m_Parent.rotation.Inverse() * axPos;
|
axPos = this.m_Parent.Rotation.Inverse() * axPos;
|
||||||
this.m_pos = new LLVector3(axPos.x, axPos.y, axPos.z);
|
this.m_pos = new LLVector3(axPos.x, axPos.y, axPos.z);
|
||||||
Axiom.Math.Quaternion oldRot = new Quaternion(this.rotation.w, this.rotation.x, this.rotation.y, this.rotation.z);
|
Axiom.Math.Quaternion oldRot = new Quaternion(this.Rotation.w, this.Rotation.x, this.Rotation.y, this.Rotation.z);
|
||||||
this.rotation = this.m_Parent.rotation.Inverse() * this.rotation;
|
this.Rotation = this.m_Parent.Rotation.Inverse() * this.Rotation;
|
||||||
this.updateFlag = 1;
|
this.updateFlag = 1;
|
||||||
|
|
||||||
foreach (Primitive child in children)
|
foreach (Primitive child in children)
|
||||||
|
@ -304,7 +304,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
axOldPos = oldParentRotation * axOldPos;
|
axOldPos = oldParentRotation * axOldPos;
|
||||||
oldPos = new LLVector3(axOldPos.x, axOldPos.y, axOldPos.z);
|
oldPos = new LLVector3(axOldPos.x, axOldPos.y, axOldPos.z);
|
||||||
oldPos += oldParentPosition;
|
oldPos += oldParentPosition;
|
||||||
Axiom.Math.Quaternion oldRot = new Quaternion(this.rotation.w, this.rotation.x, this.rotation.y, this.rotation.z);
|
Axiom.Math.Quaternion oldRot = new Quaternion(this.Rotation.w, this.Rotation.x, this.Rotation.y, this.Rotation.z);
|
||||||
this.m_isRootPrim = false;
|
this.m_isRootPrim = false;
|
||||||
this.m_Parent = newParent;
|
this.m_Parent = newParent;
|
||||||
this.ParentID = newParent.LocalId;
|
this.ParentID = newParent.LocalId;
|
||||||
|
@ -313,10 +313,10 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
this.m_RootParent.AddChildToList(this);
|
this.m_RootParent.AddChildToList(this);
|
||||||
this.Pos = oldPos;
|
this.Pos = oldPos;
|
||||||
Axiom.Math.Vector3 axPos = new Axiom.Math.Vector3(this.m_pos.X, m_pos.Y, m_pos.Z);
|
Axiom.Math.Vector3 axPos = new Axiom.Math.Vector3(this.m_pos.X, m_pos.Y, m_pos.Z);
|
||||||
axPos = this.m_Parent.rotation.Inverse() * axPos;
|
axPos = this.m_Parent.Rotation.Inverse() * axPos;
|
||||||
this.m_pos = new LLVector3(axPos.x, axPos.y, axPos.z);
|
this.m_pos = new LLVector3(axPos.x, axPos.y, axPos.z);
|
||||||
this.rotation = oldParentRotation * this.rotation;
|
this.Rotation = oldParentRotation * this.Rotation;
|
||||||
this.rotation = this.m_Parent.rotation.Inverse()* this.rotation ;
|
this.Rotation = this.m_Parent.Rotation.Inverse()* this.Rotation ;
|
||||||
this.updateFlag = 1;
|
this.updateFlag = 1;
|
||||||
foreach (Primitive child in children)
|
foreach (Primitive child in children)
|
||||||
{
|
{
|
||||||
|
@ -401,7 +401,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
LLVector3 oldPos = new LLVector3(Pos.X, Pos.Y, Pos.Z);
|
LLVector3 oldPos = new LLVector3(Pos.X, Pos.Y, Pos.Z);
|
||||||
LLVector3 diff = oldPos - newPos;
|
LLVector3 diff = oldPos - newPos;
|
||||||
Axiom.Math.Vector3 axDiff = new Vector3(diff.X, diff.Y, diff.Z);
|
Axiom.Math.Vector3 axDiff = new Vector3(diff.X, diff.Y, diff.Z);
|
||||||
axDiff = this.rotation.Inverse() * axDiff;
|
axDiff = this.Rotation.Inverse() * axDiff;
|
||||||
diff.X = axDiff.x;
|
diff.X = axDiff.x;
|
||||||
diff.Y = axDiff.y;
|
diff.Y = axDiff.y;
|
||||||
diff.Z = axDiff.z;
|
diff.Z = axDiff.z;
|
||||||
|
@ -431,7 +431,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
/// <param name="rot"></param>
|
/// <param name="rot"></param>
|
||||||
public void UpdateGroupRotation(LLQuaternion rot)
|
public void UpdateGroupRotation(LLQuaternion rot)
|
||||||
{
|
{
|
||||||
this.rotation = new Axiom.Math.Quaternion(rot.W, rot.X, rot.Y, rot.Z);
|
this.Rotation = new Axiom.Math.Quaternion(rot.W, rot.X, rot.Y, rot.Z);
|
||||||
this.updateFlag = 2;
|
this.updateFlag = 2;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -443,7 +443,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
/// <param name="rot"></param>
|
/// <param name="rot"></param>
|
||||||
public void UpdateGroupMouseRotation(LLVector3 pos, LLQuaternion rot)
|
public void UpdateGroupMouseRotation(LLVector3 pos, LLQuaternion rot)
|
||||||
{
|
{
|
||||||
this.rotation = new Axiom.Math.Quaternion(rot.W, rot.X, rot.Y, rot.Z);
|
this.Rotation = new Axiom.Math.Quaternion(rot.W, rot.X, rot.Y, rot.Z);
|
||||||
this.Pos = pos;
|
this.Pos = pos;
|
||||||
this.updateFlag = 2;
|
this.updateFlag = 2;
|
||||||
}
|
}
|
||||||
|
@ -456,16 +456,16 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
{
|
{
|
||||||
//Console.WriteLine("updating single prim rotation");
|
//Console.WriteLine("updating single prim rotation");
|
||||||
Axiom.Math.Quaternion axRot = new Axiom.Math.Quaternion(rot.W, rot.X, rot.Y, rot.Z);
|
Axiom.Math.Quaternion axRot = new Axiom.Math.Quaternion(rot.W, rot.X, rot.Y, rot.Z);
|
||||||
Axiom.Math.Quaternion oldParentRot = new Quaternion(this.rotation.w, this.rotation.x, this.rotation.y, this.rotation.z);
|
Axiom.Math.Quaternion oldParentRot = new Quaternion(this.Rotation.w, this.Rotation.x, this.Rotation.y, this.Rotation.z);
|
||||||
this.rotation = axRot;
|
this.Rotation = axRot;
|
||||||
foreach (Primitive prim in this.children)
|
foreach (Primitive prim in this.children)
|
||||||
{
|
{
|
||||||
Axiom.Math.Vector3 axPos = new Vector3(prim.m_pos.X, prim.m_pos.Y, prim.m_pos.Z);
|
Axiom.Math.Vector3 axPos = new Vector3(prim.m_pos.X, prim.m_pos.Y, prim.m_pos.Z);
|
||||||
axPos = oldParentRot * axPos;
|
axPos = oldParentRot * axPos;
|
||||||
axPos = axRot.Inverse() * axPos;
|
axPos = axRot.Inverse() * axPos;
|
||||||
prim.m_pos = new LLVector3(axPos.x, axPos.y, axPos.z);
|
prim.m_pos = new LLVector3(axPos.x, axPos.y, axPos.z);
|
||||||
prim.rotation = oldParentRot * prim.rotation ;
|
prim.Rotation = oldParentRot * prim.Rotation ;
|
||||||
prim.rotation = axRot.Inverse()* prim.rotation;
|
prim.Rotation = axRot.Inverse()* prim.Rotation;
|
||||||
prim.updateFlag = 2;
|
prim.updateFlag = 2;
|
||||||
}
|
}
|
||||||
this.updateFlag = 2;
|
this.updateFlag = 2;
|
||||||
|
@ -528,7 +528,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
LLVector3 lPos;
|
LLVector3 lPos;
|
||||||
lPos = this.Pos;
|
lPos = this.Pos;
|
||||||
LLQuaternion lRot;
|
LLQuaternion lRot;
|
||||||
lRot = new LLQuaternion(this.rotation.x, this.rotation.y, this.rotation.z, this.rotation.w);
|
lRot = new LLQuaternion(this.Rotation.x, this.Rotation.y, this.Rotation.z, this.Rotation.w);
|
||||||
|
|
||||||
remoteClient.SendPrimitiveToClient(this.m_regionHandle, 64096, this.LocalId, this.m_Shape, lPos, lRot, new LLUUID("00000000-0000-0000-9999-000000000005"), this.m_flags, this.uuid, this.OwnerID, this.Text, this.ParentID);
|
remoteClient.SendPrimitiveToClient(this.m_regionHandle, 64096, this.LocalId, this.m_Shape, lPos, lRot, new LLUUID("00000000-0000-0000-9999-000000000005"), this.m_flags, this.uuid, this.OwnerID, this.Text, this.ParentID);
|
||||||
}
|
}
|
||||||
|
@ -571,7 +571,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
Quaternion lRot;
|
Quaternion lRot;
|
||||||
|
|
||||||
lPos = this.Pos;
|
lPos = this.Pos;
|
||||||
lRot = this.rotation;
|
lRot = this.Rotation;
|
||||||
|
|
||||||
LLQuaternion mRot = new LLQuaternion(lRot.x, lRot.y, lRot.z, lRot.w);
|
LLQuaternion mRot = new LLQuaternion(lRot.x, lRot.y, lRot.z, lRot.w);
|
||||||
RemoteClient.SendPrimTerseUpdate(this.m_regionHandle, 64096, this.LocalId, lPos, mRot);
|
RemoteClient.SendPrimTerseUpdate(this.m_regionHandle, 64096, this.LocalId, lPos, mRot);
|
||||||
|
|
|
@ -445,7 +445,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
lPos = this.Pos;
|
lPos = this.Pos;
|
||||||
lRot = this.rotation;
|
lRot = this.Rotation;
|
||||||
}
|
}
|
||||||
LLQuaternion mRot = new LLQuaternion(lRot.x, lRot.y, lRot.z, lRot.w);
|
LLQuaternion mRot = new LLQuaternion(lRot.x, lRot.y, lRot.z, lRot.w);
|
||||||
RemoteClient.SendPrimTerseUpdate(this.m_regionHandle, 64096, this.LocalId, lPos, mRot);
|
RemoteClient.SendPrimTerseUpdate(this.m_regionHandle, 64096, this.LocalId, lPos, mRot);
|
||||||
|
|
|
@ -164,7 +164,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
case 1: // Say
|
case 1: // Say
|
||||||
if ((dis < 30) && (dis > -30))
|
if ((dis < 30) && (dis > -30))
|
||||||
{
|
{
|
||||||
Console.WriteLine("sending chat");
|
//Console.WriteLine("sending chat");
|
||||||
client.SendChatMessage(message, type, fromPos, fromName,
|
client.SendChatMessage(message, type, fromPos, fromName,
|
||||||
fromAgentID);
|
fromAgentID);
|
||||||
}
|
}
|
||||||
|
|
|
@ -685,15 +685,12 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public void InformClientOfNeighbours(IClientAPI remoteClient)
|
public void InformClientOfNeighbours(IClientAPI remoteClient)
|
||||||
{
|
{
|
||||||
// Console.WriteLine("informing client of neighbouring regions");
|
|
||||||
List<RegionInfo> neighbours = this.commsManager.GridServer.RequestNeighbours(this.m_regInfo);
|
List<RegionInfo> neighbours = this.commsManager.GridServer.RequestNeighbours(this.m_regInfo);
|
||||||
|
|
||||||
//Console.WriteLine("we have " + neighbours.Count + " neighbouring regions");
|
|
||||||
if (neighbours != null)
|
if (neighbours != null)
|
||||||
{
|
{
|
||||||
for (int i = 0; i < neighbours.Count; i++)
|
for (int i = 0; i < neighbours.Count; i++)
|
||||||
{
|
{
|
||||||
// Console.WriteLine("sending neighbours data");
|
|
||||||
AgentCircuitData agent = remoteClient.RequestClientInfo();
|
AgentCircuitData agent = remoteClient.RequestClientInfo();
|
||||||
agent.BaseFolder = LLUUID.Zero;
|
agent.BaseFolder = LLUUID.Zero;
|
||||||
agent.InventoryFolder = LLUUID.Zero;
|
agent.InventoryFolder = LLUUID.Zero;
|
||||||
|
|
|
@ -283,13 +283,19 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
{
|
{
|
||||||
if (update_movementflag)
|
if (update_movementflag)
|
||||||
{
|
{
|
||||||
if (movementflag != 0) {
|
if (movementflag != 0)
|
||||||
if (this._physActor.Flying) {
|
{
|
||||||
|
if (this._physActor.Flying)
|
||||||
|
{
|
||||||
this.SendAnimPack(Animations.AnimsLLUUID["FLY"], 1);
|
this.SendAnimPack(Animations.AnimsLLUUID["FLY"], 1);
|
||||||
} else {
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
this.SendAnimPack(Animations.AnimsLLUUID["WALK"], 1);
|
this.SendAnimPack(Animations.AnimsLLUUID["WALK"], 1);
|
||||||
}
|
}
|
||||||
} else {
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
this.SendAnimPack(Animations.AnimsLLUUID["STAND"], 1);
|
this.SendAnimPack(Animations.AnimsLLUUID["STAND"], 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -47,13 +47,13 @@ namespace SimpleApp
|
||||||
udpServer.ServerListener();
|
udpServer.ServerListener();
|
||||||
|
|
||||||
ClientView.TerrainManager = new TerrainManager(new SecondLife());
|
ClientView.TerrainManager = new TerrainManager(new SecondLife());
|
||||||
|
BaseHttpServer httpServer = new BaseHttpServer(internalEndPoint.Port);
|
||||||
|
|
||||||
NetworkServersInfo serverInfo = new NetworkServersInfo();
|
NetworkServersInfo serverInfo = new NetworkServersInfo();
|
||||||
CommunicationsLocal communicationsManager = new CommunicationsLocal(serverInfo);
|
CommunicationsLocal communicationsManager = new CommunicationsLocal(serverInfo, httpServer);
|
||||||
|
|
||||||
RegionInfo regionInfo = new RegionInfo( 1000, 1000, internalEndPoint, "127.0.0.1" );
|
RegionInfo regionInfo = new RegionInfo( 1000, 1000, internalEndPoint, "127.0.0.1" );
|
||||||
|
|
||||||
BaseHttpServer httpServer = new BaseHttpServer( internalEndPoint.Port );
|
|
||||||
MyWorld world = new MyWorld(packetServer.ClientManager, regionInfo, m_circuitManager, communicationsManager, assetCache, httpServer);
|
MyWorld world = new MyWorld(packetServer.ClientManager, regionInfo, m_circuitManager, communicationsManager, assetCache, httpServer);
|
||||||
world.PhysScene = PhysicsScene.Null;
|
world.PhysScene = PhysicsScene.Null;
|
||||||
udpServer.LocalWorld = world;
|
udpServer.LocalWorld = world;
|
||||||
|
|
|
@ -512,6 +512,7 @@
|
||||||
<Reference name="System.Xml"/>
|
<Reference name="System.Xml"/>
|
||||||
<Reference name="OpenSim.Framework"/>
|
<Reference name="OpenSim.Framework"/>
|
||||||
<Reference name="OpenSim.Framework.Data" />
|
<Reference name="OpenSim.Framework.Data" />
|
||||||
|
<Reference name="OpenSim.Framework.Servers"/>
|
||||||
<Reference name="libsecondlife.dll"/>
|
<Reference name="libsecondlife.dll"/>
|
||||||
|
|
||||||
<Files>
|
<Files>
|
||||||
|
@ -567,6 +568,7 @@
|
||||||
<Reference name="OpenSim.Framework.Communications"/>
|
<Reference name="OpenSim.Framework.Communications"/>
|
||||||
<Reference name="OpenSim.Framework.UserManagement" />
|
<Reference name="OpenSim.Framework.UserManagement" />
|
||||||
<Reference name="OpenSim.Framework.Data" />
|
<Reference name="OpenSim.Framework.Data" />
|
||||||
|
<Reference name="OpenSim.Framework.Servers"/>
|
||||||
<Reference name="libsecondlife.dll"/>
|
<Reference name="libsecondlife.dll"/>
|
||||||
<Reference name="OpenSim.Framework"/>
|
<Reference name="OpenSim.Framework"/>
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue