예제 #1
0
        static int _m_Add(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);


                FairyGUI.Timers gen_to_be_invoked = (FairyGUI.Timers)translator.FastGetCSObj(L, 1);


                int gen_param_count = LuaAPI.lua_gettop(L);

                if (gen_param_count == 4 && LuaTypes.LUA_TNUMBER == LuaAPI.lua_type(L, 2) && LuaTypes.LUA_TNUMBER == LuaAPI.lua_type(L, 3) && translator.Assignable <FairyGUI.TimerCallback>(L, 4))
                {
                    float _interval = (float)LuaAPI.lua_tonumber(L, 2);
                    int   _repeat   = LuaAPI.xlua_tointeger(L, 3);
                    FairyGUI.TimerCallback _callback = translator.GetDelegate <FairyGUI.TimerCallback>(L, 4);

                    gen_to_be_invoked.Add(
                        _interval,
                        _repeat,
                        _callback);



                    return(0);
                }
                if (gen_param_count == 5 && LuaTypes.LUA_TNUMBER == LuaAPI.lua_type(L, 2) && LuaTypes.LUA_TNUMBER == LuaAPI.lua_type(L, 3) && translator.Assignable <FairyGUI.TimerCallback>(L, 4) && translator.Assignable <object>(L, 5))
                {
                    float _interval = (float)LuaAPI.lua_tonumber(L, 2);
                    int   _repeat   = LuaAPI.xlua_tointeger(L, 3);
                    FairyGUI.TimerCallback _callback = translator.GetDelegate <FairyGUI.TimerCallback>(L, 4);
                    object _callbackParam            = translator.GetObject(L, 5, typeof(object));

                    gen_to_be_invoked.Add(
                        _interval,
                        _repeat,
                        _callback,
                        _callbackParam);



                    return(0);
                }
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }

            return(LuaAPI.luaL_error(L, "invalid arguments to FairyGUI.Timers.Add!"));
        }
        static StackObject *Add_5(ILIntepreter __intp, StackObject *__esp, IList <object> __mStack, CLRMethod __method, bool isNewObj)
        {
            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
            StackObject *ptr_of_this_method;
            StackObject *__ret = ILIntepreter.Minus(__esp, 5);

            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
            System.Object @callbackParam = (System.Object) typeof(System.Object).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags) 0);
            __intp.Free(ptr_of_this_method);

            ptr_of_this_method = ILIntepreter.Minus(__esp, 2);
            FairyGUI.TimerCallback @callback = (FairyGUI.TimerCallback) typeof(FairyGUI.TimerCallback).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags) 8);
            __intp.Free(ptr_of_this_method);

            ptr_of_this_method = ILIntepreter.Minus(__esp, 3);
            System.Int32 @repeat = ptr_of_this_method->Value;

            ptr_of_this_method = ILIntepreter.Minus(__esp, 4);
            System.Single @interval = *(float *)&ptr_of_this_method->Value;

            ptr_of_this_method = ILIntepreter.Minus(__esp, 5);
            FairyGUI.Timers instance_of_this_method = (FairyGUI.Timers) typeof(FairyGUI.Timers).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack), (CLR.Utils.Extensions.TypeFlags) 0);
            __intp.Free(ptr_of_this_method);

            instance_of_this_method.Add(@interval, @repeat, @callback, @callbackParam);

            return(__ret);
        }