From db0c65ea568d208d0017e466f67275036b5544b4 Mon Sep 17 00:00:00 2001 From: Justin Clarke Casey Date: Fri, 19 Dec 2008 21:03:56 +0000 Subject: * refactor: move sound trigger from scene into sepearate SoundModule --- OpenSim/Region/Environment/Scenes/Scene.cs | 22 +++------------------- 1 file changed, 3 insertions(+), 19 deletions(-) (limited to 'OpenSim/Region/Environment/Scenes') diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index dededd4..1476f88 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs @@ -2341,31 +2341,15 @@ namespace OpenSim.Region.Environment.Scenes client.OnDeactivateGesture += gesturesModule.DeactivateGesture; } - //sound - client.OnSoundTrigger += SoundTrigger; + ISoundModule soundModule = RequestModuleInterface(); + if (soundModule != null) + client.OnSoundTrigger += soundModule.TriggerSound; client.OnObjectOwner += ObjectOwner; // EventManager.TriggerOnNewClient(client); } - // Sound - public virtual void SoundTrigger( UUID soundId, UUID ownerID, UUID objectID, UUID parentID, - float gain, Vector3 position, UInt64 handle) - { - foreach (ScenePresence p in GetAvatars()) - { - double dis = Util.GetDistanceTo(p.AbsolutePosition, position); - if (dis > 100.0) // Max audio distance - continue; - - // Scale by distance - gain = (float)((double)gain*((100.0 - dis) / 100.0)); - p.ControllingClient.SendTriggeredSound(soundId, ownerID, objectID, parentID, handle, position, (float)gain); - } - - } - /// /// Teleport an avatar to their home region /// -- cgit v1.1