static int AsyncLoadResource(IntPtr L)
    {
        try
        {
            int count = LuaDLL.lua_gettop(L);

            if (count == 4)
            {
                MFrameWork.MResourceManager obj = (MFrameWork.MResourceManager)ToLua.CheckObject <MFrameWork.MResourceManager>(L, 1);
                string arg0 = ToLua.CheckString(L, 2);
                MFrameWork.OnAsyncLoadFinished arg1 = (MFrameWork.OnAsyncLoadFinished)ToLua.CheckDelegate <MFrameWork.OnAsyncLoadFinished>(L, 3);
                MFrameWork.LoadResPriority     arg2 = (MFrameWork.LoadResPriority)ToLua.CheckObject(L, 4, typeof(MFrameWork.LoadResPriority));
                obj.AsyncLoadResource(arg0, arg1, arg2);
                return(0);
            }
            else if (count == 5 && TypeChecker.CheckTypes <MFrameWork.OnAsyncLoadFinished, MFrameWork.LoadResPriority, object[]>(L, 3))
            {
                MFrameWork.MResourceManager obj = (MFrameWork.MResourceManager)ToLua.CheckObject <MFrameWork.MResourceManager>(L, 1);
                string arg0 = ToLua.CheckString(L, 2);
                MFrameWork.OnAsyncLoadFinished arg1 = (MFrameWork.OnAsyncLoadFinished)ToLua.ToObject(L, 3);
                MFrameWork.LoadResPriority     arg2 = (MFrameWork.LoadResPriority)ToLua.ToObject(L, 4);
                object[] arg3 = ToLua.ToObjectArray(L, 5);
                obj.AsyncLoadResource(arg0, arg1, arg2, arg3);
                return(0);
            }
            else if (count == 5 && TypeChecker.CheckTypes <MFrameWork.MResourceObjectItem, MFrameWork.OnAsyncLoadObjectFinished, MFrameWork.LoadResPriority>(L, 3))
            {
                MFrameWork.MResourceManager obj = (MFrameWork.MResourceManager)ToLua.CheckObject <MFrameWork.MResourceManager>(L, 1);
                string arg0 = ToLua.CheckString(L, 2);
                MFrameWork.MResourceObjectItem       arg1 = (MFrameWork.MResourceObjectItem)ToLua.ToObject(L, 3);
                MFrameWork.OnAsyncLoadObjectFinished arg2 = (MFrameWork.OnAsyncLoadObjectFinished)ToLua.ToObject(L, 4);
                MFrameWork.LoadResPriority           arg3 = (MFrameWork.LoadResPriority)ToLua.ToObject(L, 5);
                obj.AsyncLoadResource(arg0, arg1, arg2, arg3);
                return(0);
            }
            else if (count == 6)
            {
                MFrameWork.MResourceManager obj = (MFrameWork.MResourceManager)ToLua.CheckObject <MFrameWork.MResourceManager>(L, 1);
                string arg0 = ToLua.CheckString(L, 2);
                MFrameWork.MResourceObjectItem       arg1 = (MFrameWork.MResourceObjectItem)ToLua.CheckObject <MFrameWork.MResourceObjectItem>(L, 3);
                MFrameWork.OnAsyncLoadObjectFinished arg2 = (MFrameWork.OnAsyncLoadObjectFinished)ToLua.CheckDelegate <MFrameWork.OnAsyncLoadObjectFinished>(L, 4);
                MFrameWork.LoadResPriority           arg3 = (MFrameWork.LoadResPriority)ToLua.CheckObject(L, 5, typeof(MFrameWork.LoadResPriority));
                object[] arg4 = ToLua.CheckObjectArray(L, 6);
                obj.AsyncLoadResource(arg0, arg1, arg2, arg3, arg4);
                return(0);
            }
            else
            {
                return(LuaDLL.luaL_throw(L, "invalid arguments to method: MFrameWork.MResourceManager.AsyncLoadResource"));
            }
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
예제 #2
0
    public MFrameWork.OnAsyncLoadFinished MFrameWork_OnAsyncLoadFinished(LuaFunction func, LuaTable self, bool flag)
    {
        if (func == null)
        {
            MFrameWork.OnAsyncLoadFinished fn = delegate(string param0, UnityEngine.Object param1, object[] param2) { };
            return(fn);
        }

        if (!flag)
        {
            MFrameWork_OnAsyncLoadFinished_Event target = new MFrameWork_OnAsyncLoadFinished_Event(func);
            MFrameWork.OnAsyncLoadFinished       d      = target.Call;
            target.method = d.Method;
            return(d);
        }
        else
        {
            MFrameWork_OnAsyncLoadFinished_Event target = new MFrameWork_OnAsyncLoadFinished_Event(func, self);
            MFrameWork.OnAsyncLoadFinished       d      = target.CallWithSelf;
            target.method = d.Method;
            return(d);
        }
    }
예제 #3
0
 void Push_MFrameWork_OnAsyncLoadFinished(IntPtr L, MFrameWork.OnAsyncLoadFinished o)
 {
     ToLua.Push(L, o);
 }