aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ScriptEngine')
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs13
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs7
2 files changed, 13 insertions, 7 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index bc58a8a..4b92739 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -5614,12 +5614,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
5614 if (remain < 6) 5614 if (remain < 6)
5615 return; 5615 return;
5616 5616
5617 face = Convert.ToInt32(rules.Data[idx++].ToString()); // holeshape 5617 face = (int)rules.GetLSLIntegerItem(idx++);
5618 v = new LSL_Types.Vector3(rules.Data[idx++].ToString()); // cut 5618 v = rules.GetVector3Item(idx++); // cut
5619 hollow = (float)Convert.ToDouble(rules.Data[idx++].ToString()); 5619 hollow = (float)rules.GetLSLFloatItem(idx++);
5620 twist = new LSL_Types.Vector3(rules.Data[idx++].ToString()); 5620 twist = rules.GetVector3Item(idx++);
5621 taper_b = new LSL_Types.Vector3(rules.Data[idx++].ToString()); 5621 taper_b = rules.GetVector3Item(idx++);
5622 topshear = new LSL_Types.Vector3(rules.Data[idx++].ToString()); 5622 topshear = rules.GetVector3Item(idx++);
5623
5623 part.Shape.PathCurve = (byte)Extrusion.Straight; 5624 part.Shape.PathCurve = (byte)Extrusion.Straight;
5624 SetPrimitiveShapeParams(part, face, v, hollow, twist, taper_b, topshear, 1); 5625 SetPrimitiveShapeParams(part, face, v, hollow, twist, taper_b, topshear, 1);
5625 break; 5626 break;
diff --git a/OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs b/OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs
index 4554b0c..f149f60 100644
--- a/OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs
@@ -454,7 +454,12 @@ namespace OpenSim.Region.ScriptEngine.Shared
454 454
455 public LSL_Types.LSLInteger GetLSLIntegerItem(int itemIndex) 455 public LSL_Types.LSLInteger GetLSLIntegerItem(int itemIndex)
456 { 456 {
457 return (LSL_Types.LSLInteger)m_data[itemIndex]; 457 if (m_data[itemIndex] is LSL_Types.LSLInteger)
458 return (LSL_Types.LSLInteger)m_data[itemIndex];
459 else if (m_data[itemIndex] is Int32)
460 return new LSLInteger((int)m_data[itemIndex]);
461 else
462 throw new InvalidCastException();
458 } 463 }
459 464
460 public LSL_Types.Vector3 GetVector3Item(int itemIndex) 465 public LSL_Types.Vector3 GetVector3Item(int itemIndex)