OpenSim.Region.ScriptEngine.Shared.Api.LSL_Api.llGetObjectMass C# (CSharp) Method

llGetObjectMass() public method

public llGetObjectMass ( string id ) : OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLFloat
id string
return OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLFloat
        public LSL_Float llGetObjectMass(string id)
        {
            m_host.AddScriptLPS(1);
            UUID key = new UUID();
            if (UUID.TryParse(id, out key))
            {
                // return total object mass
                SceneObjectPart part = World.GetSceneObjectPart(key);
                if (part != null)
                    return part.ParentGroup.GetMass();

                // the object is null so the key is for an avatar
                ScenePresence avatar = World.GetScenePresence(key);
                if (avatar != null)
                {
                    if (avatar.IsChildAgent)
                    {
                        // reference http://www.lslwiki.net/lslwiki/wakka.php?wakka=llGetObjectMass
                        // child agents have a mass of 1.0
                        return 1;
                    }
                    else
                    {
                        return (double)avatar.GetMass();
                    }
                }
            }
            return 0;
        }
LSL_Api