Aurora.ScriptEngine.AuroraDotNetEngine.APIs.LSL_Api.llGetStatus C# (CSharp) Method

llGetStatus() public method

public llGetStatus ( int status ) : Aurora.ScriptEngine.AuroraDotNetEngine.LSL_Types.LSLInteger
status int
return Aurora.ScriptEngine.AuroraDotNetEngine.LSL_Types.LSLInteger
        public LSL_Integer llGetStatus(int status)
        {
            if (!ScriptProtection.CheckThreatLevel(ThreatLevel.None, "LSL", m_host, "LSL", m_itemID)) return new LSL_Integer();

            if (status == ScriptBaseClass.STATUS_PHYSICS)
            {
                return (m_host.GetEffectiveObjectFlags() & (uint)PrimFlags.Physics) == (uint)PrimFlags.Physics ? new LSL_Integer(1) : new LSL_Integer(0);
            }

            if (status == ScriptBaseClass.STATUS_PHANTOM)
            {
                return (m_host.GetEffectiveObjectFlags() & (uint)PrimFlags.Phantom) == (uint)PrimFlags.Phantom ? new LSL_Integer(1) : new LSL_Integer(0);
            }

            if (status == ScriptBaseClass.STATUS_CAST_SHADOWS)
            {
                if ((m_host.GetEffectiveObjectFlags() & (uint)PrimFlags.CastShadows) == (uint)PrimFlags.CastShadows)
                    return new LSL_Integer(1);
                return new LSL_Integer(0);
            }
            if (status == ScriptBaseClass.STATUS_BLOCK_GRAB)
            {
                return m_host.GetBlockGrab(false) ? new LSL_Integer(1) : new LSL_Integer(0);
            }

            if (status == ScriptBaseClass.STATUS_BLOCK_GRAB_OBJECT)
            {
                return m_host.GetBlockGrab(true) ? new LSL_Integer(1) : new LSL_Integer(0);
            }

            if (status == ScriptBaseClass.STATUS_DIE_AT_EDGE)
            {
                return m_host.GetDieAtEdge() ? new LSL_Integer(1) : new LSL_Integer(0);
            }

            if (status == ScriptBaseClass.STATUS_RETURN_AT_EDGE)
            {
                return m_host.GetReturnAtEdge() ? new LSL_Integer(1) : new LSL_Integer(0);
            }

            if (status == ScriptBaseClass.STATUS_ROTATE_X)
            {
                return m_host.GetAxisRotation(2) == 2 ? new LSL_Integer(1) : new LSL_Integer(0);
            }

            if (status == ScriptBaseClass.STATUS_ROTATE_Y)
            {
                return m_host.GetAxisRotation(4) == 4 ? new LSL_Integer(1) : new LSL_Integer(0);
            }

            if (status == ScriptBaseClass.STATUS_ROTATE_Z)
            {
                return m_host.GetAxisRotation(8) == 8 ? new LSL_Integer(1) : new LSL_Integer(0);
            }

            if (status == ScriptBaseClass.STATUS_SANDBOX)
            {
                return m_host.GetStatusSandbox() ? new LSL_Integer(1) : new LSL_Integer(0);
            }
            return new LSL_Integer(0);
        }
LSL_Api