mirror of
https://github.com/opensim/opensim.git
synced 2026-08-04 16:22:50 +08:00
Merge branch 'master' into casper
This commit is contained in:
@@ -6606,6 +6606,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
|
||||
// retain pathcurve
|
||||
shapeBlock.PathCurve = part.Shape.PathCurve;
|
||||
|
||||
part.Shape.SculptEntry = false;
|
||||
return shapeBlock;
|
||||
}
|
||||
|
||||
@@ -6657,6 +6658,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
|
||||
shapeBlock.PathShearX = (byte)(100 * topshear.x);
|
||||
shapeBlock.PathShearY = (byte)(100 * topshear.y);
|
||||
|
||||
part.Shape.SculptEntry = false;
|
||||
part.UpdateShape(shapeBlock);
|
||||
}
|
||||
|
||||
@@ -6701,6 +6703,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
|
||||
shapeBlock.ProfileBegin = (ushort)(50000 * dimple.x);
|
||||
shapeBlock.ProfileEnd = (ushort)(50000 * (1 - dimple.y));
|
||||
|
||||
part.Shape.SculptEntry = false;
|
||||
part.UpdateShape(shapeBlock);
|
||||
}
|
||||
|
||||
@@ -6824,6 +6827,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
|
||||
}
|
||||
shapeBlock.PathSkew = (sbyte)(100 * skew);
|
||||
|
||||
part.Shape.SculptEntry = false;
|
||||
part.UpdateShape(shapeBlock);
|
||||
}
|
||||
|
||||
|
||||
@@ -422,7 +422,8 @@ namespace OpenSim.Region.ScriptEngine.Shared
|
||||
|
||||
public int Length
|
||||
{
|
||||
get {
|
||||
get
|
||||
{
|
||||
if (m_data == null)
|
||||
m_data=new Object[0];
|
||||
return m_data.Length;
|
||||
@@ -431,7 +432,40 @@ namespace OpenSim.Region.ScriptEngine.Shared
|
||||
|
||||
public int Size
|
||||
{
|
||||
get { return 0; }
|
||||
get
|
||||
{
|
||||
if (m_data == null)
|
||||
m_data=new Object[0];
|
||||
|
||||
int size = 0;
|
||||
|
||||
foreach (Object o in m_data)
|
||||
{
|
||||
if (o is LSL_Types.LSLInteger)
|
||||
size += 4;
|
||||
else if (o is LSL_Types.LSLFloat)
|
||||
size += 8;
|
||||
else if (o is LSL_Types.LSLString)
|
||||
size += ((LSL_Types.LSLString)o).m_string.Length;
|
||||
else if (o is LSL_Types.key)
|
||||
size += ((LSL_Types.key)o).value.Length;
|
||||
else if (o is LSL_Types.Vector3)
|
||||
size += 32;
|
||||
else if (o is LSL_Types.Quaternion)
|
||||
size += 64;
|
||||
else if (o is int)
|
||||
size += 4;
|
||||
else if (o is string)
|
||||
size += ((string)o).Length;
|
||||
else if (o is float)
|
||||
size += 8;
|
||||
else if (o is double)
|
||||
size += 16;
|
||||
else
|
||||
throw new Exception("Unknown type in List.Size: " + o.GetType().ToString());
|
||||
}
|
||||
return size;
|
||||
}
|
||||
}
|
||||
|
||||
public object[] Data
|
||||
|
||||
Reference in New Issue
Block a user