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); } }