From 5876a4d392f4f1742325c65e52e7201e0f43108b Mon Sep 17 00:00:00 2001 From: Melanie Date: Thu, 7 Jun 2012 00:24:07 +0200 Subject: Prevent a null ref when getting the velocity of an avatar during login or logout. --- OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index d83b05d..a51c625 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs @@ -2536,12 +2536,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api { m_host.AddScriptLPS(1); - Vector3 vel; + Vector3 vel = Vector3.Zero; if (m_host.ParentGroup.IsAttachment) { ScenePresence avatar = m_host.ParentGroup.Scene.GetScenePresence(m_host.ParentGroup.AttachedAvatar); - vel = avatar.Velocity; + if (avatar != null) + vel = avatar.Velocity; } else { -- cgit v1.1 From a94510500357848f2dee26e599abad5256d2f5eb Mon Sep 17 00:00:00 2001 From: Melanie Date: Thu, 7 Jun 2012 00:24:33 +0200 Subject: Make timed bans / timed passes work as expected. Prevent transmission of media URLs to banned clients. --- .../CoreModules/World/Land/LandManagementModule.cs | 7 ++++-- .../Region/CoreModules/World/Land/LandObject.cs | 29 ++++++++++++++++++++++ 2 files changed, 34 insertions(+), 2 deletions(-) diff --git a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs index 02ac091..add1551 100644 --- a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs +++ b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs @@ -1101,8 +1101,11 @@ namespace OpenSim.Region.CoreModules.World.Land { if (!temp.Contains(currentParcel)) { - currentParcel.ForceUpdateLandInfo(); - temp.Add(currentParcel); + if (!currentParcel.IsEitherBannedOrRestricted(remote_client.AgentId)) + { + currentParcel.ForceUpdateLandInfo(); + temp.Add(currentParcel); + } } } } diff --git a/OpenSim/Region/CoreModules/World/Land/LandObject.cs b/OpenSim/Region/CoreModules/World/Land/LandObject.cs index 509c4d7..4284444 100644 --- a/OpenSim/Region/CoreModules/World/Land/LandObject.cs +++ b/OpenSim/Region/CoreModules/World/Land/LandObject.cs @@ -50,6 +50,7 @@ namespace OpenSim.Region.CoreModules.World.Land private bool[,] m_landBitmap = new bool[landArrayMax,landArrayMax]; private int m_lastSeqId = 0; + private int m_expiryCounter = 0; protected LandData m_landData = new LandData(); protected Scene m_scene; @@ -135,6 +136,8 @@ namespace OpenSim.Region.CoreModules.World.Land else LandData.GroupID = UUID.Zero; LandData.IsGroupOwned = is_group_owned; + + m_scene.EventManager.OnFrame += OnFrame; } #endregion @@ -1196,6 +1199,17 @@ namespace OpenSim.Region.CoreModules.World.Land #endregion + private void OnFrame() + { + m_expiryCounter++; + + if (m_expiryCounter >= 50) + { + ExpireAccessList(); + m_expiryCounter = 0; + } + } + private void ExpireAccessList() { List<LandAccessEntry> delete = new List<LandAccessEntry>(); @@ -1206,7 +1220,22 @@ namespace OpenSim.Region.CoreModules.World.Land delete.Add(entry); } foreach (LandAccessEntry entry in delete) + { LandData.ParcelAccessList.Remove(entry); + ScenePresence presence; + + if (m_scene.TryGetScenePresence(entry.AgentID, out presence) && (!presence.IsChildAgent)) + { + ILandObject land = m_scene.LandChannel.GetLandObject(presence.AbsolutePosition.X, presence.AbsolutePosition.Y); + if (land.LandData.LocalID == LandData.LocalID) + { + Vector3 pos = m_scene.GetNearestAllowedPosition(presence, land); + presence.TeleportWithMomentum(pos); + presence.ControllingClient.SendAlertMessage("You have been ejected from this land"); + } + } + m_log.DebugFormat("[LAND]: Removing entry {0} because it has expired", entry.AgentID); + } if (delete.Count > 0) m_scene.EventManager.TriggerLandObjectUpdated((uint)LandData.LocalID, this); -- cgit v1.1 From e93308072ea8ec106e429dc8071795018b58a75a Mon Sep 17 00:00:00 2001 From: Melanie Date: Thu, 7 Jun 2012 16:32:07 +0200 Subject: Make the "delay restart" button delay restart for 1 hour rather than aborting it altogether. Allow a maximum of three uses before the restart goes through. --- .../World/Estate/EstateManagementModule.cs | 8 ++- .../CoreModules/World/Region/RestartModule.cs | 83 ++++++++++++++-------- .../Region/Framework/Interfaces/IRestartModule.cs | 1 + 3 files changed, 61 insertions(+), 31 deletions(-) diff --git a/OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs b/OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs index 1e743c3..97a2f4a 100644 --- a/OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs +++ b/OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs @@ -61,6 +61,8 @@ namespace OpenSim.Region.CoreModules.World.Estate public event ChangeDelegate OnEstateInfoChange; public event MessageDelegate OnEstateMessage; + private int m_delayCount = 0; + #region Packet Data Responders private void clientSendDetailedEstateData(IClientAPI remote_client, UUID invoice) @@ -259,7 +261,11 @@ namespace OpenSim.Region.CoreModules.World.Estate { if (timeInSeconds == -1) { - restartModule.AbortRestart("Restart aborted by region manager"); + m_delayCount++; + if (m_delayCount > 3) + return; + + restartModule.DelayRestart(3600, "Restart delayed by region manager"); return; } diff --git a/OpenSim/Region/CoreModules/World/Region/RestartModule.cs b/OpenSim/Region/CoreModules/World/Region/RestartModule.cs index 65180b5a..287738a 100644 --- a/OpenSim/Region/CoreModules/World/Region/RestartModule.cs +++ b/OpenSim/Region/CoreModules/World/Region/RestartModule.cs @@ -59,6 +59,7 @@ namespace OpenSim.Region.CoreModules.World.Region protected bool m_Notice = false; protected IDialogModule m_DialogModule = null; protected string m_MarkerPath = String.Empty; + private int[] m_CurrentAlerts = null; public void Initialise(IConfigSource config) { @@ -141,6 +142,7 @@ namespace OpenSim.Region.CoreModules.World.Region m_Message = message; m_Initiator = initiator; m_Notice = notice; + m_CurrentAlerts = alerts; m_Alerts = new List<int>(alerts); m_Alerts.Sort(); m_Alerts.Reverse(); @@ -152,12 +154,12 @@ namespace OpenSim.Region.CoreModules.World.Region return; } - int nextInterval = DoOneNotice(); + int nextInterval = DoOneNotice(true); SetTimer(nextInterval); } - public int DoOneNotice() + public int DoOneNotice(bool sendOut) { if (m_Alerts.Count == 0 || m_Alerts[0] == 0) { @@ -182,34 +184,37 @@ namespace OpenSim.Region.CoreModules.World.Region m_Alerts.RemoveAt(0); - int minutes = currentAlert / 60; - string currentAlertString = String.Empty; - if (minutes > 0) + if (sendOut) { - if (minutes == 1) - currentAlertString += "1 minute"; - else - currentAlertString += String.Format("{0} minutes", minutes); + int minutes = currentAlert / 60; + string currentAlertString = String.Empty; + if (minutes > 0) + { + if (minutes == 1) + currentAlertString += "1 minute"; + else + currentAlertString += String.Format("{0} minutes", minutes); + if ((currentAlert % 60) != 0) + currentAlertString += " and "; + } if ((currentAlert % 60) != 0) - currentAlertString += " and "; - } - if ((currentAlert % 60) != 0) - { - int seconds = currentAlert % 60; - if (seconds == 1) - currentAlertString += "1 second"; - else - currentAlertString += String.Format("{0} seconds", seconds); - } + { + int seconds = currentAlert % 60; + if (seconds == 1) + currentAlertString += "1 second"; + else + currentAlertString += String.Format("{0} seconds", seconds); + } - string msg = String.Format(m_Message, currentAlertString); + string msg = String.Format(m_Message, currentAlertString); - if (m_DialogModule != null && msg != String.Empty) - { - if (m_Notice) - m_DialogModule.SendGeneralAlert(msg); - else - m_DialogModule.SendNotificationToUsersInRegion(m_Initiator, "System", msg); + if (m_DialogModule != null && msg != String.Empty) + { + if (m_Notice) + m_DialogModule.SendGeneralAlert(msg); + else + m_DialogModule.SendNotificationToUsersInRegion(m_Initiator, "System", msg); + } } return currentAlert - nextAlert; @@ -226,7 +231,25 @@ namespace OpenSim.Region.CoreModules.World.Region private void OnTimer(object source, ElapsedEventArgs e) { - int nextInterval = DoOneNotice(); + int nextInterval = DoOneNotice(true); + + SetTimer(nextInterval); + } + + public void DelayRestart(int seconds, string message) + { + if (m_CountdownTimer == null) + return; + + m_CountdownTimer.Stop(); + m_CountdownTimer = null; + + m_Alerts = new List<int>(m_CurrentAlerts); + m_Alerts.Add(seconds); + m_Alerts.Sort(); + m_Alerts.Reverse(); + + int nextInterval = DoOneNotice(false); SetTimer(nextInterval); } @@ -240,9 +263,9 @@ namespace OpenSim.Region.CoreModules.World.Region if (m_DialogModule != null && message != String.Empty) m_DialogModule.SendGeneralAlert(message); } - if (m_MarkerPath != String.Empty) - File.Delete(Path.Combine(m_MarkerPath, - m_Scene.RegionInfo.RegionID.ToString())); + if (m_MarkerPath != String.Empty) + File.Delete(Path.Combine(m_MarkerPath, + m_Scene.RegionInfo.RegionID.ToString())); } private void HandleRegionRestart(string module, string[] args) diff --git a/OpenSim/Region/Framework/Interfaces/IRestartModule.cs b/OpenSim/Region/Framework/Interfaces/IRestartModule.cs index c68550f..9b25beb 100644 --- a/OpenSim/Region/Framework/Interfaces/IRestartModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IRestartModule.cs @@ -35,5 +35,6 @@ namespace OpenSim.Region.Framework.Interfaces TimeSpan TimeUntilRestart { get; } void ScheduleRestart(UUID initiator, string message, int[] alerts, bool notice); void AbortRestart(string message); + void DelayRestart(int seconds, string message); } } -- cgit v1.1 From 91557f18cd796e64158d2e3dbdef28d0b3927d1b Mon Sep 17 00:00:00 2001 From: Melanie Date: Thu, 7 Jun 2012 17:59:20 +0200 Subject: Set collision sound type so custom sound types are recognized --- OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index a51c625..37738a5 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs @@ -4812,6 +4812,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api { m_host.CollisionSoundVolume = (float)impact_volume; m_host.CollisionSound = m_host.invalidCollisionSoundUUID; + m_host,CollisionSoundType = 0; return; } // TODO: Parameter check logic required. @@ -4831,6 +4832,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api } m_host.CollisionSoundVolume = (float)impact_volume; m_host.CollisionSound = soundId; + m_host.CollisionSoundType = 1; } public LSL_String llGetAnimation(string id) -- cgit v1.1 From 64aefe9c28fd5ceb9c92b4069d7915d6b77356fa Mon Sep 17 00:00:00 2001 From: Melanie Date: Thu, 7 Jun 2012 17:59:38 +0200 Subject: Disable default collision sounds until they can be uploaded, but enable custom ones --- OpenSim/Region/Framework/Scenes/CollisionSounds.cs | 111 +++++++++++---------- 1 file changed, 56 insertions(+), 55 deletions(-) diff --git a/OpenSim/Region/Framework/Scenes/CollisionSounds.cs b/OpenSim/Region/Framework/Scenes/CollisionSounds.cs index de82ddc..d72cf41 100644 --- a/OpenSim/Region/Framework/Scenes/CollisionSounds.cs +++ b/OpenSim/Region/Framework/Scenes/CollisionSounds.cs @@ -188,9 +188,6 @@ namespace OpenSim.Region.Framework.Scenes public static void PartCollisionSound(SceneObjectPart part, List<CollisionForSoundInfo> collidersinfolist) { - // disable for now - return; - if (collidersinfolist.Count == 0 || part == null) return; @@ -238,17 +235,19 @@ namespace OpenSim.Region.Framework.Scenes { if (!HaveSound) { - volume = Math.Abs(colInfo.relativeVel); - if (volume < 0.2f) - continue; - - volume *= volume * .0625f; // 4m/s == full volume - if (volume > 1.0f) - volume = 1.0f; - - soundID = m_TerrainPart[thisMaterial]; +// TODO: Import real collision sounds and uncomment this +// volume = Math.Abs(colInfo.relativeVel); +// if (volume < 0.2f) +// continue; +// +// volume *= volume * .0625f; // 4m/s == full volume +// if (volume > 1.0f) +// volume = 1.0f; +// +// soundID = m_TerrainPart[thisMaterial]; } - part.SendCollisionSound(soundID, volume, colInfo.position); + else // Remove this else when uncommenting the above + part.SendCollisionSound(soundID, volume, colInfo.position); doneownsound = true; } continue; @@ -269,40 +268,41 @@ namespace OpenSim.Region.Framework.Scenes if (volume == 0.0f) continue; } +// TODO: Import real collision sounds and uncomment this +// else +// { +// volume = Math.Abs(colInfo.relativeVel); +// if (volume < 0.2f) +// continue; +// +// volume *= volume * .0625f; // 4m/s == full volume +// if (volume > 1.0f) +// volume = 1.0f; +// +// int otherMaterial = (int)otherPart.Material; +// if (otherMaterial >= MaxMaterials) +// otherMaterial = 3; +// +// soundID = m_PartPart[thisMatScaled + otherMaterial]; +// } + } + + if (soundID != UUID.Zero) // Remove when sounds are there + { // Remove when sounds are there + if (doneownsound) + otherPart.SendCollisionSound(soundID, volume, colInfo.position); else { - volume = Math.Abs(colInfo.relativeVel); - if (volume < 0.2f) - continue; - - volume *= volume * .0625f; // 4m/s == full volume - if (volume > 1.0f) - volume = 1.0f; - - int otherMaterial = (int)otherPart.Material; - if (otherMaterial >= MaxMaterials) - otherMaterial = 3; - - soundID = m_PartPart[thisMatScaled + otherMaterial]; + part.SendCollisionSound(soundID, volume, colInfo.position); + doneownsound = true; } - } - - if (doneownsound) - otherPart.SendCollisionSound(soundID, volume, colInfo.position); - else - { - part.SendCollisionSound(soundID, volume, colInfo.position); - doneownsound = true; - } + } // Remove when sounds are there } } } public static void AvatarCollisionSound(ScenePresence av, List<CollisionForSoundInfo> collidersinfolist) { - // disable for now - return; - if (collidersinfolist.Count == 0 || av == null) return; @@ -341,22 +341,23 @@ namespace OpenSim.Region.Framework.Scenes continue; if (otherPart.CollisionSoundType > 0 && otherPart.CollisionSoundVolume > 0f) otherPart.SendCollisionSound(otherPart.CollisionSound, otherPart.CollisionSoundVolume, colInfo.position); - else - { - volume = Math.Abs(colInfo.relativeVel); - if (volume < 0.2f) - continue; - - volume *= volume * .0625f; // 4m/s == full volume - if (volume > 1.0f) - volume = 1.0f; - otherMaterial = (int)otherPart.Material; - if (otherMaterial >= MaxMaterials) - otherMaterial = 3; - - soundID = m_PartPart[thisMatScaled + otherMaterial]; - otherPart.SendCollisionSound(soundID, volume, colInfo.position); - } +//TODO: uncomment below when sounds are uploaded +// else +// { +// volume = Math.Abs(colInfo.relativeVel); +// if (volume < 0.2f) +// continue; +// +// volume *= volume * .0625f; // 4m/s == full volume +// if (volume > 1.0f) +// volume = 1.0f; +// otherMaterial = (int)otherPart.Material; +// if (otherMaterial >= MaxMaterials) +// otherMaterial = 3; +// +// soundID = m_PartPart[thisMatScaled + otherMaterial]; +// otherPart.SendCollisionSound(soundID, volume, colInfo.position); +// } continue; } /* @@ -374,4 +375,4 @@ namespace OpenSim.Region.Framework.Scenes } } } -} \ No newline at end of file +} -- cgit v1.1 From 31bc9c3ad34d280d7be89dae20ecb9486b5065bb Mon Sep 17 00:00:00 2001 From: Melanie Date: Thu, 7 Jun 2012 18:04:09 +0200 Subject: Typo correction --- OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 37738a5..667aa93 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs @@ -4812,7 +4812,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api { m_host.CollisionSoundVolume = (float)impact_volume; m_host.CollisionSound = m_host.invalidCollisionSoundUUID; - m_host,CollisionSoundType = 0; + m_host.CollisionSoundType = 0; return; } // TODO: Parameter check logic required. -- cgit v1.1 From f5cbe56c569ad9453a055adba0636cf4a6614ec3 Mon Sep 17 00:00:00 2001 From: Melanie Date: Thu, 7 Jun 2012 19:01:33 +0200 Subject: Make not_at_target stop when the target is reached even if the script is not listening to at_target --- OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index 7568888..8fa7880 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs @@ -3926,10 +3926,11 @@ namespace OpenSim.Region.Framework.Scenes scriptPosTarget target = m_targets[idx]; if (Util.GetDistanceTo(target.targetPos, m_rootPart.GroupPosition) <= target.tolerance) { + at_target = true; + // trigger at_target if (m_scriptListens_atTarget) { - at_target = true; scriptPosTarget att = new scriptPosTarget(); att.targetPos = target.targetPos; att.tolerance = target.tolerance; -- cgit v1.1 From 354ac8c9789345299283d173abfc49ca13607a74 Mon Sep 17 00:00:00 2001 From: Melanie Date: Thu, 7 Jun 2012 19:02:43 +0200 Subject: Add collision sounds to the asset set --- bin/assets/AssetSets.xml | 6 + .../CollisionSoundsAssetSet.xml | 341 +++++++++++++++++++++ bin/assets/CollisionSoundsAssetSet/attribution.txt | 8 + .../CollisionSoundsAssetSet/snd_FleshFlesh.ogg | Bin 0 -> 8829 bytes .../CollisionSoundsAssetSet/snd_FleshGlass.ogg | Bin 0 -> 8537 bytes .../CollisionSoundsAssetSet/snd_FleshMetal.ogg | Bin 0 -> 12830 bytes .../CollisionSoundsAssetSet/snd_FleshPlastic.ogg | Bin 0 -> 8858 bytes .../CollisionSoundsAssetSet/snd_FleshRubber.ogg | Bin 0 -> 10037 bytes .../CollisionSoundsAssetSet/snd_FleshStone.ogg | Bin 0 -> 10985 bytes .../CollisionSoundsAssetSet/snd_FleshWood.ogg | Bin 0 -> 8835 bytes .../CollisionSoundsAssetSet/snd_GlassFlesh.ogg | Bin 0 -> 8579 bytes .../CollisionSoundsAssetSet/snd_GlassGlass.ogg | Bin 0 -> 5456 bytes .../CollisionSoundsAssetSet/snd_GlassMetal.ogg | Bin 0 -> 13092 bytes .../CollisionSoundsAssetSet/snd_GlassPlastic.ogg | Bin 0 -> 6797 bytes .../CollisionSoundsAssetSet/snd_GlassRubber.ogg | Bin 0 -> 9760 bytes .../CollisionSoundsAssetSet/snd_GlassStone.ogg | Bin 0 -> 11185 bytes .../CollisionSoundsAssetSet/snd_GlassWood.ogg | Bin 0 -> 7048 bytes .../CollisionSoundsAssetSet/snd_MetalFlesh.ogg | Bin 0 -> 12917 bytes .../CollisionSoundsAssetSet/snd_MetalGlass.ogg | Bin 0 -> 13500 bytes .../CollisionSoundsAssetSet/snd_MetalMetal.ogg | Bin 0 -> 13513 bytes .../CollisionSoundsAssetSet/snd_MetalPlastic.ogg | Bin 0 -> 12814 bytes .../CollisionSoundsAssetSet/snd_MetalRubber.ogg | Bin 0 -> 13008 bytes .../CollisionSoundsAssetSet/snd_MetalStone.ogg | Bin 0 -> 13578 bytes .../CollisionSoundsAssetSet/snd_MetalWood.ogg | Bin 0 -> 13040 bytes .../CollisionSoundsAssetSet/snd_PlasticFlesh.ogg | Bin 0 -> 8510 bytes .../CollisionSoundsAssetSet/snd_PlasticGlass.ogg | Bin 0 -> 6797 bytes .../CollisionSoundsAssetSet/snd_PlasticMetal.ogg | Bin 0 -> 12814 bytes .../CollisionSoundsAssetSet/snd_PlasticPlastic.ogg | Bin 0 -> 6635 bytes .../CollisionSoundsAssetSet/snd_PlasticRubber.ogg | Bin 0 -> 9648 bytes .../CollisionSoundsAssetSet/snd_PlasticStone.ogg | Bin 0 -> 10640 bytes .../CollisionSoundsAssetSet/snd_PlasticWood.ogg | Bin 0 -> 6845 bytes .../CollisionSoundsAssetSet/snd_RubberFlesh.ogg | Bin 0 -> 9758 bytes .../CollisionSoundsAssetSet/snd_RubberGlass.ogg | Bin 0 -> 9871 bytes .../CollisionSoundsAssetSet/snd_RubberMetal.ogg | Bin 0 -> 12797 bytes .../CollisionSoundsAssetSet/snd_RubberPlastic.ogg | Bin 0 -> 9648 bytes .../CollisionSoundsAssetSet/snd_RubberRubber.ogg | Bin 0 -> 9647 bytes .../CollisionSoundsAssetSet/snd_RubberStone.ogg | Bin 0 -> 10850 bytes .../CollisionSoundsAssetSet/snd_RubberWood.ogg | Bin 0 -> 9716 bytes .../CollisionSoundsAssetSet/snd_StoneFlesh.ogg | Bin 0 -> 10896 bytes .../CollisionSoundsAssetSet/snd_StoneGlass.ogg | Bin 0 -> 11188 bytes .../CollisionSoundsAssetSet/snd_StoneMetal.ogg | Bin 0 -> 13517 bytes .../CollisionSoundsAssetSet/snd_StonePlastic.ogg | Bin 0 -> 11196 bytes .../CollisionSoundsAssetSet/snd_StoneRubber.ogg | Bin 0 -> 10885 bytes .../CollisionSoundsAssetSet/snd_StoneStone.ogg | Bin 0 -> 11040 bytes .../CollisionSoundsAssetSet/snd_StoneWood.ogg | Bin 0 -> 10947 bytes .../CollisionSoundsAssetSet/snd_TerrainFlesh.ogg | Bin 0 -> 8750 bytes .../CollisionSoundsAssetSet/snd_TerrainGlass.ogg | Bin 0 -> 8126 bytes .../CollisionSoundsAssetSet/snd_TerrainMetal.ogg | Bin 0 -> 12839 bytes .../CollisionSoundsAssetSet/snd_TerrainPlastic.ogg | Bin 0 -> 7920 bytes .../CollisionSoundsAssetSet/snd_TerrainRubber.ogg | Bin 0 -> 9480 bytes .../CollisionSoundsAssetSet/snd_TerrainStone.ogg | Bin 0 -> 10807 bytes .../CollisionSoundsAssetSet/snd_TerrainWood.ogg | Bin 0 -> 7999 bytes .../CollisionSoundsAssetSet/snd_WoodFlesh.ogg | Bin 0 -> 8827 bytes .../CollisionSoundsAssetSet/snd_WoodGlass.ogg | Bin 0 -> 7057 bytes .../CollisionSoundsAssetSet/snd_WoodMetal.ogg | Bin 0 -> 12818 bytes .../CollisionSoundsAssetSet/snd_WoodPlastic.ogg | Bin 0 -> 6990 bytes .../CollisionSoundsAssetSet/snd_WoodRubber.ogg | Bin 0 -> 9626 bytes .../CollisionSoundsAssetSet/snd_WoodStone.ogg | Bin 0 -> 10931 bytes .../CollisionSoundsAssetSet/snd_WoodWood.ogg | Bin 0 -> 6696 bytes 59 files changed, 355 insertions(+) create mode 100644 bin/assets/CollisionSoundsAssetSet/CollisionSoundsAssetSet.xml create mode 100644 bin/assets/CollisionSoundsAssetSet/attribution.txt create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_FleshFlesh.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_FleshGlass.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_FleshMetal.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_FleshPlastic.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_FleshRubber.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_FleshStone.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_FleshWood.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_GlassFlesh.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_GlassGlass.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_GlassMetal.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_GlassPlastic.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_GlassRubber.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_GlassStone.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_GlassWood.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_MetalFlesh.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_MetalGlass.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_MetalMetal.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_MetalPlastic.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_MetalRubber.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_MetalStone.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_MetalWood.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_PlasticFlesh.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_PlasticGlass.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_PlasticMetal.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_PlasticPlastic.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_PlasticRubber.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_PlasticStone.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_PlasticWood.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_RubberFlesh.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_RubberGlass.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_RubberMetal.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_RubberPlastic.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_RubberRubber.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_RubberStone.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_RubberWood.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_StoneFlesh.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_StoneGlass.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_StoneMetal.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_StonePlastic.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_StoneRubber.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_StoneStone.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_StoneWood.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_TerrainFlesh.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_TerrainGlass.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_TerrainMetal.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_TerrainPlastic.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_TerrainRubber.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_TerrainStone.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_TerrainWood.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_WoodFlesh.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_WoodGlass.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_WoodMetal.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_WoodPlastic.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_WoodRubber.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_WoodStone.ogg create mode 100644 bin/assets/CollisionSoundsAssetSet/snd_WoodWood.ogg diff --git a/bin/assets/AssetSets.xml b/bin/assets/AssetSets.xml index c13ea42..829f845 100644 --- a/bin/assets/AssetSets.xml +++ b/bin/assets/AssetSets.xml @@ -68,6 +68,12 @@ <!----> <!----> + <Section Name="Collision Sounds AssetSet"> + <Key Name="file" Value="CollisionSoundsAssetSet/CollisionSoundsAssetSet.xml"/> + </Section> + <!----> + + <!----> <Section Name="Textures AssetSet"> <Key Name="file" Value="TexturesAssetSet/TexturesAssetSet.xml"/> </Section> diff --git a/bin/assets/CollisionSoundsAssetSet/CollisionSoundsAssetSet.xml b/bin/assets/CollisionSoundsAssetSet/CollisionSoundsAssetSet.xml new file mode 100644 index 0000000..7498ae0 --- /dev/null +++ b/bin/assets/CollisionSoundsAssetSet/CollisionSoundsAssetSet.xml @@ -0,0 +1,341 @@ +<Nini> + <!-- Ubit 2012 + using Nebadon collision sounds collection--> + + <Section Name="snd_StoneStone"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0800200c9a66" /> + <Key Name="name" Value="snd_StoneStone" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_StoneStone.ogg" /> + </Section> + <Section Name="snd_StoneMetal"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0800201c9a66" /> + <Key Name="name" Value="snd_StoneMetal" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_StoneMetal.ogg" /> + </Section> + <Section Name="snd_StoneGlass"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0800202c9a66" /> + <Key Name="name" Value="snd_StoneGlass" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_StoneGlass.ogg" /> + </Section> + <Section Name="snd_StoneWood"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0800203c9a66" /> + <Key Name="name" Value="snd_StoneWood" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_StoneWood.ogg" /> + </Section> + <Section Name="snd_StoneFlesh"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0800204c9a66" /> + <Key Name="name" Value="snd_StoneFlesh" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_StoneFlesh.ogg" /> + </Section> + <Section Name="snd_StonePlastic"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0800205c9a66" /> + <Key Name="name" Value="snd_StonePlastic" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_StonePlastic.ogg" /> + </Section> + <Section Name="snd_StoneRubber"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0800206c9a66" /> + <Key Name="name" Value="snd_StoneRubber" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_StoneRubber.ogg" /> + </Section> + <Section Name="snd_MetalStone"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0801200c9a66" /> + <Key Name="name" Value="snd_MetalStone" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_MetalStone.ogg" /> + </Section> + <Section Name="snd_MetalMetal"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0801201c9a66" /> + <Key Name="name" Value="snd_MetalMetal" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_MetalMetal.ogg" /> + </Section> + <Section Name="snd_MetalGlass"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0801202c9a66" /> + <Key Name="name" Value="snd_MetalGlass" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_MetalGlass.ogg" /> + </Section> + <Section Name="snd_MetalWood"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0801203c9a66" /> + <Key Name="name" Value="snd_MetalWood" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_MetalWood.ogg" /> + </Section> + <Section Name="snd_MetalFlesh"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0801204c9a66" /> + <Key Name="name" Value="snd_MetalFlesh" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_MetalFlesh.ogg" /> + </Section> + <Section Name="snd_MetalPlastic"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0801205c9a66" /> + <Key Name="name" Value="snd_MetalPlastic" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_MetalPlastic.ogg" /> + </Section> + <Section Name="snd_MetalRubber"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0801206c9a66" /> + <Key Name="name" Value="snd_MetalRubber" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_MetalRubber.ogg" /> + </Section> + <Section Name="snd_GlassStone"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0802200c9a66" /> + <Key Name="name" Value="snd_GlassStone" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_GlassStone.ogg" /> + </Section> + <Section Name="snd_GlassMetal"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0802201c9a66" /> + <Key Name="name" Value="snd_GlassMetal" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_GlassMetal.ogg" /> + </Section> + <Section Name="snd_GlassGlass"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0802202c9a66" /> + <Key Name="name" Value="snd_GlassGlass" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_GlassGlass.ogg" /> + </Section> + <Section Name="snd_GlassWood"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0802203c9a66" /> + <Key Name="name" Value="snd_GlassWood" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_GlassWood.ogg" /> + </Section> + <Section Name="snd_GlassFlesh"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0802204c9a66" /> + <Key Name="name" Value="snd_GlassFlesh" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_GlassFlesh.ogg" /> + </Section> + <Section Name="snd_GlassPlastic"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0802205c9a66" /> + <Key Name="name" Value="snd_GlassPlastic" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_GlassPlastic.ogg" /> + </Section> + <Section Name="snd_GlassRubber"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0802206c9a66" /> + <Key Name="name" Value="snd_GlassRubber" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_GlassRubber.ogg" /> + </Section> + <Section Name="snd_WoodStone"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0803200c9a66" /> + <Key Name="name" Value="snd_WoodStone" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_WoodStone.ogg" /> + </Section> + <Section Name="snd_WoodMetal"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0803201c9a66" /> + <Key Name="name" Value="snd_WoodMetal" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_WoodMetal.ogg" /> + </Section> + <Section Name="snd_WoodGlass"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0803202c9a66" /> + <Key Name="name" Value="snd_WoodGlass" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_WoodGlass.ogg" /> + </Section> + <Section Name="snd_WoodWood"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0803203c9a66" /> + <Key Name="name" Value="snd_WoodWood" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_WoodWood.ogg" /> + </Section> + <Section Name="snd_WoodFlesh"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0803204c9a66" /> + <Key Name="name" Value="snd_WoodFlesh" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_WoodFlesh.ogg" /> + </Section> + <Section Name="snd_WoodPlastic"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0803205c9a66" /> + <Key Name="name" Value="snd_WoodPlastic" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_WoodPlastic.ogg" /> + </Section> + <Section Name="snd_WoodRubber"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0803206c9a66" /> + <Key Name="name" Value="snd_WoodRubber" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_WoodRubber.ogg" /> + </Section> + <Section Name="snd_FleshStone"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0804200c9a66" /> + <Key Name="name" Value="snd_FleshStone" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_FleshStone.ogg" /> + </Section> + <Section Name="snd_FleshMetal"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0804201c9a66" /> + <Key Name="name" Value="snd_FleshMetal" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_FleshMetal.ogg" /> + </Section> + <Section Name="snd_FleshGlass"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0804202c9a66" /> + <Key Name="name" Value="snd_FleshGlass" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_FleshGlass.ogg" /> + </Section> + <Section Name="snd_FleshWood"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0804203c9a66" /> + <Key Name="name" Value="snd_FleshWood" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_FleshWood.ogg" /> + </Section> + <Section Name="snd_FleshFlesh"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0804204c9a66" /> + <Key Name="name" Value="snd_FleshFlesh" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_FleshFlesh.ogg" /> + </Section> + <Section Name="snd_FleshPlastic"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0804205c9a66" /> + <Key Name="name" Value="snd_FleshPlastic" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_FleshPlastic.ogg" /> + </Section> + <Section Name="snd_FleshRubber"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0804206c9a66" /> + <Key Name="name" Value="snd_FleshRubber" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_FleshRubber.ogg" /> + </Section> + <Section Name="snd_PlasticStone"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0805200c9a66" /> + <Key Name="name" Value="snd_PlasticStone" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_PlasticStone.ogg" /> + </Section> + <Section Name="snd_PlasticMetal"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0805201c9a66" /> + <Key Name="name" Value="snd_PlasticMetal" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_PlasticMetal.ogg" /> + </Section> + <Section Name="snd_PlasticGlass"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0805202c9a66" /> + <Key Name="name" Value="snd_PlasticGlass" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_PlasticGlass.ogg" /> + </Section> + <Section Name="snd_PlasticWood"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0805203c9a66" /> + <Key Name="name" Value="snd_PlasticWood" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_PlasticWood.ogg" /> + </Section> + <Section Name="snd_PlasticFlesh"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0805204c9a66" /> + <Key Name="name" Value="snd_PlasticFlesh" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_PlasticFlesh.ogg" /> + </Section> + <Section Name="snd_PlasticPlastic"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0805205c9a66" /> + <Key Name="name" Value="snd_PlasticPlastic" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_PlasticPlastic.ogg" /> + </Section> + <Section Name="snd_PlasticRubber"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0805206c9a66" /> + <Key Name="name" Value="snd_PlasticRubber" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_PlasticRubber.ogg" /> + </Section> + <Section Name="snd_RubberStone"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0806200c9a66" /> + <Key Name="name" Value="snd_RubberStone" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_RubberStone.ogg" /> + </Section> + <Section Name="snd_RubberMetal"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0806201c9a66" /> + <Key Name="name" Value="snd_RubberMetal" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_RubberMetal.ogg" /> + </Section> + <Section Name="snd_RubberGlass"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0806202c9a66" /> + <Key Name="name" Value="snd_RubberGlass" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_RubberGlass.ogg" /> + </Section> + <Section Name="snd_RubberWood"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0806203c9a66" /> + <Key Name="name" Value="snd_RubberWood" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_RubberWood.ogg" /> + </Section> + <Section Name="snd_RubberFlesh"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0806204c9a66" /> + <Key Name="name" Value="snd_RubberFlesh" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_RubberFlesh.ogg" /> + </Section> + <Section Name="snd_RubberPlastic"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0806205c9a66" /> + <Key Name="name" Value="snd_RubberPlastic" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_RubberPlastic.ogg" /> + </Section> + <Section Name="snd_RubberRubber"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0806206c9a66" /> + <Key Name="name" Value="snd_RubberRubber" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_RubberRubber.ogg" /> + </Section> + <Section Name="snd_TerrainStone"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0807200c9a66" /> + <Key Name="name" Value="snd_TerrainStone" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_TerrainStone.ogg" /> + </Section> + <Section Name="snd_TerrainMetal"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0807200c9a66" /> + <Key Name="name" Value="snd_TerrainMetal" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_TerrainMetal.ogg" /> + </Section> + <Section Name="snd_TerrainGlass"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0807200c9a66" /> + <Key Name="name" Value="snd_TerrainGlass" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_TerrainGlass.ogg" /> + </Section> + <Section Name="snd_TerrainWood"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0807200c9a66" /> + <Key Name="name" Value="snd_TerrainWood" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_TerrainWood.ogg" /> + </Section> + <Section Name="snd_TerrainFlesh"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0807200c9a66" /> + <Key Name="name" Value="snd_TerrainFlesh" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_TerrainFlesh.ogg" /> + </Section> + <Section Name="snd_TerrainPlastic"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0807200c9a66" /> + <Key Name="name" Value="snd_TerrainPlastic" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_TerrainPlastic.ogg" /> + </Section> + <Section Name="snd_TerrainRubber"> + <Key Name="assetID" Value="be7295c0-a158-11e1-b3dd-0807200c9a66" /> + <Key Name="name" Value="snd_TerrainRubber" /> + <Key Name="assetType" Value="1" /> + <Key Name="fileName" Value="snd_TerrainRubber.ogg" /> + </Section> +</Nini> diff --git a/bin/assets/CollisionSoundsAssetSet/attribution.txt b/bin/assets/CollisionSoundsAssetSet/attribution.txt new file mode 100644 index 0000000..876419b --- /dev/null +++ b/bin/assets/CollisionSoundsAssetSet/attribution.txt @@ -0,0 +1,8 @@ +thanvannispen - http://www.freesound.org/people/thanvannispen/sounds/30012/ +hoobtastic - http://www.freesound.org/people/hoobtastic/sounds/132627/ +kbnevel - http://www.freesound.org/people/kbnevel/sounds/119859/ +adcbicycle - http://www.freesound.org/people/adcbicycle/sounds/13856/ +adcbicycle - http://www.freesound.org/people/adcbicycle/sounds/13855/ +110110010 - http://www.freesound.org/people/110110010/sounds/66397/ +qubodup - http://www.freesound.org/people/qubodup/sounds/50941/ +vibe_crc - http://www.freesound.org/people/vibe_crc/sounds/59317/ \ No newline at end of file diff --git a/bin/assets/CollisionSoundsAssetSet/snd_FleshFlesh.ogg b/bin/assets/CollisionSoundsAssetSet/snd_FleshFlesh.ogg new file mode 100644 index 0000000..5f3aeb7 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_FleshFlesh.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_FleshGlass.ogg b/bin/assets/CollisionSoundsAssetSet/snd_FleshGlass.ogg new file mode 100644 index 0000000..3a322c6 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_FleshGlass.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_FleshMetal.ogg b/bin/assets/CollisionSoundsAssetSet/snd_FleshMetal.ogg new file mode 100644 index 0000000..edcf17a Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_FleshMetal.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_FleshPlastic.ogg b/bin/assets/CollisionSoundsAssetSet/snd_FleshPlastic.ogg new file mode 100644 index 0000000..acf53e5 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_FleshPlastic.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_FleshRubber.ogg b/bin/assets/CollisionSoundsAssetSet/snd_FleshRubber.ogg new file mode 100644 index 0000000..6373610 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_FleshRubber.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_FleshStone.ogg b/bin/assets/CollisionSoundsAssetSet/snd_FleshStone.ogg new file mode 100644 index 0000000..eccbbb8 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_FleshStone.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_FleshWood.ogg b/bin/assets/CollisionSoundsAssetSet/snd_FleshWood.ogg new file mode 100644 index 0000000..6713380 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_FleshWood.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_GlassFlesh.ogg b/bin/assets/CollisionSoundsAssetSet/snd_GlassFlesh.ogg new file mode 100644 index 0000000..6951d44 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_GlassFlesh.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_GlassGlass.ogg b/bin/assets/CollisionSoundsAssetSet/snd_GlassGlass.ogg new file mode 100644 index 0000000..1806a55 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_GlassGlass.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_GlassMetal.ogg b/bin/assets/CollisionSoundsAssetSet/snd_GlassMetal.ogg new file mode 100644 index 0000000..f147024 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_GlassMetal.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_GlassPlastic.ogg b/bin/assets/CollisionSoundsAssetSet/snd_GlassPlastic.ogg new file mode 100644 index 0000000..204a4c6 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_GlassPlastic.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_GlassRubber.ogg b/bin/assets/CollisionSoundsAssetSet/snd_GlassRubber.ogg new file mode 100644 index 0000000..243f185 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_GlassRubber.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_GlassStone.ogg b/bin/assets/CollisionSoundsAssetSet/snd_GlassStone.ogg new file mode 100644 index 0000000..0852135 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_GlassStone.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_GlassWood.ogg b/bin/assets/CollisionSoundsAssetSet/snd_GlassWood.ogg new file mode 100644 index 0000000..2c13690 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_GlassWood.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_MetalFlesh.ogg b/bin/assets/CollisionSoundsAssetSet/snd_MetalFlesh.ogg new file mode 100644 index 0000000..c11d19f Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_MetalFlesh.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_MetalGlass.ogg b/bin/assets/CollisionSoundsAssetSet/snd_MetalGlass.ogg new file mode 100644 index 0000000..36348e1 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_MetalGlass.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_MetalMetal.ogg b/bin/assets/CollisionSoundsAssetSet/snd_MetalMetal.ogg new file mode 100644 index 0000000..957b3c2 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_MetalMetal.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_MetalPlastic.ogg b/bin/assets/CollisionSoundsAssetSet/snd_MetalPlastic.ogg new file mode 100644 index 0000000..5674907 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_MetalPlastic.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_MetalRubber.ogg b/bin/assets/CollisionSoundsAssetSet/snd_MetalRubber.ogg new file mode 100644 index 0000000..0f9ba2e Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_MetalRubber.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_MetalStone.ogg b/bin/assets/CollisionSoundsAssetSet/snd_MetalStone.ogg new file mode 100644 index 0000000..dc489d8 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_MetalStone.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_MetalWood.ogg b/bin/assets/CollisionSoundsAssetSet/snd_MetalWood.ogg new file mode 100644 index 0000000..de04317 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_MetalWood.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_PlasticFlesh.ogg b/bin/assets/CollisionSoundsAssetSet/snd_PlasticFlesh.ogg new file mode 100644 index 0000000..a9d6983 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_PlasticFlesh.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_PlasticGlass.ogg b/bin/assets/CollisionSoundsAssetSet/snd_PlasticGlass.ogg new file mode 100644 index 0000000..c7dcdf1 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_PlasticGlass.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_PlasticMetal.ogg b/bin/assets/CollisionSoundsAssetSet/snd_PlasticMetal.ogg new file mode 100644 index 0000000..4dd270f Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_PlasticMetal.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_PlasticPlastic.ogg b/bin/assets/CollisionSoundsAssetSet/snd_PlasticPlastic.ogg new file mode 100644 index 0000000..9994745 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_PlasticPlastic.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_PlasticRubber.ogg b/bin/assets/CollisionSoundsAssetSet/snd_PlasticRubber.ogg new file mode 100644 index 0000000..e5c408f Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_PlasticRubber.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_PlasticStone.ogg b/bin/assets/CollisionSoundsAssetSet/snd_PlasticStone.ogg new file mode 100644 index 0000000..9865c6e Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_PlasticStone.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_PlasticWood.ogg b/bin/assets/CollisionSoundsAssetSet/snd_PlasticWood.ogg new file mode 100644 index 0000000..9f921b9 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_PlasticWood.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_RubberFlesh.ogg b/bin/assets/CollisionSoundsAssetSet/snd_RubberFlesh.ogg new file mode 100644 index 0000000..b56f7dc Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_RubberFlesh.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_RubberGlass.ogg b/bin/assets/CollisionSoundsAssetSet/snd_RubberGlass.ogg new file mode 100644 index 0000000..9f44fca Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_RubberGlass.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_RubberMetal.ogg b/bin/assets/CollisionSoundsAssetSet/snd_RubberMetal.ogg new file mode 100644 index 0000000..9ff064a Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_RubberMetal.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_RubberPlastic.ogg b/bin/assets/CollisionSoundsAssetSet/snd_RubberPlastic.ogg new file mode 100644 index 0000000..8e601b1 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_RubberPlastic.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_RubberRubber.ogg b/bin/assets/CollisionSoundsAssetSet/snd_RubberRubber.ogg new file mode 100644 index 0000000..c84f8e5 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_RubberRubber.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_RubberStone.ogg b/bin/assets/CollisionSoundsAssetSet/snd_RubberStone.ogg new file mode 100644 index 0000000..d398f6f Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_RubberStone.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_RubberWood.ogg b/bin/assets/CollisionSoundsAssetSet/snd_RubberWood.ogg new file mode 100644 index 0000000..ebb24e3 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_RubberWood.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_StoneFlesh.ogg b/bin/assets/CollisionSoundsAssetSet/snd_StoneFlesh.ogg new file mode 100644 index 0000000..90275ad Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_StoneFlesh.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_StoneGlass.ogg b/bin/assets/CollisionSoundsAssetSet/snd_StoneGlass.ogg new file mode 100644 index 0000000..b2b33cf Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_StoneGlass.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_StoneMetal.ogg b/bin/assets/CollisionSoundsAssetSet/snd_StoneMetal.ogg new file mode 100644 index 0000000..accdfdf Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_StoneMetal.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_StonePlastic.ogg b/bin/assets/CollisionSoundsAssetSet/snd_StonePlastic.ogg new file mode 100644 index 0000000..15f93b6 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_StonePlastic.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_StoneRubber.ogg b/bin/assets/CollisionSoundsAssetSet/snd_StoneRubber.ogg new file mode 100644 index 0000000..4b756ff Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_StoneRubber.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_StoneStone.ogg b/bin/assets/CollisionSoundsAssetSet/snd_StoneStone.ogg new file mode 100644 index 0000000..88b8033 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_StoneStone.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_StoneWood.ogg b/bin/assets/CollisionSoundsAssetSet/snd_StoneWood.ogg new file mode 100644 index 0000000..4a5b7f3 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_StoneWood.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_TerrainFlesh.ogg b/bin/assets/CollisionSoundsAssetSet/snd_TerrainFlesh.ogg new file mode 100644 index 0000000..1d3038a Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_TerrainFlesh.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_TerrainGlass.ogg b/bin/assets/CollisionSoundsAssetSet/snd_TerrainGlass.ogg new file mode 100644 index 0000000..637fa16 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_TerrainGlass.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_TerrainMetal.ogg b/bin/assets/CollisionSoundsAssetSet/snd_TerrainMetal.ogg new file mode 100644 index 0000000..919c59b Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_TerrainMetal.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_TerrainPlastic.ogg b/bin/assets/CollisionSoundsAssetSet/snd_TerrainPlastic.ogg new file mode 100644 index 0000000..23fa329 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_TerrainPlastic.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_TerrainRubber.ogg b/bin/assets/CollisionSoundsAssetSet/snd_TerrainRubber.ogg new file mode 100644 index 0000000..c18d242 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_TerrainRubber.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_TerrainStone.ogg b/bin/assets/CollisionSoundsAssetSet/snd_TerrainStone.ogg new file mode 100644 index 0000000..6bd9e09 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_TerrainStone.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_TerrainWood.ogg b/bin/assets/CollisionSoundsAssetSet/snd_TerrainWood.ogg new file mode 100644 index 0000000..f405517 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_TerrainWood.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_WoodFlesh.ogg b/bin/assets/CollisionSoundsAssetSet/snd_WoodFlesh.ogg new file mode 100644 index 0000000..02621c2 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_WoodFlesh.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_WoodGlass.ogg b/bin/assets/CollisionSoundsAssetSet/snd_WoodGlass.ogg new file mode 100644 index 0000000..03b7fb5 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_WoodGlass.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_WoodMetal.ogg b/bin/assets/CollisionSoundsAssetSet/snd_WoodMetal.ogg new file mode 100644 index 0000000..e26afae Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_WoodMetal.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_WoodPlastic.ogg b/bin/assets/CollisionSoundsAssetSet/snd_WoodPlastic.ogg new file mode 100644 index 0000000..abe419b Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_WoodPlastic.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_WoodRubber.ogg b/bin/assets/CollisionSoundsAssetSet/snd_WoodRubber.ogg new file mode 100644 index 0000000..30ccc32 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_WoodRubber.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_WoodStone.ogg b/bin/assets/CollisionSoundsAssetSet/snd_WoodStone.ogg new file mode 100644 index 0000000..ad96818 Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_WoodStone.ogg differ diff --git a/bin/assets/CollisionSoundsAssetSet/snd_WoodWood.ogg b/bin/assets/CollisionSoundsAssetSet/snd_WoodWood.ogg new file mode 100644 index 0000000..76ae52c Binary files /dev/null and b/bin/assets/CollisionSoundsAssetSet/snd_WoodWood.ogg differ -- cgit v1.1 From 095dbf0ece0aab1812d04695a17bff86720ab6ac Mon Sep 17 00:00:00 2001 From: Melanie Date: Wed, 6 Jun 2012 20:35:00 +0200 Subject: Fix not sending TransferInfo when an asset is not found. This clogs up the sound pipeline in the viewer. --- .../Region/ClientStack/Linden/UDP/LLClientView.cs | 33 +++++++++++++++++++--- 1 file changed, 29 insertions(+), 4 deletions(-) diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index 77dbca7..5a87958 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs @@ -2777,6 +2777,19 @@ namespace OpenSim.Region.ClientStack.LindenUDP } } + public void SendAssetNotFound(AssetRequestToClient req) + { + TransferInfoPacket Transfer = new TransferInfoPacket(); + Transfer.TransferInfo.ChannelType = 2; + Transfer.TransferInfo.Status = -2; + Transfer.TransferInfo.TargetType = 0; + Transfer.TransferInfo.Params = req.Params; + Transfer.TransferInfo.Size = 0; + Transfer.TransferInfo.TransferID = req.TransferRequestID; + Transfer.Header.Zerocoded = true; + OutPacket(Transfer, ThrottleOutPacketType.Asset); + } + public void SendTexture(AssetBase TextureAsset) { @@ -12178,14 +12191,27 @@ namespace OpenSim.Region.ClientStack.LindenUDP /// <param name="asset"></param> protected void AssetReceived(string id, Object sender, AssetBase asset) { - if (asset == null) - return; - TransferRequestPacket transferRequest = (TransferRequestPacket)sender; UUID requestID = UUID.Zero; byte source = (byte)SourceType.Asset; + AssetRequestToClient req = new AssetRequestToClient(); + + if (asset == null) + { + req.AssetInf = null; + req.AssetRequestSource = source; + req.IsTextureRequest = false; + req.NumPackets = 0; + req.Params = transferRequest.TransferInfo.Params; + req.RequestAssetID = requestID; + req.TransferRequestID = transferRequest.TransferInfo.TransferID; + + SendAssetNotFound(req); + return; + } + if (transferRequest.TransferInfo.SourceType == (int)SourceType.Asset) { requestID = new UUID(transferRequest.TransferInfo.Params, 0); @@ -12202,7 +12228,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP return; // The asset is known to exist and is in our cache, so add it to the AssetRequests list - AssetRequestToClient req = new AssetRequestToClient(); req.AssetInf = asset; req.AssetRequestSource = source; req.IsTextureRequest = false; -- cgit v1.1 From 49423144350b6195a51931bc18a01be337f80f8b Mon Sep 17 00:00:00 2001 From: Melanie Date: Thu, 7 Jun 2012 20:51:03 +0200 Subject: Implement playing of the real collision sounds, change scaling for avatar collisions to make them really soft because otherwise climbing stairs makes an unbearable amount of noise. --- OpenSim/Region/Framework/Scenes/CollisionSounds.cs | 190 +++++++-------------- 1 file changed, 57 insertions(+), 133 deletions(-) diff --git a/OpenSim/Region/Framework/Scenes/CollisionSounds.cs b/OpenSim/Region/Framework/Scenes/CollisionSounds.cs index d72cf41..a95e75a 100644 --- a/OpenSim/Region/Framework/Scenes/CollisionSounds.cs +++ b/OpenSim/Region/Framework/Scenes/CollisionSounds.cs @@ -27,9 +27,11 @@ // Ubit 2012 using System; +using System.Reflection; using System.Collections.Generic; using OpenMetaverse; using OpenSim.Framework; +using log4net; namespace OpenSim.Region.Framework.Scenes { @@ -42,9 +44,11 @@ namespace OpenSim.Region.Framework.Scenes public static class CollisionSounds { + private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); + private const int MaxMaterials = 7; // part part -/* + private static UUID snd_StoneStone = new UUID("be7295c0-a158-11e1-b3dd-0800200c9a66"); private static UUID snd_StoneMetal = new UUID("be7295c0-a158-11e1-b3dd-0800201c9a66"); private static UUID snd_StoneGlass = new UUID("be7295c0-a158-11e1-b3dd-0800202c9a66"); @@ -53,7 +57,6 @@ namespace OpenSim.Region.Framework.Scenes private static UUID snd_StonePlastic = new UUID("be7295c0-a158-11e1-b3dd-0800205c9a66"); private static UUID snd_StoneRubber = new UUID("be7295c0-a158-11e1-b3dd-0800206c9a66"); - private static UUID snd_MetalStone = new UUID("be7295c0-a158-11e1-b3dd-0801200c9a66"); private static UUID snd_MetalMetal = new UUID("be7295c0-a158-11e1-b3dd-0801201c9a66"); private static UUID snd_MetalGlass = new UUID("be7295c0-a158-11e1-b3dd-0801202c9a66"); private static UUID snd_MetalWood = new UUID("be7295c0-a158-11e1-b3dd-0801203c9a66"); @@ -61,44 +64,24 @@ namespace OpenSim.Region.Framework.Scenes private static UUID snd_MetalPlastic = new UUID("be7295c0-a158-11e1-b3dd-0801205c9a66"); private static UUID snd_MetalRubber = new UUID("be7295c0-a158-11e1-b3dd-0801206c9a66"); - private static UUID snd_GlassStone = new UUID("be7295c0-a158-11e1-b3dd-0802200c9a66"); - private static UUID snd_GlassMetal = new UUID("be7295c0-a158-11e1-b3dd-0802201c9a66"); private static UUID snd_GlassGlass = new UUID("be7295c0-a158-11e1-b3dd-0802202c9a66"); private static UUID snd_GlassWood = new UUID("be7295c0-a158-11e1-b3dd-0802203c9a66"); private static UUID snd_GlassFlesh = new UUID("be7295c0-a158-11e1-b3dd-0802204c9a66"); private static UUID snd_GlassPlastic = new UUID("be7295c0-a158-11e1-b3dd-0802205c9a66"); private static UUID snd_GlassRubber = new UUID("be7295c0-a158-11e1-b3dd-0802206c9a66"); - private static UUID snd_WoodStone = new UUID("be7295c0-a158-11e1-b3dd-0803200c9a66"); - private static UUID snd_WoodMetal = new UUID("be7295c0-a158-11e1-b3dd-0803201c9a66"); - private static UUID snd_WoodGlass = new UUID("be7295c0-a158-11e1-b3dd-0803202c9a66"); private static UUID snd_WoodWood = new UUID("be7295c0-a158-11e1-b3dd-0803203c9a66"); private static UUID snd_WoodFlesh = new UUID("be7295c0-a158-11e1-b3dd-0803204c9a66"); private static UUID snd_WoodPlastic = new UUID("be7295c0-a158-11e1-b3dd-0803205c9a66"); private static UUID snd_WoodRubber = new UUID("be7295c0-a158-11e1-b3dd-0803206c9a66"); - private static UUID snd_FleshStone = new UUID("be7295c0-a158-11e1-b3dd-0804200c9a66"); - private static UUID snd_FleshMetal = new UUID("be7295c0-a158-11e1-b3dd-0804201c9a66"); - private static UUID snd_FleshGlass = new UUID("be7295c0-a158-11e1-b3dd-0804202c9a66"); - private static UUID snd_FleshWood = new UUID("be7295c0-a158-11e1-b3dd-0804203c9a66"); private static UUID snd_FleshFlesh = new UUID("be7295c0-a158-11e1-b3dd-0804204c9a66"); private static UUID snd_FleshPlastic = new UUID("be7295c0-a158-11e1-b3dd-0804205c9a66"); private static UUID snd_FleshRubber = new UUID("be7295c0-a158-11e1-b3dd-0804206c9a66"); - private static UUID snd_PlasticStone = new UUID("be7295c0-a158-11e1-b3dd-0805200c9a66"); - private static UUID snd_PlasticMetal = new UUID("be7295c0-a158-11e1-b3dd-0805201c9a66"); - private static UUID snd_PlasticGlass = new UUID("be7295c0-a158-11e1-b3dd-0805202c9a66"); - private static UUID snd_PlasticWood = new UUID("be7295c0-a158-11e1-b3dd-0805203c9a66"); - private static UUID snd_PlasticFlesh = new UUID("be7295c0-a158-11e1-b3dd-0805204c9a66"); private static UUID snd_PlasticPlastic = new UUID("be7295c0-a158-11e1-b3dd-0805205c9a66"); private static UUID snd_PlasticRubber = new UUID("be7295c0-a158-11e1-b3dd-0805206c9a66"); - private static UUID snd_RubberStone = new UUID("be7295c0-a158-11e1-b3dd-0806200c9a66"); - private static UUID snd_RubberMetal = new UUID("be7295c0-a158-11e1-b3dd-0806201c9a66"); - private static UUID snd_RubberGlass = new UUID("be7295c0-a158-11e1-b3dd-0806202c9a66"); - private static UUID snd_RubberWood = new UUID("be7295c0-a158-11e1-b3dd-0806203c9a66"); - private static UUID snd_RubberFlesh = new UUID("be7295c0-a158-11e1-b3dd-0806204c9a66"); - private static UUID snd_RubberPlastic = new UUID("be7295c0-a158-11e1-b3dd-0806205c9a66"); private static UUID snd_RubberRubber = new UUID("be7295c0-a158-11e1-b3dd-0806206c9a66"); // terrain part @@ -109,50 +92,6 @@ namespace OpenSim.Region.Framework.Scenes private static UUID snd_TerrainFlesh = new UUID("be7295c0-a158-11e1-b3dd-0807200c9a66"); private static UUID snd_TerrainPlastic = new UUID("be7295c0-a158-11e1-b3dd-0807200c9a66"); private static UUID snd_TerrainRubber = new UUID("be7295c0-a158-11e1-b3dd-0807200c9a66"); -*/ - private static UUID snd_StoneStone = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_StoneMetal = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_StoneGlass = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_StoneWood = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_StoneFlesh = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_StonePlastic = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_StoneRubber = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - - private static UUID snd_MetalMetal = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_MetalGlass = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_MetalWood = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_MetalFlesh = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_MetalPlastic = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_MetalRubber = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - - private static UUID snd_GlassGlass = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_GlassWood = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_GlassFlesh = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_GlassPlastic = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_GlassRubber = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - - private static UUID snd_WoodWood = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_WoodFlesh = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_WoodPlastic = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_WoodRubber = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - - private static UUID snd_FleshFlesh = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_FleshPlastic = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_FleshRubber = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - - private static UUID snd_PlasticPlastic = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_PlasticRubber = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - - private static UUID snd_RubberRubber = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - - // terrain part - private static UUID snd_TerrainStone = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_TerrainMetal = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_TerrainGlass = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_TerrainWood = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_TerrainFlesh = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_TerrainPlastic = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); - private static UUID snd_TerrainRubber = new UUID("c80260ba-41fd-8a46-768a-6bf236360e3a"); public static UUID[] m_TerrainPart = { snd_TerrainStone, @@ -163,18 +102,7 @@ namespace OpenSim.Region.Framework.Scenes snd_TerrainPlastic, snd_TerrainRubber }; -/* - //full assimetric sounds - public static UUID[] m_PartPart = { - snd_StoneStone, snd_StoneMetal, snd_StoneGlass, snd_StoneWood, snd_StoneFlesh, snd_StonePlastic, snd_StoneRubber, - snd_MetalStone, snd_MetalMetal, snd_MetalGlass, snd_MetalWood, snd_MetalFlesh, snd_MetalPlastic, snd_MetalRubber, - snd_GlassStone, snd_GlassMetal, snd_GlassGlass, snd_GlassWood, snd_GlassFlesh, snd_GlassPlastic, snd_GlassRubber, - snd_WoodStone, snd_WoodMetal, snd_WoodGlass, snd_WoodWood, snd_WoodFlesh, snd_WoodPlastic, snd_WoodRubber, - snd_FleshStone, snd_FleshMetal, snd_FleshGlass, snd_FleshWood, snd_FleshFlesh, snd_FleshPlastic, snd_FleshRubber, - snd_PlasticStone, snd_PlasticMetal, snd_PlasticGlass, snd_PlasticWood, snd_PlasticFlesh, snd_PlasticPlastic, snd_PlasticRubber, - snd_RubberStone, snd_RubberMetal, snd_RubberGlass, snd_RubberWood, snd_RubberFlesh, snd_RubberPlastic, snd_RubberRubber - }; -*/ + // simetric sounds public static UUID[] m_PartPart = { snd_StoneStone, snd_StoneMetal, snd_StoneGlass, snd_StoneWood, snd_StoneFlesh, snd_StonePlastic, snd_StoneRubber, @@ -235,19 +163,17 @@ namespace OpenSim.Region.Framework.Scenes { if (!HaveSound) { -// TODO: Import real collision sounds and uncomment this -// volume = Math.Abs(colInfo.relativeVel); -// if (volume < 0.2f) -// continue; -// -// volume *= volume * .0625f; // 4m/s == full volume -// if (volume > 1.0f) -// volume = 1.0f; -// -// soundID = m_TerrainPart[thisMaterial]; + volume = Math.Abs(colInfo.relativeVel); + if (volume < 0.2f) + continue; + + volume *= volume * .0625f; // 4m/s == full volume + if (volume > 1.0f) + volume = 1.0f; + + soundID = m_TerrainPart[thisMaterial]; } - else // Remove this else when uncommenting the above - part.SendCollisionSound(soundID, volume, colInfo.position); + part.SendCollisionSound(soundID, volume, colInfo.position); doneownsound = true; } continue; @@ -268,35 +194,31 @@ namespace OpenSim.Region.Framework.Scenes if (volume == 0.0f) continue; } -// TODO: Import real collision sounds and uncomment this -// else -// { -// volume = Math.Abs(colInfo.relativeVel); -// if (volume < 0.2f) -// continue; -// -// volume *= volume * .0625f; // 4m/s == full volume -// if (volume > 1.0f) -// volume = 1.0f; -// -// int otherMaterial = (int)otherPart.Material; -// if (otherMaterial >= MaxMaterials) -// otherMaterial = 3; -// -// soundID = m_PartPart[thisMatScaled + otherMaterial]; -// } - } - - if (soundID != UUID.Zero) // Remove when sounds are there - { // Remove when sounds are there - if (doneownsound) - otherPart.SendCollisionSound(soundID, volume, colInfo.position); else { - part.SendCollisionSound(soundID, volume, colInfo.position); - doneownsound = true; + volume = Math.Abs(colInfo.relativeVel); + if (volume < 0.2f) + continue; + + volume *= volume * .0625f; // 4m/s == full volume + if (volume > 1.0f) + volume = 1.0f; + + int otherMaterial = (int)otherPart.Material; + if (otherMaterial >= MaxMaterials) + otherMaterial = 3; + + soundID = m_PartPart[thisMatScaled + otherMaterial]; } - } // Remove when sounds are there + } + + if (doneownsound) + otherPart.SendCollisionSound(soundID, volume, colInfo.position); + else + { + part.SendCollisionSound(soundID, volume, colInfo.position); + doneownsound = true; + } } } } @@ -341,23 +263,25 @@ namespace OpenSim.Region.Framework.Scenes continue; if (otherPart.CollisionSoundType > 0 && otherPart.CollisionSoundVolume > 0f) otherPart.SendCollisionSound(otherPart.CollisionSound, otherPart.CollisionSoundVolume, colInfo.position); -//TODO: uncomment below when sounds are uploaded -// else -// { -// volume = Math.Abs(colInfo.relativeVel); -// if (volume < 0.2f) -// continue; -// -// volume *= volume * .0625f; // 4m/s == full volume -// if (volume > 1.0f) -// volume = 1.0f; -// otherMaterial = (int)otherPart.Material; -// if (otherMaterial >= MaxMaterials) -// otherMaterial = 3; -// -// soundID = m_PartPart[thisMatScaled + otherMaterial]; -// otherPart.SendCollisionSound(soundID, volume, colInfo.position); -// } + else + { + volume = Math.Abs(colInfo.relativeVel); + if (volume < 0.2f) + continue; + m_log.DebugFormat("Collision speed was {0}", volume); + + // Cap to 0.2 times volume because climbing stairs should not be noisy + // Also changed scaling + volume *= volume * .0125f; // 4m/s == volume 0.2 + if (volume > 0.2f) + volume = 0.2f; + otherMaterial = (int)otherPart.Material; + if (otherMaterial >= MaxMaterials) + otherMaterial = 3; + + soundID = m_PartPart[thisMatScaled + otherMaterial]; + otherPart.SendCollisionSound(soundID, volume, colInfo.position); + } continue; } /* -- cgit v1.1