Merge branch 'master' of ssh://opensimulator.org/var/git/opensim

prebuild-update
Justin Clark-Casey (justincc) 2010-08-24 22:29:32 +01:00
commit 78f452050a
4 changed files with 22 additions and 11 deletions

View File

@ -47,5 +47,6 @@ namespace OpenSim.Framework
public bool useEstateSun;
public float waterHeight;
public string simName;
public string regionType;
}
}

View File

@ -717,7 +717,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
handshake.RegionInfo3.CPURatio = 1;
handshake.RegionInfo3.ColoName = Utils.EmptyBytes;
handshake.RegionInfo3.ProductName = Utils.EmptyBytes;
handshake.RegionInfo3.ProductName = Util.StringToBytes256(regionInfo.RegionType);
handshake.RegionInfo3.ProductSKU = Utils.EmptyBytes;
OutPacket(handshake, ThrottleOutPacketType.Task);
@ -4106,7 +4106,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
rinfopack.RegionInfo2.HardMaxAgents = uint.MaxValue;
rinfopack.RegionInfo2.HardMaxObjects = uint.MaxValue;
rinfopack.RegionInfo2.MaxAgents32 = uint.MaxValue;
rinfopack.RegionInfo2.ProductName = Utils.EmptyBytes;
rinfopack.RegionInfo2.ProductName = Util.StringToBytes256(args.regionType);
rinfopack.RegionInfo2.ProductSKU = Utils.EmptyBytes;
rinfopack.HasVariableBlocks = true;

View File

@ -670,6 +670,7 @@ namespace OpenSim.Region.CoreModules.World.Estate
args.useEstateSun = m_scene.RegionInfo.RegionSettings.UseEstateSun;
args.waterHeight = (float)m_scene.RegionInfo.RegionSettings.WaterHeight;
args.simName = m_scene.RegionInfo.RegionName;
args.regionType = m_scene.RegionInfo.RegionType;
remote_client.SendRegionInfoToEstateMenu(args);
}

View File

@ -1936,7 +1936,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
if (part.ParentGroup.RootPart == part)
{
if ((targetPos.z < ground) && disable_underground_movement)
if ((targetPos.z < ground) && disable_underground_movement && m_host.AttachmentPoint == 0)
targetPos.z = ground;
SceneObjectGroup parent = part.ParentGroup;
LSL_Vector real_vec = SetPosAdjust(currentPos, targetPos);
@ -1968,18 +1968,27 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
protected LSL_Vector GetPartLocalPos(SceneObjectPart part)
{
m_host.AddScriptLPS(1);
if (part.ParentID != 0)
{
return new LSL_Vector(part.OffsetPosition.X,
part.OffsetPosition.Y,
part.OffsetPosition.Z);
}
else
if (part.ParentID == 0)
{
return new LSL_Vector(part.AbsolutePosition.X,
part.AbsolutePosition.Y,
part.AbsolutePosition.Z);
}
else
{
if (m_host.IsRoot)
{
return new LSL_Vector(m_host.AttachedPos.X,
m_host.AttachedPos.Y,
m_host.AttachedPos.Z);
}
else
{
return new LSL_Vector(part.OffsetPosition.X,
part.OffsetPosition.Y,
part.OffsetPosition.Z);
}
}
}
public void llSetRot(LSL_Rotation rot)