* Removed ClientThreads from avatar

* Deleted SimpleApp2 as it's getting wonkier and wonkier by the minute
* Added avatar handling to SimpleApp, still don't have any avatar out on the playing field
* Removed some warnings
* Went from IWorld to Scene
*
Sugilite
lbsa71 2007-06-20 15:18:54 +00:00
parent 8edcc844c4
commit 64ed1e1b3b
20 changed files with 80 additions and 598 deletions

View File

@ -48,8 +48,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenSim.Terrain.BasicTerrai
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SimpleApp", "OpenSim\Examples\SimpleApp\SimpleApp.csproj", "{24B12448-0000-0000-0000-000000000000}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SimpleApp", "OpenSim\Examples\SimpleApp\SimpleApp.csproj", "{24B12448-0000-0000-0000-000000000000}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SimpleApp2", "OpenSim\Examples\SimpleApp2\SimpleApp2.csproj", "{24DF2448-0000-0000-0000-000000000000}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XMLRPC", "Common\XmlRpcCS\XMLRPC.csproj", "{8E81D43C-0000-0000-0000-000000000000}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XMLRPC", "Common\XmlRpcCS\XMLRPC.csproj", "{8E81D43C-0000-0000-0000-000000000000}"
EndProject EndProject
Global Global
@ -154,10 +152,6 @@ Global
{24B12448-0000-0000-0000-000000000000}.Debug|Any CPU.Build.0 = Debug|Any CPU {24B12448-0000-0000-0000-000000000000}.Debug|Any CPU.Build.0 = Debug|Any CPU
{24B12448-0000-0000-0000-000000000000}.Release|Any CPU.ActiveCfg = Release|Any CPU {24B12448-0000-0000-0000-000000000000}.Release|Any CPU.ActiveCfg = Release|Any CPU
{24B12448-0000-0000-0000-000000000000}.Release|Any CPU.Build.0 = Release|Any CPU {24B12448-0000-0000-0000-000000000000}.Release|Any CPU.Build.0 = Release|Any CPU
{24DF2448-0000-0000-0000-000000000000}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{24DF2448-0000-0000-0000-000000000000}.Debug|Any CPU.Build.0 = Debug|Any CPU
{24DF2448-0000-0000-0000-000000000000}.Release|Any CPU.ActiveCfg = Release|Any CPU
{24DF2448-0000-0000-0000-000000000000}.Release|Any CPU.Build.0 = Release|Any CPU
{8E81D43C-0000-0000-0000-000000000000}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {8E81D43C-0000-0000-0000-000000000000}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8E81D43C-0000-0000-0000-000000000000}.Debug|Any CPU.Build.0 = Debug|Any CPU {8E81D43C-0000-0000-0000-000000000000}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8E81D43C-0000-0000-0000-000000000000}.Release|Any CPU.ActiveCfg = Release|Any CPU {8E81D43C-0000-0000-0000-000000000000}.Release|Any CPU.ActiveCfg = Release|Any CPU

View File

@ -5,19 +5,28 @@ using OpenSim.Framework.Interfaces;
using OpenSim.Framework.Types; using OpenSim.Framework.Types;
using OpenSim.Framework.Console; using OpenSim.Framework.Console;
using libsecondlife; using libsecondlife;
using OpenSim.Region;
using Avatar=OpenSim.Region.Scenes.Avatar;
using OpenSim.Region.Scenes;
using OpenSim.Framework;
using OpenSim.Caches;
using OpenGrid.Framework.Communications;
namespace SimpleApp namespace SimpleApp
{ {
public class MyWorld : IWorld public class MyWorld : Scene
{ {
private RegionInfo m_regionInfo; private RegionInfo m_regionInfo;
private List<OpenSim.Region.Scenes.Avatar> m_avatars;
public MyWorld(RegionInfo regionInfo) public MyWorld(Dictionary<uint, IClientAPI> clientThreads, RegionInfo regionInfo, AuthenticateSessionsBase authen, CommunicationsManager commsMan, AssetCache assetCach)
: base(clientThreads, regionInfo, authen, commsMan, assetCach)
{ {
m_regionInfo = regionInfo; m_regionInfo = regionInfo;
m_avatars = new List<Avatar>();
} }
private void SendLayerData(IClientAPI remoteClient) public override void SendLayerData(IClientAPI remoteClient)
{ {
float[] map = new float[65536]; float[] map = new float[65536];
@ -34,7 +43,7 @@ namespace SimpleApp
#region IWorld Members #region IWorld Members
void IWorld.AddNewAvatar(IClientAPI client, LLUUID agentID, bool child) override public void AddNewAvatar(IClientAPI client, LLUUID agentID, bool child)
{ {
LLVector3 pos = new LLVector3(128, 128, 128); LLVector3 pos = new LLVector3(128, 128, 128);
@ -65,6 +74,8 @@ namespace SimpleApp
client.SendRegionHandshake(m_regionInfo); client.SendRegionHandshake(m_regionInfo);
OpenSim.Region.Scenes.Avatar avatar = new Avatar( client, this, m_regionInfo );
} }
private void SendWearables( IClientAPI client ) private void SendWearables( IClientAPI client )
@ -72,30 +83,28 @@ namespace SimpleApp
client.SendWearables( AvatarWearable.DefaultWearables ); client.SendWearables( AvatarWearable.DefaultWearables );
} }
void IWorld.RemoveAvatar(LLUUID agentID) public void RemoveAvatar(LLUUID agentID)
{ {
} }
RegionInfo IWorld.RegionInfo public RegionInfo RegionInfo
{ {
get { return m_regionInfo; } get { return m_regionInfo; }
} }
object IWorld.SyncRoot public object SyncRoot
{ {
get { return this; } get { return this; }
} }
private uint m_nextLocalId = 1; private uint m_nextLocalId = 1;
uint IWorld.NextLocalId public uint NextLocalId
{ {
get { return m_nextLocalId++; } get { return m_nextLocalId++; }
} }
#endregion #endregion
} }
} }

View File

@ -12,6 +12,8 @@ using OpenSim.UserServer;
using OpenSim.Servers; using OpenSim.Servers;
using OpenSim.Framework; using OpenSim.Framework;
using OpenSim.Caches; using OpenSim.Caches;
using OpenGrid.Framework.Communications;
using OpenSim.LocalCommunications;
namespace SimpleApp namespace SimpleApp
{ {
@ -51,9 +53,11 @@ namespace SimpleApp
ClientView.TerrainManager = new TerrainManager(new SecondLife()); ClientView.TerrainManager = new TerrainManager(new SecondLife());
CommunicationsManager communicationsManager = new CommunicationsLocal();
RegionInfo regionInfo = new RegionInfo( ); RegionInfo regionInfo = new RegionInfo( );
udpServer.LocalWorld = new MyWorld( regionInfo ); udpServer.LocalWorld = new MyWorld( packetServer.ClientAPIs, regionInfo, m_circuitManager, communicationsManager, assetCache );
// World world = new World(udpServer.PacketServer.ClientAPIs, regionInfo); // World world = new World(udpServer.PacketServer.ClientAPIs, regionInfo);
// PhysicsScene physicsScene = new NullPhysicsScene(); // PhysicsScene physicsScene = new NullPhysicsScene();

View File

@ -62,10 +62,6 @@
<HintPath>..\..\..\bin\libsecondlife.dll</HintPath> <HintPath>..\..\..\bin\libsecondlife.dll</HintPath>
<Private>False</Private> <Private>False</Private>
</Reference> </Reference>
<Reference Include="OpenSim.World" >
<HintPath>OpenSim.World.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="System" > <Reference Include="System" >
<HintPath>System.dll</HintPath> <HintPath>System.dll</HintPath>
<Private>False</Private> <Private>False</Private>
@ -80,6 +76,12 @@
</Reference> </Reference>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\..\..\Common\OpenGrid.Framework.Communications\OpenGrid.Framework.Communications.csproj">
<Name>OpenGrid.Framework.Communications</Name>
<Project>{683344D5-0000-0000-0000-000000000000}</Project>
<Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\OpenSim.Caches\OpenSim.Caches.csproj"> <ProjectReference Include="..\..\OpenSim.Caches\OpenSim.Caches.csproj">
<Name>OpenSim.Caches</Name> <Name>OpenSim.Caches</Name>
<Project>{1938EB12-0000-0000-0000-000000000000}</Project> <Project>{1938EB12-0000-0000-0000-000000000000}</Project>
@ -104,6 +106,18 @@
<Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package> <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
<Private>False</Private> <Private>False</Private>
</ProjectReference> </ProjectReference>
<ProjectReference Include="..\..\OpenSim.LocalCommunications\OpenSim.LocalCommunications.csproj">
<Name>OpenSim.LocalCommunications</Name>
<Project>{79CED992-0000-0000-0000-000000000000}</Project>
<Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\OpenSim.Region\OpenSim.Region.csproj">
<Name>OpenSim.Region</Name>
<Project>{196916AF-0000-0000-0000-000000000000}</Project>
<Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\OpenSim.RegionServer\OpenSim.RegionServer.csproj"> <ProjectReference Include="..\..\OpenSim.RegionServer\OpenSim.RegionServer.csproj">
<Name>OpenSim.RegionServer</Name> <Name>OpenSim.RegionServer</Name>
<Project>{632E1BFD-0000-0000-0000-000000000000}</Project> <Project>{632E1BFD-0000-0000-0000-000000000000}</Project>

View File

@ -1,70 +0,0 @@
using System;
using System.Collections.Generic;
using System.Text;
using OpenSim;
using libsecondlife;
using OpenSim.Framework.Interfaces;
using System.Net;
using libsecondlife.Packets;
using OpenSim.Assets;
using OpenSim.Framework.Types;
using OpenSim.Framework;
using OpenSim.Caches;
namespace SimpleApp2
{
public class MyClientView : ClientView
{
private float[] m_map;
private Dictionary<uint, IClientAPI> m_clientAPIs;
public MyClientView(float[] map, Dictionary<uint, IClientAPI> clientAPIs, EndPoint remoteEP, UseCircuitCodePacket initialcirpack, Dictionary<uint, ClientView> clientThreads, IWorld world, AssetCache assetCache, PacketServer packServer, InventoryCache inventoryCache, AuthenticateSessionsBase authenSessions)
: base(remoteEP, initialcirpack, clientThreads, world, assetCache, packServer, inventoryCache, authenSessions)
{
m_map = map;
m_clientAPIs = clientAPIs;
OnRegionHandShakeReply += RegionHandShakeReplyHandler;
OnChatFromViewer += ChatHandler;
OnRequestWearables += RequestWearablesHandler;
OnCompleteMovementToRegion += CompleteMovementToRegionHandler;
}
private void ChatHandler(byte[] message, byte type, LLVector3 fromPos, string fromName, LLUUID fromAgentID)
{
// Echo it (so you know what you typed)
SendChatMessage(message, type, fromPos, fromName, fromAgentID);
SendChatMessage("Ready.", 1, fromPos, "System", LLUUID.Zero);
}
private void CompleteMovementToRegionHandler()
{
LLVector3 pos = new LLVector3(128, 128, 128);
MoveAgentIntoRegion(m_world.RegionInfo, pos, LLVector3.Zero );
SendAvatarData( m_world.RegionInfo, FirstName,
LastName, AgentId, 0,
pos);
SendChatMessage("Welcome to My World.", 1, pos, "System", LLUUID.Zero);
// OpenSim.world.Primitive prim = new OpenSim.world.Primitive( m_clientAPIs, m_world.RegionInfo.RegionHandle, m_world, AgentId );
// SendNewPrim( prim );
}
private void RegionHandShakeReplyHandler(IClientAPI client)
{
client.SendLayerData(m_map);
}
private void RequestWearablesHandler(IClientAPI client)
{
SendWearables(AvatarWearable.DefaultWearables);
}
}
}

View File

@ -1,32 +0,0 @@
using System;
using System.Collections.Generic;
using System.Text;
using OpenSim;
using OpenSim.Assets;
using System.Net;
using libsecondlife.Packets;
using OpenSim.Framework.Interfaces;
using OpenSim.Framework;
using OpenSim.Caches;
namespace SimpleApp2
{
public class MyPacketServer : PacketServer
{
private float[] m_map;
public MyPacketServer(float[] map, ClientStackNetworkHandler networkHandler, uint port)
: base(networkHandler, port)
{
m_map = map;
}
protected override ClientView CreateNewClient(EndPoint remoteEP, UseCircuitCodePacket initialcirpack, Dictionary<uint, ClientView> clientThreads, IWorld world, AssetCache assetCache, PacketServer packServer, InventoryCache inventoryCache, AuthenticateSessionsBase authenSessions)
{
// (EndPoint remoteEP, UseCircuitCodePacket initialcirpack, Dictionary<uint, ClientView> clientThreads, IWorld world, AssetCache assetCache, PacketServer packServer, InventoryCache inventoryCache, AuthenticateSessionsBase authenSessions)
return new MyClientView(m_map, ClientAPIs, remoteEP, initialcirpack, clientThreads, world, assetCache, packServer, inventoryCache, authenSessions);
}
}
}

View File

@ -1,178 +0,0 @@
using System;
using System.Collections.Generic;
using System.Text;
using OpenSim;
using OpenSim.Servers;
using OpenSim.GridInterfaces.Local;
using OpenSim.Framework.Interfaces;
using OpenSim.Framework.Types;
using OpenSim.UserServer;
using OpenSim.Framework.Console;
using OpenSim.Assets;
using libsecondlife;
using OpenSim.Framework;
using OpenSim.Caches;
namespace SimpleApp2
{
class Program : IWorld, IAssetReceiver, conscmd_callback
{
private ConsoleBase m_console;
private RegionInfo m_regionInfo;
private float[] m_map;
private AuthenticateSessionsBase m_circuitManager;
private void Run()
{
m_console = new ConsoleBase(null, "SimpleApp", this, false);
MainConsole.Instance = m_console;
m_map = CreateMap();
CheckSumServer checksumServer = new CheckSumServer(12036);
checksumServer.ServerListener();
string simAddr = "127.0.0.1";
int simPort = 9000;
m_circuitManager = new AuthenticateSessionsBase();
LoginServer loginServer = new LoginServer(simAddr, simPort, 0, 0, false);
loginServer.Startup();
loginServer.SetSessionHandler( AddNewSessionHandler );
InventoryCache inventoryCache = new InventoryCache();
LocalAssetServer assetServer = new LocalAssetServer();
assetServer.SetServerInfo("http://127.0.0.1:8003/", "");
assetServer.SetReceiver(this);
AssetCache assetCache = new AssetCache(assetServer);
UDPServer udpServer = new UDPServer(simPort, assetCache, inventoryCache, m_console, m_circuitManager );
PacketServer packetServer = new MyPacketServer(m_map, udpServer, (uint) simPort );
udpServer.ServerListener();
ClientView.TerrainManager = new TerrainManager(new SecondLife());
m_regionInfo = new RegionInfo();
udpServer.LocalWorld = this;
// World world = new World(udpServer.PacketServer.ClientAPIs, regionInfo);
// PhysicsScene physicsScene = new NullPhysicsScene();
// world.PhysicsScene = physicsScene;
// udpServer.LocalWorld = world;
BaseHttpServer httpServer = new BaseHttpServer(simPort);
httpServer.AddXmlRPCHandler("login_to_simulator", loginServer.XmlRpcLoginMethod);
httpServer.Start();
m_console.WriteLine(LogPriority.NORMAL, "Press enter to quit.");
m_console.ReadLine();
}
private float[] CreateMap()
{
float[] map = new float[65536];
for (int i = 0; i < 65536; i++)
{
int x = i % 256;
int y = i / 256;
map[i] = (float)(x + y / 2);
}
return map;
}
private bool AddNewSessionHandler(ulong regionHandle, Login loginData)
{
m_console.WriteLine(LogPriority.NORMAL, "Region [{0}] recieved Login from [{1}] [{2}]", regionHandle, loginData.First, loginData.Last);
AgentCircuitData agent = new AgentCircuitData();
agent.AgentID = loginData.Agent;
agent.firstname = loginData.First;
agent.lastname = loginData.Last;
agent.SessionID = loginData.Session;
agent.SecureSessionID = loginData.SecureSession;
agent.circuitcode = loginData.CircuitCode;
agent.BaseFolder = loginData.BaseFolder;
agent.InventoryFolder = loginData.InventoryFolder;
agent.startpos = new LLVector3(128, 128, 70);
m_circuitManager.AddNewCircuit(agent.circuitcode, agent);
return true;
}
static void Main(string[] args)
{
Program app = new Program();
app.Run();
}
#region IWorld Members
void IWorld.AddNewAvatar(IClientAPI remoteClient, LLUUID agentID, bool child)
{
remoteClient.SendRegionHandshake(m_regionInfo);
}
void IWorld.RemoveAvatar(LLUUID agentID)
{
throw new Exception("The method or operation is not implemented.");
}
RegionInfo IWorld.RegionInfo
{
get { return m_regionInfo; }
}
object IWorld.SyncRoot
{
get { return this; }
}
private uint m_nextLocalId = 1;
uint IWorld.NextLocalId
{
get { return m_nextLocalId++; }
}
#endregion
#region IAssetReceiver Members
public void AssetReceived(AssetBase asset, bool IsTexture)
{
throw new Exception("The method or operation is not implemented.");
}
public void AssetNotFound(AssetBase asset)
{
throw new Exception("The method or operation is not implemented.");
}
#endregion
#region conscmd_callback Members
public void RunCmd(string cmd, string[] cmdparams)
{
throw new Exception("The method or operation is not implemented.");
}
public void Show(string ShowWhat)
{
throw new Exception("The method or operation is not implemented.");
}
#endregion
}
}

View File

@ -1,33 +0,0 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("SimpleApp2")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Playahead AB")]
[assembly: AssemblyProduct("SimpleApp2")]
[assembly: AssemblyCopyright("Copyright © Playahead AB 2007")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("bdda0707-02b4-46ca-87ce-ab3c12558a4a")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@ -1,154 +0,0 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{24DF2448-0000-0000-0000-000000000000}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>
</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>SimpleApp2</AssemblyName>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Exe</OutputType>
<AppDesignerFolder>
</AppDesignerFolder>
<RootNamespace>SimpleApp2</RootNamespace>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>False</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE;DEBUG</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>True</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<Optimize>False</Optimize>
<OutputPath>..\..\..\bin\</OutputPath>
<RegisterForComInterop>False</RegisterForComInterop>
<RemoveIntegerChecks>False</RemoveIntegerChecks>
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<NoWarn>
</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>False</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>False</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<Optimize>True</Optimize>
<OutputPath>..\..\..\bin\</OutputPath>
<RegisterForComInterop>False</RegisterForComInterop>
<RemoveIntegerChecks>False</RemoveIntegerChecks>
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<NoWarn>
</NoWarn>
</PropertyGroup>
<ItemGroup>
<Reference Include="libsecondlife.dll">
<HintPath>..\..\..\bin\libsecondlife.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="OpenSim.World">
<HintPath>OpenSim.World.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="System">
<HintPath>System.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="System.Data.dll">
<HintPath>..\..\..\bin\System.Data.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="System.Xml">
<HintPath>System.Xml.dll</HintPath>
<Private>False</Private>
</Reference>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\OpenSim.Caches\OpenSim.Caches.csproj">
<Name>OpenSim.Caches</Name>
<Project>{1938EB12-0000-0000-0000-000000000000}</Project>
<Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\..\Common\OpenSim.Framework\OpenSim.Framework.csproj">
<Name>OpenSim.Framework</Name>
<Project>{8ACA2445-0000-0000-0000-000000000000}</Project>
<Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\..\Common\OpenSim.Framework.Console\OpenSim.Framework.Console.csproj">
<Name>OpenSim.Framework.Console</Name>
<Project>{A7CD0630-0000-0000-0000-000000000000}</Project>
<Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\OpenSim.GridInterfaces\Local\OpenSim.GridInterfaces.Local.csproj">
<Name>OpenSim.GridInterfaces.Local</Name>
<Project>{546099CD-0000-0000-0000-000000000000}</Project>
<Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\OpenSim.RegionServer\OpenSim.RegionServer.csproj">
<Name>OpenSim.RegionServer</Name>
<Project>{632E1BFD-0000-0000-0000-000000000000}</Project>
<Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\..\Common\OpenSim.Servers\OpenSim.Servers.csproj">
<Name>OpenSim.Servers</Name>
<Project>{8BB20F0A-0000-0000-0000-000000000000}</Project>
<Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\..\Common\XmlRpcCS\XMLRPC.csproj">
<Name>XMLRPC</Name>
<Project>{8E81D43C-0000-0000-0000-000000000000}</Project>
<Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
<Private>False</Private>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<Compile Include="MyClientView.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="MyPacketServer.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Program.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Properties\AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

View File

@ -1,53 +0,0 @@
<?xml version="1.0" ?>
<project name="SimpleApp2" default="build">
<target name="build">
<echo message="Build Directory is ${project::get-base-directory()}/${build.dir}" />
<mkdir dir="${project::get-base-directory()}/${build.dir}" />
<copy todir="${project::get-base-directory()}/${build.dir}">
<fileset basedir="${project::get-base-directory()}">
</fileset>
</copy>
<csc target="exe" debug="${build.debug}" unsafe="False" define="TRACE;DEBUG" output="${project::get-base-directory()}/${build.dir}/${project::get-name()}.exe">
<resources prefix="SimpleApp2" dynamicprefix="true" >
</resources>
<sources failonempty="true">
<include name="MyClientView.cs" />
<include name="MyPacketServer.cs" />
<include name="Program.cs" />
<include name="Properties/AssemblyInfo.cs" />
</sources>
<references basedir="${project::get-base-directory()}">
<lib>
<include name="${project::get-base-directory()}" />
<include name="${project::get-base-directory()}/${build.dir}" />
</lib>
<include name="../../../bin/libsecondlife.dll" />
<include name="../../../bin/OpenSim.Caches.dll" />
<include name="../../../bin/OpenSim.Framework.dll" />
<include name="../../../bin/OpenSim.Framework.Console.dll" />
<include name="../../../bin/OpenSim.GridInterfaces.Local.dll" />
<include name="../../../bin/OpenSim.RegionServer.dll" />
<include name="../../../bin/OpenSim.Servers.dll" />
<include name="OpenSim.World.dll" />
<include name="System.dll" />
<include name="System.Data.dll.dll" />
<include name="System.Xml.dll" />
<include name="../../../bin/XMLRPC.dll" />
</references>
</csc>
<echo message="Copying from [${project::get-base-directory()}/${build.dir}/] to [${project::get-base-directory()}/../../../bin/" />
<mkdir dir="${project::get-base-directory()}/../../../bin/"/>
<copy todir="${project::get-base-directory()}/../../../bin/">
<fileset basedir="${project::get-base-directory()}/${build.dir}/" >
<include name="*.dll"/>
<include name="*.exe"/>
</fileset>
</copy>
</target>
<target name="clean">
<delete dir="${bin.dir}" failonerror="false" />
<delete dir="${obj.dir}" failonerror="false" />
</target>
<target name="doc" description="Creates documentation.">
</target>
</project>

View File

@ -237,7 +237,7 @@ namespace OpenSim.Region
} }
} }
} }
catch (Exception e) catch (Exception)
{ {
return false; //Exception. For now, lets skip subdivision return false; //Exception. For now, lets skip subdivision
} }
@ -294,7 +294,7 @@ namespace OpenSim.Region
startParcel = getParcel(start_x, start_y); startParcel = getParcel(start_x, start_y);
endParcel = getParcel(end_x, end_y); endParcel = getParcel(end_x, end_y);
} }
catch (Exception e) catch (Exception)
{ {
return false; //Error occured when trying to get the start and end parcels return false; //Error occured when trying to get the start and end parcels
} }

View File

@ -87,7 +87,7 @@ namespace OpenSim.Region.Scenes
/// </summary> /// </summary>
public void SendInitialPosition() public void SendInitialPosition()
{ {
this.ControllingClient.SendAvatarData(m_regionInfo, this.firstname, this.lastname, this.uuid, this.localid, this.Pos); this.ControllingClient.SendAvatarData(m_regionInfo, this.firstname, this.lastname, this.uuid, this.LocalId, this.Pos);
} }
/// <summary> /// <summary>

View File

@ -59,7 +59,6 @@ namespace OpenSim.Region.Scenes
private AvatarWearable[] Wearables; private AvatarWearable[] Wearables;
private LLVector3 positionLastFrame = new LLVector3(0, 0, 0); private LLVector3 positionLastFrame = new LLVector3(0, 0, 0);
private ulong m_regionHandle; private ulong m_regionHandle;
private Dictionary<uint, IClientAPI> m_clientThreads;
private bool childAvatar = false; private bool childAvatar = false;
private bool newForce = false; private bool newForce = false;
@ -71,11 +70,10 @@ namespace OpenSim.Region.Scenes
/// <param name="world"></param> /// <param name="world"></param>
/// <param name="clientThreads"></param> /// <param name="clientThreads"></param>
/// <param name="regionDat"></param> /// <param name="regionDat"></param>
public Avatar(IClientAPI theClient, Scene world, Dictionary<uint, IClientAPI> clientThreads, RegionInfo reginfo) public Avatar(IClientAPI theClient, Scene world, RegionInfo reginfo)
{ {
m_world = world; m_world = world;
m_clientThreads = clientThreads;
this.uuid = theClient.AgentId; this.uuid = theClient.AgentId;
m_regionInfo = reginfo; m_regionInfo = reginfo;
@ -84,7 +82,7 @@ namespace OpenSim.Region.Scenes
ControllingClient = theClient; ControllingClient = theClient;
this.firstname = ControllingClient.FirstName; this.firstname = ControllingClient.FirstName;
this.lastname = ControllingClient.LastName; this.lastname = ControllingClient.LastName;
localid = this.m_world.NextLocalId; m_localId = m_world.NextLocalId;
Pos = ControllingClient.StartPos; Pos = ControllingClient.StartPos;
visualParams = new byte[218]; visualParams = new byte[218];
for (int i = 0; i < 218; i++) for (int i = 0; i < 218; i++)
@ -196,7 +194,7 @@ namespace OpenSim.Region.Scenes
{ {
LLVector3 pos = this.Pos; LLVector3 pos = this.Pos;
LLVector3 vel = this.Velocity; LLVector3 vel = this.Velocity;
RemoteClient.SendAvatarTerseUpdate(this.m_regionHandle, 64096, this.localid, new LLVector3(pos.X, pos.Y, pos.Z), new LLVector3(vel.X, vel.Y, vel.Z)); RemoteClient.SendAvatarTerseUpdate(this.m_regionHandle, 64096, this.LocalId, new LLVector3(pos.X, pos.Y, pos.Z), new LLVector3(vel.X, vel.Y, vel.Z));
} }
/// <summary> /// <summary>

View File

@ -38,7 +38,6 @@ namespace OpenSim.Region.Scenes
public abstract class Entity : IScriptReadonlyEntity public abstract class Entity : IScriptReadonlyEntity
{ {
public libsecondlife.LLUUID uuid; public libsecondlife.LLUUID uuid;
public uint localid;
public LLVector3 velocity; public LLVector3 velocity;
public Quaternion rotation; public Quaternion rotation;
protected List<Entity> children; protected List<Entity> children;
@ -128,13 +127,20 @@ namespace OpenSim.Region.Scenes
} }
} }
protected uint m_localId;
public uint LocalId
{
get { return m_localId; }
}
/// <summary> /// <summary>
/// Creates a new Entity (should not occur on it's own) /// Creates a new Entity (should not occur on it's own)
/// </summary> /// </summary>
public Entity() public Entity()
{ {
uuid = new libsecondlife.LLUUID(); uuid = new libsecondlife.LLUUID();
localid = 0;
m_pos = new LLVector3(); m_pos = new LLVector3();
velocity = new LLVector3(); velocity = new LLVector3();
rotation = new Quaternion(); rotation = new Quaternion();

View File

@ -136,7 +136,7 @@ namespace OpenSim.Region.Scenes
this.primData.CreationDate = (Int32)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds; this.primData.CreationDate = (Int32)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds;
this.primData.OwnerID = owner; this.primData.OwnerID = owner;
this.primData.FullID = this.uuid = fullID; this.primData.FullID = this.uuid = fullID;
this.primData.LocalID = this.localid = localID; this.primData.LocalID = m_localId = localID;
} }
/// <summary> /// <summary>
@ -156,7 +156,7 @@ namespace OpenSim.Region.Scenes
inventoryItems = new Dictionary<LLUUID, InventoryItem>(); inventoryItems = new Dictionary<LLUUID, InventoryItem>();
this.primData = PrimData.DefaultCube(); this.primData = PrimData.DefaultCube();
this.primData.OwnerID = owner; this.primData.OwnerID = owner;
this.primData.LocalID = this.localid = localID; this.primData.LocalID = m_localId = localID;
this.Pos = this.primData.Position = position; this.Pos = this.primData.Position = position;
this.updateFlag = 1; this.updateFlag = 1;
@ -411,7 +411,7 @@ namespace OpenSim.Region.Scenes
lPos = this.Pos; lPos = this.Pos;
} }
remoteClient.SendPrimitiveToClient(this.m_regionHandle, 64096, this.localid, this.primData, lPos, new LLUUID("00000000-0000-0000-5005-000000000005")); remoteClient.SendPrimitiveToClient(this.m_regionHandle, 64096, this.LocalId, this.primData, lPos, new LLUUID("00000000-0000-0000-5005-000000000005"));
} }
/// <summary> /// <summary>
@ -499,7 +499,7 @@ namespace OpenSim.Region.Scenes
PData.PathTwistBegin = addPacket.ObjectData.PathTwistBegin; PData.PathTwistBegin = addPacket.ObjectData.PathTwistBegin;
LLVector3 pos1 = addPacket.ObjectData.RayEnd; LLVector3 pos1 = addPacket.ObjectData.RayEnd;
this.primData.FullID = this.uuid = LLUUID.Random(); this.primData.FullID = this.uuid = LLUUID.Random();
this.primData.LocalID = this.localid = (uint)(localID); this.primData.LocalID = m_localId = (uint)(localID);
this.primData.Position = this.Pos = pos1; this.primData.Position = this.Pos = pos1;
this.updateFlag = 1; this.updateFlag = 1;

View File

@ -212,7 +212,7 @@ namespace OpenSim.Region.Scenes
{ {
foreach (Entity ent in Entities.Values) foreach (Entity ent in Entities.Values)
{ {
if (ent.localid == localID) if (ent.LocalId == localID)
{ {
((OpenSim.Region.Scenes.Primitive)ent).UpdatePosition(pos); ((OpenSim.Region.Scenes.Primitive)ent).UpdatePosition(pos);
break; break;

View File

@ -107,7 +107,7 @@ namespace OpenSim.Region.Scenes
{ {
if(this.scriptEngines.ContainsKey(scriptType)) if(this.scriptEngines.ContainsKey(scriptType))
{ {
this.scriptEngines[scriptType].LoadScript(script, scriptName, ent.localid); this.scriptEngines[scriptType].LoadScript(script, scriptName, ent.LocalId);
} }
} }
@ -124,7 +124,7 @@ namespace OpenSim.Region.Scenes
// Console.WriteLine("script- getting entity " + localID + " position"); // Console.WriteLine("script- getting entity " + localID + " position");
foreach (Entity entity in this.Entities.Values) foreach (Entity entity in this.Entities.Values)
{ {
if (entity.localid == localID) if (entity.LocalId == localID)
{ {
res.X = entity.Pos.X; res.X = entity.Pos.X;
res.Y = entity.Pos.Y; res.Y = entity.Pos.Y;
@ -145,7 +145,7 @@ namespace OpenSim.Region.Scenes
{ {
foreach (Entity entity in this.Entities.Values) foreach (Entity entity in this.Entities.Values)
{ {
if (entity.localid == localID && entity is Primitive) if (entity.LocalId == localID && entity is Primitive)
{ {
LLVector3 pos = entity.Pos; LLVector3 pos = entity.Pos;
pos.X = x; pos.X = x;
@ -171,7 +171,7 @@ namespace OpenSim.Region.Scenes
{ {
if (entity is Avatar) if (entity is Avatar)
{ {
res = entity.localid; res = entity.LocalId;
} }
} }
return res; return res;

View File

@ -564,7 +564,7 @@ namespace OpenSim.Region.Scenes
try try
{ {
OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "World.cs:AddViewerAgent() - Creating new avatar for remote viewer agent"); OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "World.cs:AddViewerAgent() - Creating new avatar for remote viewer agent");
newAvatar = new Avatar(remoteClient, this, m_clientThreads, this.m_regInfo); newAvatar = new Avatar(remoteClient, this, this.m_regInfo);
OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "World.cs:AddViewerAgent() - Adding new avatar to world"); OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "World.cs:AddViewerAgent() - Adding new avatar to world");
OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "World.cs:AddViewerAgent() - Starting RegionHandshake "); OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "World.cs:AddViewerAgent() - Starting RegionHandshake ");

View File

@ -110,6 +110,12 @@
<Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package> <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
<Private>False</Private> <Private>False</Private>
</ProjectReference> </ProjectReference>
<ProjectReference Include="..\OpenSim.Region\OpenSim.Region.csproj">
<Name>OpenSim.Region</Name>
<Project>{196916AF-0000-0000-0000-000000000000}</Project>
<Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\Common\OpenSim.Servers\OpenSim.Servers.csproj"> <ProjectReference Include="..\..\Common\OpenSim.Servers\OpenSim.Servers.csproj">
<Name>OpenSim.Servers</Name> <Name>OpenSim.Servers</Name>
<Project>{8BB20F0A-0000-0000-0000-000000000000}</Project> <Project>{8BB20F0A-0000-0000-0000-000000000000}</Project>

View File

@ -540,7 +540,6 @@
</Files> </Files>
</Project> </Project>
<Project name="OpenSim.RegionServer" path="OpenSim/OpenSim.RegionServer" type="Library"> <Project name="OpenSim.RegionServer" path="OpenSim/OpenSim.RegionServer" type="Library">
<Configuration name="Debug"> <Configuration name="Debug">
<Options> <Options>
@ -564,6 +563,7 @@
<Reference name="OpenSim.Framework.Console"/> <Reference name="OpenSim.Framework.Console"/>
<Reference name="OpenSim.GenericConfig.Xml"/> <Reference name="OpenSim.GenericConfig.Xml"/>
<Reference name="OpenSim.Physics.Manager"/> <Reference name="OpenSim.Physics.Manager"/>
<Reference name="OpenSim.Region"/>
<Reference name="OpenSim.Servers"/> <Reference name="OpenSim.Servers"/>
<Reference name="OpenSim.Caches"/> <Reference name="OpenSim.Caches"/>
<Reference name="XMLRPC"/> <Reference name="XMLRPC"/>
@ -574,6 +574,7 @@
</Project> </Project>
<Project name="OpenSim.Region" path="OpenSim/OpenSim.Region" type="Library"> <Project name="OpenSim.Region" path="OpenSim/OpenSim.Region" type="Library">
<Configuration name="Debug"> <Configuration name="Debug">
<Options> <Options>
@ -670,42 +671,12 @@
<Reference name="XMLRPC"/> <Reference name="XMLRPC"/>
<Reference name="OpenSim.GridInterfaces.Local"/> <Reference name="OpenSim.GridInterfaces.Local"/>
<Reference name="OpenSim.Servers"/> <Reference name="OpenSim.Servers"/>
<Reference name="OpenGrid.Framework.Communications"/>
<Reference name="OpenSim.LocalCommunications"/>
<Reference name="OpenSim.Caches"/> <Reference name="OpenSim.Caches"/>
<Reference name="OpenSim.RegionServer"/> <Reference name="OpenSim.RegionServer"/>
<Reference name="OpenSim.World"/> <Reference name="OpenSim.Region"/>
<Files>
<Match pattern="*.cs" recurse="true"/>
</Files>
</Project>
<Project name="SimpleApp2" path="OpenSim/Examples/SimpleApp2" type="Exe">
<Configuration name="Debug">
<Options>
<OutputPath>../../../bin/</OutputPath>
</Options>
</Configuration>
<Configuration name="Release">
<Options>
<OutputPath>../../../bin/</OutputPath>
</Options>
</Configuration>
<ReferencePath>../../../bin/</ReferencePath>
<Reference name="libsecondlife.dll"/>
<Reference name="System" localCopy="false"/>
<Reference name="System.Data.dll"/>
<Reference name="System.Xml"/>
<Reference name="OpenSim.Framework.Console"/>
<Reference name="OpenSim.Framework"/>
<Reference name="XMLRPC"/>
<Reference name="OpenSim.GridInterfaces.Local"/>
<Reference name="OpenSim.Servers"/>
<Reference name="OpenSim.Caches"/>
<Reference name="OpenSim.RegionServer"/>
<Reference name="OpenSim.World"/>
<Files> <Files>
<Match pattern="*.cs" recurse="true"/> <Match pattern="*.cs" recurse="true"/>