mirror of
https://github.com/opensim/opensim.git
synced 2026-08-11 03:45:35 +08:00
*Made a much more network friendly method of ban and pass line sending
*Added an event that is triggered when an agent enters a new parcel
This commit is contained in:
@@ -230,8 +230,8 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
m_LandManager = new LandManager(this, m_regInfo);
|
||||
|
||||
//Bind Storage Manager functions to some land manager functions for this scene
|
||||
m_LandManager.OnLandObjectAdded += new LandManager.LandObjectAdded(m_storageManager.DataStore.StoreLandObject);
|
||||
m_LandManager.OnLandObjectRemoved += new LandManager.LandObjectRemoved(m_storageManager.DataStore.RemoveLandObject);
|
||||
EventManager.OnLandObjectAdded += new EventManager.LandObjectAdded(m_storageManager.DataStore.StoreLandObject);
|
||||
EventManager.OnLandObjectRemoved += new EventManager.LandObjectRemoved(m_storageManager.DataStore.RemoveLandObject);
|
||||
|
||||
m_estateManager = new EstateManager(this, m_regInfo);
|
||||
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
using libsecondlife;
|
||||
using OpenSim.Framework;
|
||||
using OpenSim.Region.Environment.Interfaces;
|
||||
using OpenSim.Region.Environment.LandManagement;
|
||||
|
||||
namespace OpenSim.Region.Environment.Scenes
|
||||
{
|
||||
@@ -78,6 +79,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
public delegate void OnPermissionErrorDelegate(LLUUID user, string reason);
|
||||
|
||||
public event ObjectGrabDelegate OnObjectGrab;
|
||||
|
||||
public event OnPermissionErrorDelegate OnPermissionError;
|
||||
|
||||
public delegate void NewRezScript(uint localID, LLUUID itemID, string script);
|
||||
@@ -96,6 +98,18 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
|
||||
public event SceneGroupGrabed OnSceneGroupGrab;
|
||||
|
||||
public delegate void LandObjectAdded(Land newParcel, LLUUID regionUUID);
|
||||
|
||||
public event LandObjectAdded OnLandObjectAdded;
|
||||
|
||||
public delegate void LandObjectRemoved(LLUUID globalID);
|
||||
|
||||
public event LandObjectRemoved OnLandObjectRemoved;
|
||||
|
||||
public delegate void AvatarEnteringNewParcel(ScenePresence avatar, int localLandID, LLUUID regionID);
|
||||
|
||||
public event AvatarEnteringNewParcel OnAvatarEnteringNewParcel;
|
||||
|
||||
public void TriggerPermissionError(LLUUID user, string reason)
|
||||
{
|
||||
if (OnPermissionError != null)
|
||||
@@ -210,5 +224,33 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
OnSceneGroupGrab(groupID, offset, userID);
|
||||
}
|
||||
}
|
||||
|
||||
public void TriggerLandObjectAdded(Land newParcel,LLUUID regionID)
|
||||
{
|
||||
if (OnLandObjectAdded != null)
|
||||
{
|
||||
OnLandObjectAdded(newParcel, regionID);
|
||||
}
|
||||
}
|
||||
public void TriggerLandObjectRemoved(LLUUID globalID)
|
||||
{
|
||||
if (OnLandObjectRemoved != null)
|
||||
{
|
||||
OnLandObjectRemoved(globalID);
|
||||
}
|
||||
}
|
||||
public void TriggerLandObjectUpdated(uint localParcelID, Land newParcel)
|
||||
{
|
||||
//triggerLandObjectRemoved(localParcelID);
|
||||
TriggerLandObjectAdded(newParcel,newParcel.m_scene.RegionInfo.RegionID);
|
||||
}
|
||||
|
||||
public void TriggerAvatarEnteringNewParcel(ScenePresence avatar, int localLandID, LLUUID regionID)
|
||||
{
|
||||
if (OnAvatarEnteringNewParcel != null)
|
||||
{
|
||||
OnAvatarEnteringNewParcel(avatar, localLandID, regionID);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -42,7 +42,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
{
|
||||
public static AvatarAnimations Animations;
|
||||
public static byte[] DefaultTexture;
|
||||
|
||||
public LLUUID currentParcelUUID = LLUUID.Zero;
|
||||
private List<LLUUID> m_animations = new List<LLUUID>();
|
||||
private List<int> m_animationSeqs = new List<int>();
|
||||
|
||||
@@ -448,6 +448,11 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
}
|
||||
}
|
||||
|
||||
public void forceAvatarMovement(Vector3 position, Quaternion rotation)
|
||||
{
|
||||
AddNewMovement(position, rotation);
|
||||
}
|
||||
|
||||
#region Status Methods
|
||||
/// <summary>
|
||||
/// This turns a child agent, into a root agent
|
||||
|
||||
Reference in New Issue
Block a user