Пример #1
0
    static int set_closeCallBack(IntPtr L)
    {
        object         o   = LuaScriptMgr.GetLuaObject(L, 1);
        UICloseOnClick obj = (UICloseOnClick)o;

        if (obj == null)
        {
            LuaTypes types = LuaDLL.lua_type(L, 1);

            if (types == LuaTypes.LUA_TTABLE)
            {
                LuaDLL.luaL_error(L, "unknown member name closeCallBack");
            }
            else
            {
                LuaDLL.luaL_error(L, "attempt to index closeCallBack on a nil value");
            }
        }

        LuaTypes funcType = LuaDLL.lua_type(L, 3);

        if (funcType != LuaTypes.LUA_TFUNCTION)
        {
            obj.closeCallBack = (UICloseOnClick.OnClosed)LuaScriptMgr.GetNetObject(L, 3, typeof(UICloseOnClick.OnClosed));
        }
        else
        {
            LuaFunction func = LuaScriptMgr.ToLuaFunction(L, 3);
            obj.closeCallBack = () =>
            {
                func.Call();
            };
        }
        return(0);
    }
Пример #2
0
    static int get_closeCallBack(IntPtr L)
    {
        object         o   = LuaScriptMgr.GetLuaObject(L, 1);
        UICloseOnClick obj = (UICloseOnClick)o;

        if (obj == null)
        {
            LuaTypes types = LuaDLL.lua_type(L, 1);

            if (types == LuaTypes.LUA_TTABLE)
            {
                LuaDLL.luaL_error(L, "unknown member name closeCallBack");
            }
            else
            {
                LuaDLL.luaL_error(L, "attempt to index closeCallBack on a nil value");
            }
        }

        LuaScriptMgr.Push(L, obj.closeCallBack);
        return(1);
    }