mirror of
https://github.com/opensim/opensim.git
synced 2026-08-12 20:55:43 +08:00
* Added some inter-region comms glue for allowing sims to chat amongst themsevles about an agent behind the agent's back.
* Will be using this glue Tomorrow/today to tell other regions what the agent's draw distance is and what region they're actually in so the region can make decisions on what prim to send, if any.
This commit is contained in:
23
OpenSim/Framework/ChildAgentDataUpdate.cs
Normal file
23
OpenSim/Framework/ChildAgentDataUpdate.cs
Normal file
@@ -0,0 +1,23 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace OpenSim.Framework
|
||||
{
|
||||
[Serializable]
|
||||
public class ChildAgentDataUpdate
|
||||
{
|
||||
public ChildAgentDataUpdate()
|
||||
{
|
||||
|
||||
}
|
||||
public sLLVector3 Position;
|
||||
public ulong regionHandle;
|
||||
public float drawdistance;
|
||||
public sLLVector3 cameraPosition;
|
||||
public sLLVector3 Velocity;
|
||||
public float AVHeight;
|
||||
public Guid AgentID;
|
||||
public float godlevel;
|
||||
}
|
||||
}
|
||||
@@ -36,6 +36,7 @@ namespace OpenSim.Framework.Communications
|
||||
bool InformRegionOfChildAgent(ulong regionHandle, AgentCircuitData agentData);
|
||||
bool InformRegionOfPrimCrossing(ulong regionHandle, LLUUID primID, string objData);
|
||||
bool RegionUp(SearializableRegionInfo region, ulong regionhandle);
|
||||
bool ChildAgentUpdate(ulong regionHandle, ChildAgentDataUpdate cAgentData);
|
||||
|
||||
bool ExpectAvatarCrossing(ulong regionHandle, LLUUID agentID, LLVector3 position, bool isFlying);
|
||||
bool ExpectPrimCrossing(ulong regionHandle, LLUUID primID, LLVector3 position, bool isFlying);
|
||||
|
||||
@@ -48,6 +48,8 @@ namespace OpenSim.Framework
|
||||
|
||||
public delegate bool RegionUp(RegionInfo region);
|
||||
|
||||
public delegate bool ChildAgentUpdate(ulong regionHandle, ChildAgentDataUpdate cAgentData);
|
||||
|
||||
|
||||
|
||||
public interface IRegionCommsListener
|
||||
@@ -62,6 +64,7 @@ namespace OpenSim.Framework
|
||||
event UpdateNeighbours OnNeighboursUpdate;
|
||||
event CloseAgentConnection OnCloseAgentConnection;
|
||||
event RegionUp OnRegionUp;
|
||||
event ChildAgentUpdate OnChildAgentUpdate;
|
||||
|
||||
}
|
||||
}
|
||||
@@ -43,6 +43,7 @@ namespace OpenSim.Framework
|
||||
public event AcknowledgePrimCross OnAcknowledgePrimCrossed;
|
||||
public event CloseAgentConnection OnCloseAgentConnection;
|
||||
public event RegionUp OnRegionUp;
|
||||
public event ChildAgentUpdate OnChildAgentUpdate;
|
||||
public string debugRegionName="";
|
||||
|
||||
|
||||
@@ -81,6 +82,16 @@ namespace OpenSim.Framework
|
||||
return false;
|
||||
}
|
||||
|
||||
public virtual bool TriggerChildAgentUpdate(ulong regionHandle, ChildAgentDataUpdate cAgentData)
|
||||
{
|
||||
if (OnChildAgentUpdate != null)
|
||||
{
|
||||
OnChildAgentUpdate(regionHandle, cAgentData);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public virtual bool TriggerExpectAvatarCrossing(ulong regionHandle, LLUUID agentID, LLVector3 position,
|
||||
bool isFlying)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user