static int BindDestroyFunction(IntPtr L) { try { ToLua.CheckArgsCount(L, 2); EffectController obj = (EffectController)ToLua.CheckObject(L, 1, typeof(EffectController)); System.Action arg0 = null; LuaTypes funcType2 = LuaDLL.lua_type(L, 2); if (funcType2 != LuaTypes.LUA_TFUNCTION) { arg0 = (System.Action)ToLua.CheckObject(L, 2, typeof(System.Action)); } else { LuaFunction func = ToLua.ToLuaFunction(L, 2); arg0 = DelegateFactory.CreateDelegate(typeof(System.Action), func) as System.Action; } obj.BindDestroyFunction(arg0); return(0); } catch (Exception e) { return(LuaDLL.toluaL_exception(L, e)); } }