A few small changes and hopefully fixed the nant build problem (OpenSim.Framework came before OpenSim.Framework.Console, so was causing a problem as OpenSim.Framework references OpenSim.Framework.Console).
parent
ed80c7ae32
commit
2f2ec10172
|
@ -103,6 +103,7 @@ namespace OpenSim.Framework.Interfaces
|
|||
AgentCircuitData RequestClientInfo();
|
||||
|
||||
void AttachObject(uint localID, LLQuaternion rotation, byte attachPoint);
|
||||
void SendPrimitiveToClient(ulong regionHandle, ushort timeDilation, uint localID, PrimData primData, LLVector3 pos, LLQuaternion rotation, LLUUID textureID);
|
||||
void SendPrimitiveToClient(ulong regionHandle, ushort timeDilation, uint localID, PrimData primData, LLVector3 pos, LLUUID textureID);
|
||||
void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID, LLVector3 position, LLQuaternion rotation);
|
||||
}
|
||||
|
|
|
@ -70,8 +70,8 @@
|
|||
|
||||
<target name="build" depends="init" description="">
|
||||
<nant buildfile="Common/XmlRpcCS/XMLRPC.dll.build" target="build" />
|
||||
<nant buildfile="Common/OpenSim.Framework/OpenSim.Framework.dll.build" target="build" />
|
||||
<nant buildfile="Common/OpenSim.Framework.Console/OpenSim.Framework.Console.dll.build" target="build" />
|
||||
<nant buildfile="Common/OpenSim.Framework/OpenSim.Framework.dll.build" target="build" />
|
||||
<nant buildfile="Common/OpenSim.Servers/OpenSim.Servers.dll.build" target="build" />
|
||||
<nant buildfile="Common/OpenGrid.Framework.Communications/OpenGrid.Framework.Communications.dll.build" target="build" />
|
||||
<nant buildfile="OpenSim/OpenSim.Storage/LocalStorageDb4o/OpenSim.Storage.LocalStorageDb4o.dll.build" target="build" />
|
||||
|
|
|
@ -440,7 +440,7 @@ namespace OpenSim.Region
|
|||
PData.PathTwistBegin = addPacket.ObjectData.PathTwistBegin;
|
||||
LLVector3 pos1 = addPacket.ObjectData.RayEnd;
|
||||
this.primData.FullID = this.uuid = LLUUID.Random();
|
||||
this.localid = (uint)(localID);
|
||||
this.primData.LocalID = this.localid = (uint)(localID);
|
||||
this.primData.Position = this.Pos = pos1;
|
||||
|
||||
this.updateFlag = 1;
|
||||
|
|
|
@ -20,6 +20,8 @@ using OpenSim.Region.Estate;
|
|||
|
||||
namespace OpenSim.Region
|
||||
{
|
||||
public delegate bool FilterAvatarList(Avatar avatar);
|
||||
|
||||
public partial class World : WorldBase, ILocalStorageReceiver, IScriptAPI
|
||||
{
|
||||
protected System.Timers.Timer m_heartbeatTimer = new System.Timers.Timer();
|
||||
|
@ -592,6 +594,25 @@ namespace OpenSim.Region
|
|||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Request a filtered list of Avatars in this World
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public List<Avatar> RequestAvatarList(FilterAvatarList filter)
|
||||
{
|
||||
List<Avatar> result = new List<Avatar>();
|
||||
|
||||
foreach (Avatar avatar in Avatars.Values)
|
||||
{
|
||||
if (filter(avatar))
|
||||
{
|
||||
result.Add(avatar);
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public Avatar RequestAvatar(LLUUID avatarID)
|
||||
{
|
||||
if (this.Avatars.ContainsKey(avatarID))
|
||||
|
|
|
@ -448,6 +448,34 @@ namespace OpenSim
|
|||
/// Sends a full ObjectUpdatePacket to a client to inform it of a new primitive
|
||||
/// or big changes to a existing primitive.
|
||||
/// </summary>
|
||||
/// <param name="regionHandle"></param>
|
||||
/// <param name="timeDilation"></param>
|
||||
/// <param name="localID"></param>
|
||||
/// <param name="primData"></param>
|
||||
/// <param name="pos"></param>
|
||||
/// <param name="rotation"></param>
|
||||
/// <param name="textureID"></param>
|
||||
public void SendPrimitiveToClient(ulong regionHandle, ushort timeDilation, uint localID, PrimData primData, LLVector3 pos, LLQuaternion rotation, LLUUID textureID)
|
||||
{
|
||||
ObjectUpdatePacket outPacket = new ObjectUpdatePacket();
|
||||
outPacket.RegionData.RegionHandle = regionHandle;
|
||||
outPacket.RegionData.TimeDilation = timeDilation;
|
||||
outPacket.ObjectData = new ObjectUpdatePacket.ObjectDataBlock[1];
|
||||
outPacket.ObjectData[0] = this.CreatePrimUpdateBlock(primData, textureID);
|
||||
outPacket.ObjectData[0].ID = localID;
|
||||
outPacket.ObjectData[0].FullID = primData.FullID;
|
||||
byte[] pb = pos.GetBytes();
|
||||
Array.Copy(pb, 0, outPacket.ObjectData[0].ObjectData, 0, pb.Length);
|
||||
byte[] rot = rotation.GetBytes();
|
||||
Array.Copy(rot, 0, outPacket.ObjectData[0].ObjectData, 48, rot.Length);
|
||||
OutPacket(outPacket);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sends a full ObjectUpdatePacket to a client to inform it of a new primitive
|
||||
/// or big changes to a existing primitive.
|
||||
/// uses default rotation
|
||||
/// </summary>
|
||||
/// <param name="primData"></param>
|
||||
/// <param name="pos"></param>
|
||||
public void SendPrimitiveToClient(ulong regionHandle, ushort timeDilation, uint localID, PrimData primData, LLVector3 pos, LLUUID textureID)
|
||||
|
@ -473,9 +501,9 @@ namespace OpenSim
|
|||
protected ObjectUpdatePacket.ObjectDataBlock CreatePrimUpdateBlock(PrimData primData, LLUUID textureID)
|
||||
{
|
||||
ObjectUpdatePacket.ObjectDataBlock objupdate = new ObjectUpdatePacket.ObjectDataBlock();
|
||||
this.SetDefaultPrimPacketValues(objupdate, textureID);
|
||||
this.SetDefaultPrimPacketValues(objupdate);
|
||||
objupdate.UpdateFlags = 32 + 65536 + 131072 + 256 + 4 + 8 + 2048 + 524288 + 268435456;
|
||||
this.SetPrimPacketShapeData(objupdate, primData);
|
||||
this.SetPrimPacketShapeData(objupdate, primData, textureID);
|
||||
|
||||
return objupdate;
|
||||
}
|
||||
|
@ -484,7 +512,7 @@ namespace OpenSim
|
|||
/// Set some default values in a ObjectUpdatePacket
|
||||
/// </summary>
|
||||
/// <param name="objdata"></param>
|
||||
protected void SetDefaultPrimPacketValues(ObjectUpdatePacket.ObjectDataBlock objdata, LLUUID textureID)
|
||||
protected void SetDefaultPrimPacketValues(ObjectUpdatePacket.ObjectDataBlock objdata)
|
||||
{
|
||||
objdata.PSBlock = new byte[0];
|
||||
objdata.ExtraParams = new byte[1];
|
||||
|
@ -497,8 +525,6 @@ namespace OpenSim
|
|||
objdata.Material = 3;
|
||||
objdata.TextureAnim = new byte[0];
|
||||
objdata.Sound = LLUUID.Zero;
|
||||
LLObject.TextureEntry ntex = new LLObject.TextureEntry(textureID);
|
||||
objdata.TextureEntry = ntex.ToBytes();
|
||||
objdata.State = 0;
|
||||
objdata.Data = new byte[0];
|
||||
|
||||
|
@ -512,8 +538,10 @@ namespace OpenSim
|
|||
/// </summary>
|
||||
/// <param name="objectData"></param>
|
||||
/// <param name="primData"></param>
|
||||
protected void SetPrimPacketShapeData(ObjectUpdatePacket.ObjectDataBlock objectData, PrimData primData)
|
||||
protected void SetPrimPacketShapeData(ObjectUpdatePacket.ObjectDataBlock objectData, PrimData primData, LLUUID textureID)
|
||||
{
|
||||
LLObject.TextureEntry ntex = new LLObject.TextureEntry(textureID);
|
||||
objectData.TextureEntry = ntex.ToBytes();
|
||||
objectData.OwnerID = primData.OwnerID;
|
||||
objectData.PCode = primData.PCode;
|
||||
objectData.PathBegin =primData.PathBegin;
|
||||
|
|
37
prebuild.xml
37
prebuild.xml
|
@ -56,6 +56,25 @@
|
|||
|
||||
<!-- Core OpenSim Projects -->
|
||||
|
||||
<Project name="OpenSim.Framework.Console" path="Common/OpenSim.Framework.Console" type="Library">
|
||||
<Configuration name="Debug">
|
||||
<Options>
|
||||
<OutputPath>../../bin/</OutputPath>
|
||||
</Options>
|
||||
</Configuration>
|
||||
<Configuration name="Release">
|
||||
<Options>
|
||||
<OutputPath>../../bin/</OutputPath>
|
||||
</Options>
|
||||
</Configuration>
|
||||
|
||||
<ReferencePath>../../bin/</ReferencePath>
|
||||
<Reference name="System" localCopy="false"/>
|
||||
<Files>
|
||||
<Match pattern="*.cs" recurse="true"/>
|
||||
</Files>
|
||||
</Project>
|
||||
|
||||
<Project name="OpenSim.Framework" path="Common/OpenSim.Framework" type="Library">
|
||||
<Configuration name="Debug">
|
||||
<Options>
|
||||
|
@ -80,24 +99,6 @@
|
|||
</Files>
|
||||
</Project>
|
||||
|
||||
<Project name="OpenSim.Framework.Console" path="Common/OpenSim.Framework.Console" type="Library">
|
||||
<Configuration name="Debug">
|
||||
<Options>
|
||||
<OutputPath>../../bin/</OutputPath>
|
||||
</Options>
|
||||
</Configuration>
|
||||
<Configuration name="Release">
|
||||
<Options>
|
||||
<OutputPath>../../bin/</OutputPath>
|
||||
</Options>
|
||||
</Configuration>
|
||||
|
||||
<ReferencePath>../../bin/</ReferencePath>
|
||||
<Reference name="System" localCopy="false"/>
|
||||
<Files>
|
||||
<Match pattern="*.cs" recurse="true"/>
|
||||
</Files>
|
||||
</Project>
|
||||
|
||||
<Project name="OpenSim.Servers" path="Common/OpenSim.Servers" type="Library">
|
||||
<Configuration name="Debug">
|
||||
|
|
Loading…
Reference in New Issue