public LSL_Integer llRound(double f)
{
if (!ScriptProtection.CheckThreatLevel(ThreatLevel.None, "LSL", m_host, "LSL", m_itemID)) return new LSL_Integer();
double RoundedNumber = Math.Round(f, MidpointRounding.AwayFromZero);
//Attempt to fix rounded numbers like -4.5 arounding away from zero
if (f < 0)
{
if (f + 0.5 == RoundedNumber || f - 0.5 == RoundedNumber)
{
RoundedNumber += 1;
}
}
return (int)RoundedNumber;
}