Merge branch 'master' of ssh://3dhosting.de/var/git/careminster

avinationmerge
Kitto Flora 2010-02-08 14:29:06 -05:00
commit 59851ceee6
13 changed files with 1228 additions and 407 deletions

View File

@ -55,7 +55,7 @@ namespace OpenSim.Client.MXP.PacketHandler
private readonly Dictionary<UUID, Scene> m_scenes;
private readonly Transmitter m_transmitter;
private readonly Thread m_clientThread;
// private readonly Thread m_clientThread;
private readonly IList<Session> m_sessions = new List<Session>();
private readonly IList<Session> m_sessionsToClient = new List<Session>();

View File

@ -41,7 +41,7 @@ namespace OpenSim.Data.SQLite
/// </summary>
public class SQLiteAssetData : AssetDataBase
{
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
private const string SelectAssetSQL = "select * from assets where UUID=:UUID";
private const string SelectAssetMetadataSQL = "select Name, Description, Type, Temporary, UUID from assets limit :start, :count";

View File

@ -39,9 +39,7 @@ namespace OpenSim.Data.SQLite
{
public class SQLiteGenericTableHandler<T> : SQLiteFramework where T: class, new()
{
private static readonly ILog m_log =
LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
protected Dictionary<string, FieldInfo> m_Fields =
new Dictionary<string, FieldInfo>();

View File

@ -41,8 +41,7 @@ namespace OpenSim.Data.SQLite
/// </summary>
public class SQLiteXInventoryData : IXInventoryData
{
private static readonly ILog m_log = LogManager.GetLogger(
MethodBase.GetCurrentMethod().DeclaringType);
// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
private SQLiteGenericTableHandler<XInventoryFolder> m_Folders;
private SqliteItemHandler m_Items;

View File

@ -174,18 +174,16 @@ namespace OpenSim.Region.CoreModules.Framework.Library
{
m_log.DebugFormat("[LIBRARY MODULE]: Exception when processing archive {0}: {1}", iarFileName, e.Message);
}
}
}
private void DumpLibrary()
{
InventoryFolderImpl lib = m_Scene.CommsManager.UserProfileCacheService.LibraryRoot;
m_log.DebugFormat(" - folder {0}", lib.Name);
DumpFolder(lib);
}
//
// private void DumpLibrary()
// {
// InventoryFolderImpl lib = m_Scene.CommsManager.UserProfileCacheService.LibraryRoot;
//
// m_log.DebugFormat(" - folder {0}", lib.Name);
// DumpFolder(lib);
// }
private void DumpFolder(InventoryFolderImpl folder)
{

View File

@ -262,44 +262,34 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
{
case ChatTypeEnum.Whisper:
if (dis < m_whisperdistance)
{
lock (m_pending.SyncRoot)
{
m_pending.Enqueue(new ListenerInfo(li,name,id,msg));
}
}
QueueMessage(new ListenerInfo(li, name, id, msg));
break;
case ChatTypeEnum.Say:
if (dis < m_saydistance)
{
lock (m_pending.SyncRoot)
{
m_pending.Enqueue(new ListenerInfo(li,name,id,msg));
}
}
QueueMessage(new ListenerInfo(li, name, id, msg));
break;
case ChatTypeEnum.Shout:
if (dis < m_shoutdistance)
{
lock (m_pending.SyncRoot)
{
m_pending.Enqueue(new ListenerInfo(li,name,id,msg));
}
}
QueueMessage(new ListenerInfo(li, name, id, msg));
break;
case ChatTypeEnum.Region:
lock (m_pending.SyncRoot)
{
m_pending.Enqueue(new ListenerInfo(li,name,id,msg));
}
QueueMessage(new ListenerInfo(li, name, id, msg));
break;
}
}
}
protected void QueueMessage(ListenerInfo li)
{
lock (m_pending.SyncRoot)
{
m_pending.Enqueue(li);
}
}
/// <summary>
/// Are there any listen events ready to be dispatched?
/// </summary>
@ -319,7 +309,7 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
lock (m_pending.SyncRoot)
{
li = (ListenerInfo) m_pending.Dequeue();
li = (ListenerInfo)m_pending.Dequeue();
}
return li;

View File

@ -42,9 +42,7 @@ namespace OpenSim.Region.CoreModules.World
{
public class AccessModule : ISharedRegionModule
{
private static readonly ILog m_log =
LogManager.GetLogger(
MethodBase.GetCurrentMethod().DeclaringType);
// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
private List<Scene> m_SceneList = new List<Scene>();

File diff suppressed because it is too large Load Diff

View File

@ -699,42 +699,42 @@ namespace OpenSim.Region.Framework.Scenes
{
m_log.DebugFormat(
"[SCENE COMMUNICATION SERVICE]: RequestTeleportToLocation {0} within {1}",
position, m_regionInfo.RegionName);
// Teleport within the same region
if (IsOutsideRegion(avatar.Scene, position) || position.Z < 0)
{
Vector3 emergencyPos = new Vector3(128, 128, 128);
m_log.WarnFormat(
"[SCENE COMMUNICATION SERVICE]: RequestTeleportToLocation() was given an illegal position of {0} for avatar {1}, {2}. Substituting {3}",
position, avatar.Name, avatar.UUID, emergencyPos);
position = emergencyPos;
}
Vector3 currentPos = avatar.AbsolutePosition;
ILandObject srcLand = m_scene.LandChannel.GetLandObject(currentPos.X, currentPos.Y);
ILandObject destLand = m_scene.LandChannel.GetLandObject(position.X, position.Y);
if (srcLand != null && destLand != null && (teleportFlags & (uint)TeleportFlags.ViaLure) == 0 && (teleportFlags & (uint)TeleportFlags.ViaGodlikeLure) == 0)
{
if (srcLand.LandData.LocalID == destLand.LandData.LocalID)
{
//TPing within the same parcel. If the landing point is restricted, block the TP.
//Don't restrict gods, estate managers, or land owners to the TP point. This behaviour mimics agni.
if (destLand.LandData.LandingType == (byte)1 && destLand.LandData.UserLocation != Vector3.Zero && avatar.GodLevel < 200 && !m_scene.RegionInfo.EstateSettings.IsEstateManager(avatar.UUID) && destLand.LandData.OwnerID != avatar.UUID)
{
avatar.ControllingClient.SendAgentAlertMessage("Can't TP to the destination; landing point set.", false);
position = currentPos;
}
}
else
{
//Tping to a different parcel. Respect the landing point on the destination parcel.
if (destLand.LandData.LandingType == (byte)1 && destLand.LandData.UserLocation != Vector3.Zero && avatar.GodLevel < 200 && !m_scene.RegionInfo.EstateSettings.IsEstateManager(avatar.UUID) && destLand.LandData.OwnerID != avatar.UUID)
{
position = destLand.LandData.UserLocation;
}
}
position, m_regionInfo.RegionName);
// Teleport within the same region
if (IsOutsideRegion(avatar.Scene, position) || position.Z < 0)
{
Vector3 emergencyPos = new Vector3(128, 128, 128);
m_log.WarnFormat(
"[SCENE COMMUNICATION SERVICE]: RequestTeleportToLocation() was given an illegal position of {0} for avatar {1}, {2}. Substituting {3}",
position, avatar.Name, avatar.UUID, emergencyPos);
position = emergencyPos;
}
Vector3 currentPos = avatar.AbsolutePosition;
ILandObject srcLand = m_scene.LandChannel.GetLandObject(currentPos.X, currentPos.Y);
ILandObject destLand = m_scene.LandChannel.GetLandObject(position.X, position.Y);
if (srcLand != null && destLand != null && (teleportFlags & (uint)TeleportFlags.ViaLure) == 0 && (teleportFlags & (uint)TeleportFlags.ViaGodlikeLure) == 0)
{
if (srcLand.LandData.LocalID == destLand.LandData.LocalID)
{
//TPing within the same parcel. If the landing point is restricted, block the TP.
//Don't restrict gods, estate managers, or land owners to the TP point. This behaviour mimics agni.
if (destLand.LandData.LandingType == (byte)1 && destLand.LandData.UserLocation != Vector3.Zero && avatar.GodLevel < 200 && !m_scene.RegionInfo.EstateSettings.IsEstateManager(avatar.UUID) && destLand.LandData.OwnerID != avatar.UUID)
{
avatar.ControllingClient.SendAgentAlertMessage("Can't TP to the destination; landing point set.", false);
position = currentPos;
}
}
else
{
//Tping to a different parcel. Respect the landing point on the destination parcel.
if (destLand.LandData.LandingType == (byte)1 && destLand.LandData.UserLocation != Vector3.Zero && avatar.GodLevel < 200 && !m_scene.RegionInfo.EstateSettings.IsEstateManager(avatar.UUID) && destLand.LandData.OwnerID != avatar.UUID)
{
position = destLand.LandData.UserLocation;
}
}
}
// TODO: Get proper AVG Height

View File

@ -113,6 +113,15 @@ namespace OpenSim.Region.Framework.Scenes
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
/// <value>
/// Is this sop a root part?
/// </value>
[XmlIgnore]
public bool IsRoot
{
get { return ParentGroup.RootPart == this; }
}
// use only one serializer to give the runtime a chance to optimize it (it won't do that if you
// use a new instance every time)
private static XmlSerializer serializer = new XmlSerializer(typeof (SceneObjectPart));

View File

@ -2979,11 +2979,10 @@ namespace OpenSim.Region.Framework.Scenes
{
m_scene.CrossAgentToNewRegion(this, m_physicsActor.Flying);
}
catch(Exception ex)
catch
{
m_scene.CrossAgentToNewRegion(this, false);
}
}
public void InTransit()
@ -3061,7 +3060,6 @@ namespace OpenSim.Region.Framework.Scenes
{
RemoveNeighbourRegion(handle);
}
}
#endregion
@ -3222,7 +3220,7 @@ namespace OpenSim.Region.Framework.Scenes
List<int> attPoints = m_appearance.GetAttachedPoints();
if (attPoints != null)
{
m_log.DebugFormat("[SCENE PRESENCE]: attachments {0}", attPoints.Count);
//m_log.DebugFormat("[SCENE PRESENCE]: attachments {0}", attPoints.Count);
int i = 0;
AttachmentData[] attachs = new AttachmentData[attPoints.Count];
foreach (int point in attPoints)
@ -3494,9 +3492,7 @@ namespace OpenSim.Region.Framework.Scenes
}
if (m_health <= 0)
m_scene.EventManager.TriggerAvatarKill(killerObj, this);
}
}
}
public void setHealthWithUpdate(float health)

View File

@ -244,6 +244,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
LSL_Types.Vector3 iV;
switch (rule)
{
case (int)ScriptBaseClass.WL_SUN_MOON_POSITION:
idx++;
wl.sunMoonPosition = (float)rules.GetLSLFloatItem(idx);
break;
case (int)ScriptBaseClass.WL_AMBIENT:
idx++;
iQ = rules.GetQuaternionItem(idx);
@ -300,7 +304,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
case (int)ScriptBaseClass.WL_CLOUD_XY_DENSITY:
idx++;
iV = rules.GetVector3Item(idx);
wl.cloudDetailXYDensity = new Vector3((float)iV.x, (float)iV.y, (float)iV.z);
wl.cloudXYDensity = new Vector3((float)iV.x, (float)iV.y, (float)iV.z);
break;
case (int)ScriptBaseClass.WL_DENSITY_MULTIPLIER:
idx++;

View File

@ -70,7 +70,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase
public const int WL_CLOUD_SCROLL_Y = 32;
public const int WL_CLOUD_SCROLL_Y_LOCK = 33;
public const int WL_CLOUD_SCROLL_X_LOCK = 34;
public const int WL_DRAW_CLASSIC_CLOUDS = 35;
public const int WL_DRAW_CLASSIC_CLOUDS = 35;
public const int WL_SUN_MOON_POSITION = 36;
}
}