Example #1
0
        public static object ToVarTable(IntPtr L, int stackPos)
        {
            stackPos = LuaDLL.abs_index(L, stackPos);
            switch (LuaDLL.tolua_getvaluetype(L, stackPos))
            {
            case LuaValueType.Vector3:
                return(ToLua.ToVector3(L, stackPos));

            case LuaValueType.Quaternion:
                return(ToLua.ToQuaternion(L, stackPos));

            case LuaValueType.Vector2:
                return(ToLua.ToVector2(L, stackPos));

            case LuaValueType.Color:
                return(ToLua.ToColor(L, stackPos));

            case LuaValueType.Vector4:
                return(ToLua.ToVector4(L, stackPos));

            case LuaValueType.Ray:
                return(ToLua.ToRay(L, stackPos));

            case LuaValueType.Bounds:
                return(ToLua.ToBounds(L, stackPos));

            case LuaValueType.LayerMask:
                return(ToLua.ToLayerMask(L, stackPos));
            }
            LuaDLL.lua_pushvalue(L, stackPos);
            int reference = LuaDLL.toluaL_ref(L);

            return(LuaStatic.GetTable(L, reference));
        }
Example #2
0
        public Nullable <Bounds> ToNullBounds(IntPtr L, int stackPos)
        {
            if (LuaDLL.lua_type(L, stackPos) == LuaTypes.LUA_TNIL)
            {
                return(null);
            }

            return(ToLua.ToBounds(L, stackPos));
        }