diff --git a/.nant/bamboo.build b/.nant/bamboo.build
index 5577dd9d7d..93e9ad7e68 100644
--- a/.nant/bamboo.build
+++ b/.nant/bamboo.build
@@ -21,7 +21,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/OpenSim/Region/ScriptEngine/Common/LSL_Types.cs b/OpenSim/Region/ScriptEngine/Common/LSL_Types.cs
index be790d6f3c..7274fa5a4b 100644
--- a/OpenSim/Region/ScriptEngine/Common/LSL_Types.cs
+++ b/OpenSim/Region/ScriptEngine/Common/LSL_Types.cs
@@ -1422,6 +1422,16 @@ namespace OpenSim.Region.ScriptEngine.Common
#region Operators
+ static public implicit operator int(LSLFloat f)
+ {
+ return (int)f.value;
+ }
+
+ static public implicit operator uint(LSLFloat f)
+ {
+ return (uint) Math.Abs(f.value);
+ }
+
static public implicit operator Boolean(LSLFloat f)
{
if (f.value == 0.0)
diff --git a/OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs b/OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs
index 0cddf369f9..acfe613bfe 100644
--- a/OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs
@@ -1477,6 +1477,16 @@ namespace OpenSim.Region.ScriptEngine.Shared
#region Operators
+ static public implicit operator int(LSLFloat f)
+ {
+ return (int)f.value;
+ }
+
+ static public implicit operator uint(LSLFloat f)
+ {
+ return (uint) Math.Abs(f.value);
+ }
+
static public implicit operator Boolean(LSLFloat f)
{
if (f.value == 0.0)
diff --git a/OpenSim/Tests/OpenSim/Region/ScriptEngine/Common/LSL_TypesTestLSLFloat.cs b/OpenSim/Tests/OpenSim/Region/ScriptEngine/Common/LSL_TypesTestLSLFloat.cs
index 130c0ecaa6..29d0e1c0f1 100644
--- a/OpenSim/Tests/OpenSim/Region/ScriptEngine/Common/LSL_TypesTestLSLFloat.cs
+++ b/OpenSim/Tests/OpenSim/Region/ScriptEngine/Common/LSL_TypesTestLSLFloat.cs
@@ -133,7 +133,7 @@ namespace OpenSim.Region.ScriptEngine.Common.Tests
foreach (KeyValuePair number in numberSet)
{
- testNumber = (int)(new LSL_Types.LSLFloat(number.Key));
+ testNumber = new LSL_Types.LSLFloat(number.Key);
Assert.AreEqual(number.Value, testNumber, "Converting double " + number.Key + ", expecting int " + number.Value);
}
}
@@ -170,7 +170,7 @@ namespace OpenSim.Region.ScriptEngine.Common.Tests
foreach (KeyValuePair number in numberSet)
{
- testNumber = (uint)(new LSL_Types.LSLFloat(number.Key));
+ testNumber = new LSL_Types.LSLFloat(number.Key);
Assert.AreEqual(number.Value, testNumber, "Converting double " + number.Key + ", expecting uint " + number.Value);
}
}