From 70ada9181de1b89cc329ac551036891106ff7426 Mon Sep 17 00:00:00 2001
From: Sean Dague
Date: Tue, 20 May 2008 20:39:44 +0000
Subject: move SceneEvents.cs to EventManager.cs, as that's actually the name
of the contained class.
---
OpenSim/Region/Environment/Scenes/EventManager.cs | 637 ++++++++++++++++++++++
OpenSim/Region/Environment/Scenes/SceneEvents.cs | 637 ----------------------
2 files changed, 637 insertions(+), 637 deletions(-)
create mode 100644 OpenSim/Region/Environment/Scenes/EventManager.cs
delete mode 100644 OpenSim/Region/Environment/Scenes/SceneEvents.cs
(limited to 'OpenSim/Region')
diff --git a/OpenSim/Region/Environment/Scenes/EventManager.cs b/OpenSim/Region/Environment/Scenes/EventManager.cs
new file mode 100644
index 0000000..7ff9213
--- /dev/null
+++ b/OpenSim/Region/Environment/Scenes/EventManager.cs
@@ -0,0 +1,637 @@
+/*
+ * Copyright (c) Contributors, http://opensimulator.org/
+ * See CONTRIBUTORS.TXT for a full list of copyright holders.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * * Neither the name of the OpenSim Project nor the
+ * names of its contributors may be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+using System;
+using libsecondlife;
+using OpenSim.Framework;
+using OpenSim.Region.Environment.Interfaces;
+using Caps=OpenSim.Framework.Communications.Capabilities.Caps;
+
+namespace OpenSim.Region.Environment.Scenes
+{
+ ///
+ /// A class for triggering remote scene events.
+ ///
+ public class EventManager
+ {
+ public delegate void OnFrameDelegate();
+
+ public event OnFrameDelegate OnFrame;
+
+ public delegate void ClientMovement(ScenePresence client);
+
+ public event ClientMovement OnClientMovement;
+
+ public delegate void OnTerrainTickDelegate();
+
+ public event OnTerrainTickDelegate OnTerrainTick;
+
+ public delegate void OnBackupDelegate(IRegionDataStore datastore);
+
+ public event OnBackupDelegate OnBackup;
+
+ public delegate void OnNewClientDelegate(IClientAPI client);
+
+ public event OnNewClientDelegate OnNewClient;
+
+ public delegate void OnNewPresenceDelegate(ScenePresence presence);
+
+ public event OnNewPresenceDelegate OnNewPresence;
+
+ public delegate void OnRemovePresenceDelegate(LLUUID agentId);
+
+ public event OnRemovePresenceDelegate OnRemovePresence;
+
+ public delegate void OnParcelPrimCountUpdateDelegate();
+
+ public event OnParcelPrimCountUpdateDelegate OnParcelPrimCountUpdate;
+
+ public delegate void OnParcelPrimCountAddDelegate(SceneObjectGroup obj);
+
+ public event OnParcelPrimCountAddDelegate OnParcelPrimCountAdd;
+
+ public delegate void OnPluginConsoleDelegate(string[] args);
+
+ public event OnPluginConsoleDelegate OnPluginConsole;
+
+ public delegate void OnShutdownDelegate();
+
+ public event OnShutdownDelegate OnShutdown;
+
+ public delegate void ObjectGrabDelegate(uint localID, LLVector3 offsetPos, IClientAPI remoteClient);
+ public delegate void ObjectDeGrabDelegate(uint localID, IClientAPI remoteClient);
+
+ public delegate void OnPermissionErrorDelegate(LLUUID user, string reason);
+
+ public event ObjectGrabDelegate OnObjectGrab;
+ public event ObjectDeGrabDelegate OnObjectDeGrab;
+
+ public event OnPermissionErrorDelegate OnPermissionError;
+
+ public delegate void NewRezScript(uint localID, LLUUID itemID, string script);
+
+ public event NewRezScript OnRezScript;
+
+ public delegate void RemoveScript(uint localID, LLUUID itemID);
+
+ public event RemoveScript OnRemoveScript;
+
+ public delegate bool SceneGroupMoved(LLUUID groupID, LLVector3 delta);
+
+ public event SceneGroupMoved OnSceneGroupMove;
+
+ public delegate void SceneGroupGrabed(LLUUID groupID, LLVector3 offset, LLUUID userID);
+
+ public event SceneGroupGrabed OnSceneGroupGrab;
+
+ public delegate void LandObjectAdded(ILandObject newParcel);
+
+ 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 delegate void SignificantClientMovement(IClientAPI remote_client);
+
+ public event SignificantClientMovement OnSignificantClientMovement;
+
+
+
+ public delegate void NewGridInstantMessage(GridInstantMessage message);
+
+ public event NewGridInstantMessage OnGridInstantMessageToIMModule;
+
+ public event NewGridInstantMessage OnGridInstantMessageToFriendsModule;
+
+ public event NewGridInstantMessage OnGridInstantMessageToGroupsModule;
+
+ public delegate void ClientClosed(LLUUID clientID);
+
+ public event ClientClosed OnClientClosed;
+
+ public delegate void ScriptChangedEvent(uint localID, uint change);
+
+ public event ScriptChangedEvent OnScriptChangedEvent;
+
+ public delegate void ScriptControlEvent(uint localID, LLUUID item, LLUUID avatarID, uint held, uint changed);
+
+ public event ScriptControlEvent OnScriptControlEvent;
+
+ public delegate void ScriptAtTargetEvent(uint localID, uint handle, LLVector3 targetpos, LLVector3 atpos);
+
+ public event ScriptAtTargetEvent OnScriptAtTargetEvent;
+
+ public delegate void ScriptNotAtTargetEvent(uint localID);
+
+ public event ScriptNotAtTargetEvent OnScriptNotAtTargetEvent;
+
+ public event OnNewPresenceDelegate OnMakeChildAgent;
+
+ public delegate void NewInventoryItemUploadComplete(LLUUID avatarID, LLUUID assetID, string name, int userlevel);
+
+ public event NewInventoryItemUploadComplete OnNewInventoryItemUploadComplete;
+
+ public delegate void RequestChangeWaterHeight(float height);
+
+ public event RequestChangeWaterHeight OnRequestChangeWaterHeight;
+
+ public delegate void AvatarKillData(uint KillerLocalID, ScenePresence avatar);
+
+ public event AvatarKillData OnAvatarKilled;
+
+ ///
+ /// RegisterCapsEvent is called by Scene after the Caps object
+ /// has been instantiated and before it is return to the
+ /// client and provides region modules to add their caps.
+ ///
+ public delegate void RegisterCapsEvent(LLUUID agentID, Caps caps);
+ public event RegisterCapsEvent OnRegisterCaps;
+ ///
+ /// DeregisterCapsEvent is called by Scene when the caps
+ /// handler for an agent are removed.
+ ///
+ public delegate void DeregisterCapsEvent(LLUUID agentID, Caps caps);
+ public event DeregisterCapsEvent OnDeregisterCaps;
+
+ public class MoneyTransferArgs : EventArgs
+ {
+ public LLUUID sender;
+ public LLUUID receiver;
+
+ // Always false. The SL protocol sucks.
+ public bool authenticated = false;
+
+ public int amount;
+ public int transactiontype;
+ public string description;
+
+ public MoneyTransferArgs(LLUUID asender, LLUUID areceiver, int aamount, int atransactiontype, string adescription)
+ {
+ sender = asender;
+ receiver = areceiver;
+ amount = aamount;
+ transactiontype = atransactiontype;
+ description = adescription;
+ }
+ }
+
+ public class LandBuyArgs : EventArgs
+ {
+ public LLUUID agentId = LLUUID.Zero;
+
+ public LLUUID groupId = LLUUID.Zero;
+
+ public LLUUID parcelOwnerID = LLUUID.Zero;
+
+ public bool final = false;
+ public bool groupOwned = false;
+ public bool removeContribution = false;
+ public int parcelLocalID = 0;
+ public int parcelArea = 0;
+ public int parcelPrice = 0;
+ public bool authenticated = false;
+ public bool landValidated = false;
+ public bool economyValidated = false;
+ public int transactionID = 0;
+ public int amountDebited = 0;
+
+
+ public LandBuyArgs(LLUUID pagentId, LLUUID pgroupId, bool pfinal, bool pgroupOwned,
+ bool premoveContribution, int pparcelLocalID, int pparcelArea, int pparcelPrice,
+ bool pauthenticated)
+ {
+ agentId = pagentId;
+ groupId = pgroupId;
+ final = pfinal;
+ groupOwned = pgroupOwned;
+ removeContribution = premoveContribution;
+ parcelLocalID = pparcelLocalID;
+ parcelArea = pparcelArea;
+ parcelPrice = pparcelPrice;
+ authenticated = pauthenticated;
+ }
+ }
+
+ public delegate void MoneyTransferEvent(Object sender, MoneyTransferArgs e);
+
+ public delegate void LandBuy(Object sender, LandBuyArgs e);
+
+ public event MoneyTransferEvent OnMoneyTransfer;
+ public event LandBuy OnLandBuy;
+ public event LandBuy OnValidateLandBuy;
+
+ /* Designated Event Deletage Instances */
+
+ private ScriptChangedEvent handlerScriptChangedEvent = null; //OnScriptChangedEvent;
+ private ScriptAtTargetEvent handlerScriptAtTargetEvent = null;
+ private ScriptNotAtTargetEvent handlerScriptNotAtTargetEvent = null;
+ private ClientMovement handlerClientMovement = null; //OnClientMovement;
+ private OnPermissionErrorDelegate handlerPermissionError = null; //OnPermissionError;
+ private OnPluginConsoleDelegate handlerPluginConsole = null; //OnPluginConsole;
+ private OnFrameDelegate handlerFrame = null; //OnFrame;
+ private OnNewClientDelegate handlerNewClient = null; //OnNewClient;
+ private OnNewPresenceDelegate handlerNewPresence = null; //OnNewPresence;
+ private OnRemovePresenceDelegate handlerRemovePresence = null; //OnRemovePresence;
+ private OnBackupDelegate handlerBackup = null; //OnBackup;
+ private OnParcelPrimCountUpdateDelegate handlerParcelPrimCountUpdate = null; //OnParcelPrimCountUpdate;
+ private MoneyTransferEvent handlerMoneyTransfer = null; //OnMoneyTransfer;
+ private OnParcelPrimCountAddDelegate handlerParcelPrimCountAdd = null; //OnParcelPrimCountAdd;
+ private OnShutdownDelegate handlerShutdown = null; //OnShutdown;
+ private ObjectGrabDelegate handlerObjectGrab = null; //OnObjectGrab;
+ private ObjectDeGrabDelegate handlerObjectDeGrab = null; //OnObjectDeGrab;
+ private NewRezScript handlerRezScript = null; //OnRezScript;
+ private RemoveScript handlerRemoveScript = null; //OnRemoveScript;
+ private SceneGroupMoved handlerSceneGroupMove = null; //OnSceneGroupMove;
+ private SceneGroupGrabed handlerSceneGroupGrab = null; //OnSceneGroupGrab;
+ private LandObjectAdded handlerLandObjectAdded = null; //OnLandObjectAdded;
+ private LandObjectRemoved handlerLandObjectRemoved = null; //OnLandObjectRemoved;
+ private AvatarEnteringNewParcel handlerAvatarEnteringNewParcel = null; //OnAvatarEnteringNewParcel;
+ private NewGridInstantMessage handlerGridInstantMessageToIM = null; //OnGridInstantMessageToIMModule;
+ private NewGridInstantMessage handlerGridInstantMessageToFriends = null; //OnGridInstantMessageToFriendsModule;
+ private ClientClosed handlerClientClosed = null; //OnClientClosed;
+ private OnNewPresenceDelegate handlerMakeChildAgent = null; //OnMakeChildAgent;
+ private OnTerrainTickDelegate handlerTerrainTick = null; // OnTerainTick;
+ private RegisterCapsEvent handlerRegisterCaps = null; // OnRegisterCaps;
+ private DeregisterCapsEvent handlerDeregisterCaps = null; // OnDeregisterCaps;
+ private NewInventoryItemUploadComplete handlerNewInventoryItemUpdateComplete = null;
+ private RequestChangeWaterHeight handlerRequestChangeWaterHeight = null; //OnRequestChangeWaterHeight
+ private ScriptControlEvent handlerScriptControlEvent = null;
+ private SignificantClientMovement handlerSignificantClientMovement = null;
+
+ private LandBuy handlerLandBuy = null;
+ private LandBuy handlerValidateLandBuy = null;
+ private AvatarKillData handlerAvatarKill = null;
+
+ public void TriggerOnScriptChangedEvent(uint localID, uint change)
+ {
+ handlerScriptChangedEvent = OnScriptChangedEvent;
+ if (handlerScriptChangedEvent != null)
+ handlerScriptChangedEvent(localID, change);
+ }
+
+ public void TriggerOnClientMovement(ScenePresence avatar)
+ {
+ handlerClientMovement = OnClientMovement;
+ if (handlerClientMovement != null)
+ handlerClientMovement(avatar);
+ }
+
+ public void TriggerPermissionError(LLUUID user, string reason)
+ {
+ handlerPermissionError = OnPermissionError;
+ if (handlerPermissionError != null)
+ handlerPermissionError(user, reason);
+ }
+
+ public void TriggerOnPluginConsole(string[] args)
+ {
+ handlerPluginConsole = OnPluginConsole;
+ if (handlerPluginConsole != null)
+ handlerPluginConsole(args);
+ }
+
+ public void TriggerOnFrame()
+ {
+ handlerFrame = OnFrame;
+ if (handlerFrame != null)
+ {
+ handlerFrame();
+ }
+ }
+
+ public void TriggerOnNewClient(IClientAPI client)
+ {
+ handlerNewClient = OnNewClient;
+ if (handlerNewClient != null)
+ handlerNewClient(client);
+ }
+
+ public void TriggerOnNewPresence(ScenePresence presence)
+ {
+ handlerNewPresence = OnNewPresence;
+ if (handlerNewPresence != null)
+ handlerNewPresence(presence);
+ }
+
+ public void TriggerOnRemovePresence(LLUUID agentId)
+ {
+ handlerRemovePresence = OnRemovePresence;
+ if (handlerRemovePresence != null)
+ {
+ handlerRemovePresence(agentId);
+ }
+ }
+
+ public void TriggerOnBackup(IRegionDataStore dstore)
+ {
+ handlerBackup = OnBackup;
+ if (handlerBackup != null)
+ {
+ handlerBackup(dstore);
+ }
+ }
+
+ public void TriggerParcelPrimCountUpdate()
+ {
+ handlerParcelPrimCountUpdate = OnParcelPrimCountUpdate;
+ if (handlerParcelPrimCountUpdate != null)
+ {
+ handlerParcelPrimCountUpdate();
+ }
+ }
+
+ public void TriggerMoneyTransfer(Object sender, MoneyTransferArgs e)
+ {
+ handlerMoneyTransfer = OnMoneyTransfer;
+ if (handlerMoneyTransfer != null)
+ {
+ handlerMoneyTransfer(sender, e);
+ }
+ }
+
+ public void TriggerTerrainTick()
+ {
+ handlerTerrainTick = OnTerrainTick;
+ if (handlerTerrainTick != null)
+ {
+ handlerTerrainTick();
+ }
+ }
+
+ public void TriggerParcelPrimCountAdd(SceneObjectGroup obj)
+ {
+ handlerParcelPrimCountAdd = OnParcelPrimCountAdd;
+ if (handlerParcelPrimCountAdd != null)
+ {
+ handlerParcelPrimCountAdd(obj);
+ }
+ }
+
+ public void TriggerShutdown()
+ {
+ handlerShutdown = OnShutdown;
+ if (handlerShutdown != null)
+ handlerShutdown();
+ }
+
+ public void TriggerObjectGrab(uint localID, LLVector3 offsetPos, IClientAPI remoteClient)
+ {
+ handlerObjectGrab = OnObjectGrab;
+ if (handlerObjectGrab != null)
+ {
+ handlerObjectGrab(localID, offsetPos, remoteClient);
+ }
+ }
+
+ public void TriggerObjectDeGrab(uint localID, IClientAPI remoteClient)
+ {
+ handlerObjectDeGrab = OnObjectDeGrab;
+ if (handlerObjectDeGrab != null)
+ {
+ handlerObjectDeGrab(localID, remoteClient);
+ }
+ }
+
+ public void TriggerRezScript(uint localID, LLUUID itemID, string script)
+ {
+ handlerRezScript = OnRezScript;
+ if (handlerRezScript != null)
+ {
+ handlerRezScript(localID, itemID, script);
+ }
+ }
+
+ public void TriggerRemoveScript(uint localID, LLUUID itemID)
+ {
+ handlerRemoveScript = OnRemoveScript;
+ if (handlerRemoveScript != null)
+ {
+ handlerRemoveScript(localID, itemID);
+ }
+ }
+
+ public bool TriggerGroupMove(LLUUID groupID, LLVector3 delta)
+ {
+ handlerSceneGroupMove = OnSceneGroupMove;
+
+ if (handlerSceneGroupMove != null)
+ {
+ return handlerSceneGroupMove(groupID, delta);
+ }
+ return true;
+ }
+
+ public void TriggerGroupGrab(LLUUID groupID, LLVector3 offset, LLUUID userID)
+ {
+ handlerSceneGroupGrab = OnSceneGroupGrab;
+ if (handlerSceneGroupGrab != null)
+ {
+ handlerSceneGroupGrab(groupID, offset, userID);
+ }
+ }
+
+ public void TriggerLandObjectAdded(ILandObject newParcel)
+ {
+ handlerLandObjectAdded = OnLandObjectAdded;
+
+ if (handlerLandObjectAdded != null)
+ {
+ handlerLandObjectAdded(newParcel);
+ }
+ }
+
+ public void TriggerLandObjectRemoved(LLUUID globalID)
+ {
+ handlerLandObjectRemoved = OnLandObjectRemoved;
+ if (handlerLandObjectRemoved != null)
+ {
+ handlerLandObjectRemoved(globalID);
+ }
+ }
+
+ public void TriggerLandObjectUpdated(uint localParcelID, ILandObject newParcel)
+ {
+ //triggerLandObjectRemoved(localParcelID);
+
+ TriggerLandObjectAdded(newParcel);
+ }
+
+ public void TriggerAvatarEnteringNewParcel(ScenePresence avatar, int localLandID, LLUUID regionID)
+ {
+ handlerAvatarEnteringNewParcel = OnAvatarEnteringNewParcel;
+
+ if (handlerAvatarEnteringNewParcel != null)
+ {
+ handlerAvatarEnteringNewParcel(avatar, localLandID, regionID);
+ }
+ }
+
+ ///Used to pass instnat messages around between the Scene, the Friends Module and the Instant Messsage Module
+ ///Object containing the Instant Message Data
+ ///A bit vector containing the modules to send the message to
+ public void TriggerGridInstantMessage(GridInstantMessage message, InstantMessageReceiver whichModule)
+ {
+ if ((whichModule & InstantMessageReceiver.IMModule) != 0)
+ {
+ handlerGridInstantMessageToIM = OnGridInstantMessageToIMModule;
+ if (handlerGridInstantMessageToIM != null)
+ {
+ handlerGridInstantMessageToIM(message);
+ }
+ }
+ if ((whichModule & InstantMessageReceiver.FriendsModule) != 0)
+ {
+ handlerGridInstantMessageToFriends = OnGridInstantMessageToFriendsModule;
+ if (handlerGridInstantMessageToFriends != null)
+ {
+ handlerGridInstantMessageToFriends(message);
+ }
+
+ }
+ }
+
+ public void TriggerClientClosed(LLUUID ClientID)
+ {
+ handlerClientClosed = OnClientClosed;
+ if (handlerClientClosed != null)
+ {
+ handlerClientClosed(ClientID);
+ }
+ }
+
+ public void TriggerOnMakeChildAgent(ScenePresence presence)
+ {
+ handlerMakeChildAgent = OnMakeChildAgent;
+ if (handlerMakeChildAgent != null)
+ {
+ handlerMakeChildAgent(presence);
+ }
+ }
+
+ public void TriggerOnRegisterCaps(LLUUID agentID, Caps caps)
+ {
+ handlerRegisterCaps = OnRegisterCaps;
+ if (handlerRegisterCaps != null)
+ {
+ handlerRegisterCaps(agentID, caps);
+ }
+ }
+
+ public void TriggerOnDeregisterCaps(LLUUID agentID, Caps caps)
+ {
+ handlerDeregisterCaps = OnDeregisterCaps;
+ if (handlerDeregisterCaps != null)
+ {
+ handlerDeregisterCaps(agentID, caps);
+ }
+ }
+
+ public void TriggerOnNewInventoryItemUploadComplete(LLUUID agentID, LLUUID AssetID, String AssetName, int userlevel)
+ {
+ handlerNewInventoryItemUpdateComplete = OnNewInventoryItemUploadComplete;
+ if (handlerNewInventoryItemUpdateComplete != null)
+ {
+ handlerNewInventoryItemUpdateComplete(agentID, AssetID, AssetName, userlevel);
+ }
+ }
+ public void TriggerLandBuy (Object sender, LandBuyArgs e)
+ {
+ handlerLandBuy = OnLandBuy;
+ if (handlerLandBuy != null)
+ {
+ handlerLandBuy(sender, e);
+ }
+ }
+ public void TriggerValidateLandBuy(Object sender, LandBuyArgs e)
+ {
+ handlerValidateLandBuy = OnValidateLandBuy;
+ if (handlerValidateLandBuy != null)
+ {
+ handlerValidateLandBuy(sender, e);
+ }
+ }
+
+ public void TriggerAtTargetEvent(uint localID, uint handle, LLVector3 targetpos, LLVector3 currentpos)
+ {
+ handlerScriptAtTargetEvent = OnScriptAtTargetEvent;
+ if (handlerScriptAtTargetEvent != null)
+ {
+ handlerScriptAtTargetEvent(localID, handle, targetpos, currentpos);
+ }
+ }
+
+ public void TriggerNotAtTargetEvent(uint localID)
+ {
+ handlerScriptNotAtTargetEvent = OnScriptNotAtTargetEvent;
+ if (handlerScriptNotAtTargetEvent != null)
+ {
+ handlerScriptNotAtTargetEvent(localID);
+ }
+ }
+
+ public void TriggerRequestChangeWaterHeight(float height)
+ {
+ handlerRequestChangeWaterHeight = OnRequestChangeWaterHeight;
+ if (handlerRequestChangeWaterHeight != null)
+ {
+ handlerRequestChangeWaterHeight(height);
+ }
+ }
+ public void TriggerAvatarKill(uint KillerObjectLocalID, ScenePresence DeadAvatar)
+ {
+ handlerAvatarKill = OnAvatarKilled;
+ if (handlerAvatarKill != null)
+ {
+ handlerAvatarKill(KillerObjectLocalID, DeadAvatar);
+ }
+ }
+
+ public void TriggerSignificantClientMovement(IClientAPI client)
+ {
+ handlerSignificantClientMovement = OnSignificantClientMovement;
+ if (handlerSignificantClientMovement != null)
+ {
+ handlerSignificantClientMovement(client);
+
+ }
+ }
+ internal void TriggerControlEvent(uint p, LLUUID scriptUUID, LLUUID avatarID, uint held, uint _changed)
+ {
+ handlerScriptControlEvent = OnScriptControlEvent;
+ if (handlerScriptControlEvent != null)
+ {
+ handlerScriptControlEvent(p, scriptUUID, avatarID, held, _changed);
+ }
+ }
+ }
+}
diff --git a/OpenSim/Region/Environment/Scenes/SceneEvents.cs b/OpenSim/Region/Environment/Scenes/SceneEvents.cs
deleted file mode 100644
index 7ff9213..0000000
--- a/OpenSim/Region/Environment/Scenes/SceneEvents.cs
+++ /dev/null
@@ -1,637 +0,0 @@
-/*
- * Copyright (c) Contributors, http://opensimulator.org/
- * See CONTRIBUTORS.TXT for a full list of copyright holders.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * * Neither the name of the OpenSim Project nor the
- * names of its contributors may be used to endorse or promote products
- * derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-using System;
-using libsecondlife;
-using OpenSim.Framework;
-using OpenSim.Region.Environment.Interfaces;
-using Caps=OpenSim.Framework.Communications.Capabilities.Caps;
-
-namespace OpenSim.Region.Environment.Scenes
-{
- ///
- /// A class for triggering remote scene events.
- ///
- public class EventManager
- {
- public delegate void OnFrameDelegate();
-
- public event OnFrameDelegate OnFrame;
-
- public delegate void ClientMovement(ScenePresence client);
-
- public event ClientMovement OnClientMovement;
-
- public delegate void OnTerrainTickDelegate();
-
- public event OnTerrainTickDelegate OnTerrainTick;
-
- public delegate void OnBackupDelegate(IRegionDataStore datastore);
-
- public event OnBackupDelegate OnBackup;
-
- public delegate void OnNewClientDelegate(IClientAPI client);
-
- public event OnNewClientDelegate OnNewClient;
-
- public delegate void OnNewPresenceDelegate(ScenePresence presence);
-
- public event OnNewPresenceDelegate OnNewPresence;
-
- public delegate void OnRemovePresenceDelegate(LLUUID agentId);
-
- public event OnRemovePresenceDelegate OnRemovePresence;
-
- public delegate void OnParcelPrimCountUpdateDelegate();
-
- public event OnParcelPrimCountUpdateDelegate OnParcelPrimCountUpdate;
-
- public delegate void OnParcelPrimCountAddDelegate(SceneObjectGroup obj);
-
- public event OnParcelPrimCountAddDelegate OnParcelPrimCountAdd;
-
- public delegate void OnPluginConsoleDelegate(string[] args);
-
- public event OnPluginConsoleDelegate OnPluginConsole;
-
- public delegate void OnShutdownDelegate();
-
- public event OnShutdownDelegate OnShutdown;
-
- public delegate void ObjectGrabDelegate(uint localID, LLVector3 offsetPos, IClientAPI remoteClient);
- public delegate void ObjectDeGrabDelegate(uint localID, IClientAPI remoteClient);
-
- public delegate void OnPermissionErrorDelegate(LLUUID user, string reason);
-
- public event ObjectGrabDelegate OnObjectGrab;
- public event ObjectDeGrabDelegate OnObjectDeGrab;
-
- public event OnPermissionErrorDelegate OnPermissionError;
-
- public delegate void NewRezScript(uint localID, LLUUID itemID, string script);
-
- public event NewRezScript OnRezScript;
-
- public delegate void RemoveScript(uint localID, LLUUID itemID);
-
- public event RemoveScript OnRemoveScript;
-
- public delegate bool SceneGroupMoved(LLUUID groupID, LLVector3 delta);
-
- public event SceneGroupMoved OnSceneGroupMove;
-
- public delegate void SceneGroupGrabed(LLUUID groupID, LLVector3 offset, LLUUID userID);
-
- public event SceneGroupGrabed OnSceneGroupGrab;
-
- public delegate void LandObjectAdded(ILandObject newParcel);
-
- 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 delegate void SignificantClientMovement(IClientAPI remote_client);
-
- public event SignificantClientMovement OnSignificantClientMovement;
-
-
-
- public delegate void NewGridInstantMessage(GridInstantMessage message);
-
- public event NewGridInstantMessage OnGridInstantMessageToIMModule;
-
- public event NewGridInstantMessage OnGridInstantMessageToFriendsModule;
-
- public event NewGridInstantMessage OnGridInstantMessageToGroupsModule;
-
- public delegate void ClientClosed(LLUUID clientID);
-
- public event ClientClosed OnClientClosed;
-
- public delegate void ScriptChangedEvent(uint localID, uint change);
-
- public event ScriptChangedEvent OnScriptChangedEvent;
-
- public delegate void ScriptControlEvent(uint localID, LLUUID item, LLUUID avatarID, uint held, uint changed);
-
- public event ScriptControlEvent OnScriptControlEvent;
-
- public delegate void ScriptAtTargetEvent(uint localID, uint handle, LLVector3 targetpos, LLVector3 atpos);
-
- public event ScriptAtTargetEvent OnScriptAtTargetEvent;
-
- public delegate void ScriptNotAtTargetEvent(uint localID);
-
- public event ScriptNotAtTargetEvent OnScriptNotAtTargetEvent;
-
- public event OnNewPresenceDelegate OnMakeChildAgent;
-
- public delegate void NewInventoryItemUploadComplete(LLUUID avatarID, LLUUID assetID, string name, int userlevel);
-
- public event NewInventoryItemUploadComplete OnNewInventoryItemUploadComplete;
-
- public delegate void RequestChangeWaterHeight(float height);
-
- public event RequestChangeWaterHeight OnRequestChangeWaterHeight;
-
- public delegate void AvatarKillData(uint KillerLocalID, ScenePresence avatar);
-
- public event AvatarKillData OnAvatarKilled;
-
- ///
- /// RegisterCapsEvent is called by Scene after the Caps object
- /// has been instantiated and before it is return to the
- /// client and provides region modules to add their caps.
- ///
- public delegate void RegisterCapsEvent(LLUUID agentID, Caps caps);
- public event RegisterCapsEvent OnRegisterCaps;
- ///
- /// DeregisterCapsEvent is called by Scene when the caps
- /// handler for an agent are removed.
- ///
- public delegate void DeregisterCapsEvent(LLUUID agentID, Caps caps);
- public event DeregisterCapsEvent OnDeregisterCaps;
-
- public class MoneyTransferArgs : EventArgs
- {
- public LLUUID sender;
- public LLUUID receiver;
-
- // Always false. The SL protocol sucks.
- public bool authenticated = false;
-
- public int amount;
- public int transactiontype;
- public string description;
-
- public MoneyTransferArgs(LLUUID asender, LLUUID areceiver, int aamount, int atransactiontype, string adescription)
- {
- sender = asender;
- receiver = areceiver;
- amount = aamount;
- transactiontype = atransactiontype;
- description = adescription;
- }
- }
-
- public class LandBuyArgs : EventArgs
- {
- public LLUUID agentId = LLUUID.Zero;
-
- public LLUUID groupId = LLUUID.Zero;
-
- public LLUUID parcelOwnerID = LLUUID.Zero;
-
- public bool final = false;
- public bool groupOwned = false;
- public bool removeContribution = false;
- public int parcelLocalID = 0;
- public int parcelArea = 0;
- public int parcelPrice = 0;
- public bool authenticated = false;
- public bool landValidated = false;
- public bool economyValidated = false;
- public int transactionID = 0;
- public int amountDebited = 0;
-
-
- public LandBuyArgs(LLUUID pagentId, LLUUID pgroupId, bool pfinal, bool pgroupOwned,
- bool premoveContribution, int pparcelLocalID, int pparcelArea, int pparcelPrice,
- bool pauthenticated)
- {
- agentId = pagentId;
- groupId = pgroupId;
- final = pfinal;
- groupOwned = pgroupOwned;
- removeContribution = premoveContribution;
- parcelLocalID = pparcelLocalID;
- parcelArea = pparcelArea;
- parcelPrice = pparcelPrice;
- authenticated = pauthenticated;
- }
- }
-
- public delegate void MoneyTransferEvent(Object sender, MoneyTransferArgs e);
-
- public delegate void LandBuy(Object sender, LandBuyArgs e);
-
- public event MoneyTransferEvent OnMoneyTransfer;
- public event LandBuy OnLandBuy;
- public event LandBuy OnValidateLandBuy;
-
- /* Designated Event Deletage Instances */
-
- private ScriptChangedEvent handlerScriptChangedEvent = null; //OnScriptChangedEvent;
- private ScriptAtTargetEvent handlerScriptAtTargetEvent = null;
- private ScriptNotAtTargetEvent handlerScriptNotAtTargetEvent = null;
- private ClientMovement handlerClientMovement = null; //OnClientMovement;
- private OnPermissionErrorDelegate handlerPermissionError = null; //OnPermissionError;
- private OnPluginConsoleDelegate handlerPluginConsole = null; //OnPluginConsole;
- private OnFrameDelegate handlerFrame = null; //OnFrame;
- private OnNewClientDelegate handlerNewClient = null; //OnNewClient;
- private OnNewPresenceDelegate handlerNewPresence = null; //OnNewPresence;
- private OnRemovePresenceDelegate handlerRemovePresence = null; //OnRemovePresence;
- private OnBackupDelegate handlerBackup = null; //OnBackup;
- private OnParcelPrimCountUpdateDelegate handlerParcelPrimCountUpdate = null; //OnParcelPrimCountUpdate;
- private MoneyTransferEvent handlerMoneyTransfer = null; //OnMoneyTransfer;
- private OnParcelPrimCountAddDelegate handlerParcelPrimCountAdd = null; //OnParcelPrimCountAdd;
- private OnShutdownDelegate handlerShutdown = null; //OnShutdown;
- private ObjectGrabDelegate handlerObjectGrab = null; //OnObjectGrab;
- private ObjectDeGrabDelegate handlerObjectDeGrab = null; //OnObjectDeGrab;
- private NewRezScript handlerRezScript = null; //OnRezScript;
- private RemoveScript handlerRemoveScript = null; //OnRemoveScript;
- private SceneGroupMoved handlerSceneGroupMove = null; //OnSceneGroupMove;
- private SceneGroupGrabed handlerSceneGroupGrab = null; //OnSceneGroupGrab;
- private LandObjectAdded handlerLandObjectAdded = null; //OnLandObjectAdded;
- private LandObjectRemoved handlerLandObjectRemoved = null; //OnLandObjectRemoved;
- private AvatarEnteringNewParcel handlerAvatarEnteringNewParcel = null; //OnAvatarEnteringNewParcel;
- private NewGridInstantMessage handlerGridInstantMessageToIM = null; //OnGridInstantMessageToIMModule;
- private NewGridInstantMessage handlerGridInstantMessageToFriends = null; //OnGridInstantMessageToFriendsModule;
- private ClientClosed handlerClientClosed = null; //OnClientClosed;
- private OnNewPresenceDelegate handlerMakeChildAgent = null; //OnMakeChildAgent;
- private OnTerrainTickDelegate handlerTerrainTick = null; // OnTerainTick;
- private RegisterCapsEvent handlerRegisterCaps = null; // OnRegisterCaps;
- private DeregisterCapsEvent handlerDeregisterCaps = null; // OnDeregisterCaps;
- private NewInventoryItemUploadComplete handlerNewInventoryItemUpdateComplete = null;
- private RequestChangeWaterHeight handlerRequestChangeWaterHeight = null; //OnRequestChangeWaterHeight
- private ScriptControlEvent handlerScriptControlEvent = null;
- private SignificantClientMovement handlerSignificantClientMovement = null;
-
- private LandBuy handlerLandBuy = null;
- private LandBuy handlerValidateLandBuy = null;
- private AvatarKillData handlerAvatarKill = null;
-
- public void TriggerOnScriptChangedEvent(uint localID, uint change)
- {
- handlerScriptChangedEvent = OnScriptChangedEvent;
- if (handlerScriptChangedEvent != null)
- handlerScriptChangedEvent(localID, change);
- }
-
- public void TriggerOnClientMovement(ScenePresence avatar)
- {
- handlerClientMovement = OnClientMovement;
- if (handlerClientMovement != null)
- handlerClientMovement(avatar);
- }
-
- public void TriggerPermissionError(LLUUID user, string reason)
- {
- handlerPermissionError = OnPermissionError;
- if (handlerPermissionError != null)
- handlerPermissionError(user, reason);
- }
-
- public void TriggerOnPluginConsole(string[] args)
- {
- handlerPluginConsole = OnPluginConsole;
- if (handlerPluginConsole != null)
- handlerPluginConsole(args);
- }
-
- public void TriggerOnFrame()
- {
- handlerFrame = OnFrame;
- if (handlerFrame != null)
- {
- handlerFrame();
- }
- }
-
- public void TriggerOnNewClient(IClientAPI client)
- {
- handlerNewClient = OnNewClient;
- if (handlerNewClient != null)
- handlerNewClient(client);
- }
-
- public void TriggerOnNewPresence(ScenePresence presence)
- {
- handlerNewPresence = OnNewPresence;
- if (handlerNewPresence != null)
- handlerNewPresence(presence);
- }
-
- public void TriggerOnRemovePresence(LLUUID agentId)
- {
- handlerRemovePresence = OnRemovePresence;
- if (handlerRemovePresence != null)
- {
- handlerRemovePresence(agentId);
- }
- }
-
- public void TriggerOnBackup(IRegionDataStore dstore)
- {
- handlerBackup = OnBackup;
- if (handlerBackup != null)
- {
- handlerBackup(dstore);
- }
- }
-
- public void TriggerParcelPrimCountUpdate()
- {
- handlerParcelPrimCountUpdate = OnParcelPrimCountUpdate;
- if (handlerParcelPrimCountUpdate != null)
- {
- handlerParcelPrimCountUpdate();
- }
- }
-
- public void TriggerMoneyTransfer(Object sender, MoneyTransferArgs e)
- {
- handlerMoneyTransfer = OnMoneyTransfer;
- if (handlerMoneyTransfer != null)
- {
- handlerMoneyTransfer(sender, e);
- }
- }
-
- public void TriggerTerrainTick()
- {
- handlerTerrainTick = OnTerrainTick;
- if (handlerTerrainTick != null)
- {
- handlerTerrainTick();
- }
- }
-
- public void TriggerParcelPrimCountAdd(SceneObjectGroup obj)
- {
- handlerParcelPrimCountAdd = OnParcelPrimCountAdd;
- if (handlerParcelPrimCountAdd != null)
- {
- handlerParcelPrimCountAdd(obj);
- }
- }
-
- public void TriggerShutdown()
- {
- handlerShutdown = OnShutdown;
- if (handlerShutdown != null)
- handlerShutdown();
- }
-
- public void TriggerObjectGrab(uint localID, LLVector3 offsetPos, IClientAPI remoteClient)
- {
- handlerObjectGrab = OnObjectGrab;
- if (handlerObjectGrab != null)
- {
- handlerObjectGrab(localID, offsetPos, remoteClient);
- }
- }
-
- public void TriggerObjectDeGrab(uint localID, IClientAPI remoteClient)
- {
- handlerObjectDeGrab = OnObjectDeGrab;
- if (handlerObjectDeGrab != null)
- {
- handlerObjectDeGrab(localID, remoteClient);
- }
- }
-
- public void TriggerRezScript(uint localID, LLUUID itemID, string script)
- {
- handlerRezScript = OnRezScript;
- if (handlerRezScript != null)
- {
- handlerRezScript(localID, itemID, script);
- }
- }
-
- public void TriggerRemoveScript(uint localID, LLUUID itemID)
- {
- handlerRemoveScript = OnRemoveScript;
- if (handlerRemoveScript != null)
- {
- handlerRemoveScript(localID, itemID);
- }
- }
-
- public bool TriggerGroupMove(LLUUID groupID, LLVector3 delta)
- {
- handlerSceneGroupMove = OnSceneGroupMove;
-
- if (handlerSceneGroupMove != null)
- {
- return handlerSceneGroupMove(groupID, delta);
- }
- return true;
- }
-
- public void TriggerGroupGrab(LLUUID groupID, LLVector3 offset, LLUUID userID)
- {
- handlerSceneGroupGrab = OnSceneGroupGrab;
- if (handlerSceneGroupGrab != null)
- {
- handlerSceneGroupGrab(groupID, offset, userID);
- }
- }
-
- public void TriggerLandObjectAdded(ILandObject newParcel)
- {
- handlerLandObjectAdded = OnLandObjectAdded;
-
- if (handlerLandObjectAdded != null)
- {
- handlerLandObjectAdded(newParcel);
- }
- }
-
- public void TriggerLandObjectRemoved(LLUUID globalID)
- {
- handlerLandObjectRemoved = OnLandObjectRemoved;
- if (handlerLandObjectRemoved != null)
- {
- handlerLandObjectRemoved(globalID);
- }
- }
-
- public void TriggerLandObjectUpdated(uint localParcelID, ILandObject newParcel)
- {
- //triggerLandObjectRemoved(localParcelID);
-
- TriggerLandObjectAdded(newParcel);
- }
-
- public void TriggerAvatarEnteringNewParcel(ScenePresence avatar, int localLandID, LLUUID regionID)
- {
- handlerAvatarEnteringNewParcel = OnAvatarEnteringNewParcel;
-
- if (handlerAvatarEnteringNewParcel != null)
- {
- handlerAvatarEnteringNewParcel(avatar, localLandID, regionID);
- }
- }
-
- ///Used to pass instnat messages around between the Scene, the Friends Module and the Instant Messsage Module
- ///Object containing the Instant Message Data
- ///A bit vector containing the modules to send the message to
- public void TriggerGridInstantMessage(GridInstantMessage message, InstantMessageReceiver whichModule)
- {
- if ((whichModule & InstantMessageReceiver.IMModule) != 0)
- {
- handlerGridInstantMessageToIM = OnGridInstantMessageToIMModule;
- if (handlerGridInstantMessageToIM != null)
- {
- handlerGridInstantMessageToIM(message);
- }
- }
- if ((whichModule & InstantMessageReceiver.FriendsModule) != 0)
- {
- handlerGridInstantMessageToFriends = OnGridInstantMessageToFriendsModule;
- if (handlerGridInstantMessageToFriends != null)
- {
- handlerGridInstantMessageToFriends(message);
- }
-
- }
- }
-
- public void TriggerClientClosed(LLUUID ClientID)
- {
- handlerClientClosed = OnClientClosed;
- if (handlerClientClosed != null)
- {
- handlerClientClosed(ClientID);
- }
- }
-
- public void TriggerOnMakeChildAgent(ScenePresence presence)
- {
- handlerMakeChildAgent = OnMakeChildAgent;
- if (handlerMakeChildAgent != null)
- {
- handlerMakeChildAgent(presence);
- }
- }
-
- public void TriggerOnRegisterCaps(LLUUID agentID, Caps caps)
- {
- handlerRegisterCaps = OnRegisterCaps;
- if (handlerRegisterCaps != null)
- {
- handlerRegisterCaps(agentID, caps);
- }
- }
-
- public void TriggerOnDeregisterCaps(LLUUID agentID, Caps caps)
- {
- handlerDeregisterCaps = OnDeregisterCaps;
- if (handlerDeregisterCaps != null)
- {
- handlerDeregisterCaps(agentID, caps);
- }
- }
-
- public void TriggerOnNewInventoryItemUploadComplete(LLUUID agentID, LLUUID AssetID, String AssetName, int userlevel)
- {
- handlerNewInventoryItemUpdateComplete = OnNewInventoryItemUploadComplete;
- if (handlerNewInventoryItemUpdateComplete != null)
- {
- handlerNewInventoryItemUpdateComplete(agentID, AssetID, AssetName, userlevel);
- }
- }
- public void TriggerLandBuy (Object sender, LandBuyArgs e)
- {
- handlerLandBuy = OnLandBuy;
- if (handlerLandBuy != null)
- {
- handlerLandBuy(sender, e);
- }
- }
- public void TriggerValidateLandBuy(Object sender, LandBuyArgs e)
- {
- handlerValidateLandBuy = OnValidateLandBuy;
- if (handlerValidateLandBuy != null)
- {
- handlerValidateLandBuy(sender, e);
- }
- }
-
- public void TriggerAtTargetEvent(uint localID, uint handle, LLVector3 targetpos, LLVector3 currentpos)
- {
- handlerScriptAtTargetEvent = OnScriptAtTargetEvent;
- if (handlerScriptAtTargetEvent != null)
- {
- handlerScriptAtTargetEvent(localID, handle, targetpos, currentpos);
- }
- }
-
- public void TriggerNotAtTargetEvent(uint localID)
- {
- handlerScriptNotAtTargetEvent = OnScriptNotAtTargetEvent;
- if (handlerScriptNotAtTargetEvent != null)
- {
- handlerScriptNotAtTargetEvent(localID);
- }
- }
-
- public void TriggerRequestChangeWaterHeight(float height)
- {
- handlerRequestChangeWaterHeight = OnRequestChangeWaterHeight;
- if (handlerRequestChangeWaterHeight != null)
- {
- handlerRequestChangeWaterHeight(height);
- }
- }
- public void TriggerAvatarKill(uint KillerObjectLocalID, ScenePresence DeadAvatar)
- {
- handlerAvatarKill = OnAvatarKilled;
- if (handlerAvatarKill != null)
- {
- handlerAvatarKill(KillerObjectLocalID, DeadAvatar);
- }
- }
-
- public void TriggerSignificantClientMovement(IClientAPI client)
- {
- handlerSignificantClientMovement = OnSignificantClientMovement;
- if (handlerSignificantClientMovement != null)
- {
- handlerSignificantClientMovement(client);
-
- }
- }
- internal void TriggerControlEvent(uint p, LLUUID scriptUUID, LLUUID avatarID, uint held, uint _changed)
- {
- handlerScriptControlEvent = OnScriptControlEvent;
- if (handlerScriptControlEvent != null)
- {
- handlerScriptControlEvent(p, scriptUUID, avatarID, held, _changed);
- }
- }
- }
-}
--
cgit v1.1