Merge branch 'avination' into careminster
commit
69dd5b855a
|
@ -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)
|
||||
|
@ -270,7 +272,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;
|
||||
}
|
||||
|
||||
|
|
|
@ -1100,6 +1100,8 @@ namespace OpenSim.Region.CoreModules.World.Land
|
|||
if (currentParcel != null)
|
||||
{
|
||||
if (!temp.Contains(currentParcel))
|
||||
{
|
||||
if (!currentParcel.IsEitherBannedOrRestricted(remote_client.AgentId))
|
||||
{
|
||||
currentParcel.ForceUpdateLandInfo();
|
||||
temp.Add(currentParcel);
|
||||
|
@ -1107,6 +1109,7 @@ namespace OpenSim.Region.CoreModules.World.Land
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int requestResult = LandChannel.LAND_RESULT_SINGLE;
|
||||
if (temp.Count > 1)
|
||||
|
|
|
@ -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
|
||||
|
@ -1199,6 +1202,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>();
|
||||
|
@ -1209,7 +1223,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);
|
||||
|
|
|
@ -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,6 +184,8 @@ namespace OpenSim.Region.CoreModules.World.Region
|
|||
|
||||
m_Alerts.RemoveAt(0);
|
||||
|
||||
if (sendOut)
|
||||
{
|
||||
int minutes = currentAlert / 60;
|
||||
string currentAlertString = String.Empty;
|
||||
if (minutes > 0)
|
||||
|
@ -211,6 +215,7 @@ namespace OpenSim.Region.CoreModules.World.Region
|
|||
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);
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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,
|
||||
|
@ -188,9 +116,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;
|
||||
|
||||
|
@ -300,9 +225,6 @@ namespace OpenSim.Region.Framework.Scenes
|
|||
|
||||
public static void AvatarCollisionSound(ScenePresence av, List<CollisionForSoundInfo> collidersinfolist)
|
||||
{
|
||||
// disable for now
|
||||
return;
|
||||
|
||||
if (collidersinfolist.Count == 0 || av == null)
|
||||
return;
|
||||
|
||||
|
@ -346,10 +268,13 @@ namespace OpenSim.Region.Framework.Scenes
|
|||
volume = Math.Abs(colInfo.relativeVel);
|
||||
if (volume < 0.2f)
|
||||
continue;
|
||||
m_log.DebugFormat("Collision speed was {0}", volume);
|
||||
|
||||
volume *= volume * .0625f; // 4m/s == full volume
|
||||
if (volume > 1.0f)
|
||||
volume = 1.0f;
|
||||
// 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;
|
||||
|
|
|
@ -3948,10 +3948,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;
|
||||
|
|
|
@ -4644,6 +4644,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.
|
||||
|
@ -4663,6 +4664,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)
|
||||
|
|
|
@ -67,6 +67,12 @@
|
|||
</Section>
|
||||
<!---->
|
||||
|
||||
<!---->
|
||||
<Section Name="Collision Sounds AssetSet">
|
||||
<Key Name="file" Value="CollisionSoundsAssetSet/CollisionSoundsAssetSet.xml"/>
|
||||
</Section>
|
||||
<!---->
|
||||
|
||||
<!---->
|
||||
<Section Name="Textures AssetSet">
|
||||
<Key Name="file" Value="TexturesAssetSet/TexturesAssetSet.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>
|
|
@ -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/
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue