From eafd6cb0118f2732a50b2ae8c6e3f95eac1370d7 Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期三, 26 六月 2019 16:22:36 +0800
Subject: [PATCH] 7539 子 【开发】【2.0.100】增加自由设置技能释放顺序 / 【前端】【2.0.100】增加自由设置技能释放顺序

---
 Lua/Gen/QuickSettingWrap.cs |   67 ++++++++++++++++++++++++++++++++-
 1 files changed, 65 insertions(+), 2 deletions(-)

diff --git a/Lua/Gen/QuickSettingWrap.cs b/Lua/Gen/QuickSettingWrap.cs
index d795b26..e387a27 100644
--- a/Lua/Gen/QuickSettingWrap.cs
+++ b/Lua/Gen/QuickSettingWrap.cs
@@ -21,13 +21,14 @@
         {
 			ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);
 			System.Type type = typeof(QuickSetting);
-			Utils.BeginObjectRegister(type, L, translator, 0, 4, 1, 1);
+			Utils.BeginObjectRegister(type, L, translator, 0, 5, 1, 1);
 			
 			Utils.RegisterFunc(L, Utils.METHOD_IDX, "SetQuickSetting", _m_SetQuickSetting);
 			Utils.RegisterFunc(L, Utils.METHOD_IDX, "GetQuickSetting", _m_GetQuickSetting);
 			Utils.RegisterFunc(L, Utils.METHOD_IDX, "GetQuickSettingBool", _m_GetQuickSettingBool);
 			Utils.RegisterFunc(L, Utils.METHOD_IDX, "SendPackage", _m_SendPackage);
 			
+			Utils.RegisterFunc(L, Utils.METHOD_IDX, "onQuickSettingUpdate", _e_onQuickSettingUpdate);
 			
 			Utils.RegisterFunc(L, Utils.GETTER_IDX, "quickSettingDic", _g_get_quickSettingDic);
             
@@ -124,6 +125,18 @@
                     
                     return 0;
                 }
+                if(gen_param_count == 4&& LuaTypes.LUA_TNUMBER == LuaAPI.lua_type(L, 2)&& (LuaAPI.lua_isnil(L, 3) || LuaAPI.lua_type(L, 3) == LuaTypes.LUA_TSTRING)&& LuaTypes.LUA_TNUMBER == LuaAPI.lua_type(L, 4)) 
+                {
+                    int _type = LuaAPI.xlua_tointeger(L, 2);
+                    string _value = LuaAPI.lua_tostring(L, 3);
+                    int _index = LuaAPI.xlua_tointeger(L, 4);
+                    
+                    gen_to_be_invoked.SetQuickSetting( _type, _value, _index );
+                    
+                    
+                    
+                    return 0;
+                }
                 if(gen_param_count == 4&& translator.Assignable<QuickSetting.QuickSettingType>(L, 2)&& (LuaAPI.lua_isnil(L, 3) || LuaAPI.lua_type(L, 3) == LuaTypes.LUA_TSTRING)&& LuaTypes.LUA_TNUMBER == LuaAPI.lua_type(L, 4)) 
                 {
                     QuickSetting.QuickSettingType _type;translator.Get(L, 2, out _type);
@@ -156,7 +169,21 @@
                 QuickSetting gen_to_be_invoked = (QuickSetting)translator.FastGetCSObj(L, 1);
             
             
-                
+			    int gen_param_count = LuaAPI.lua_gettop(L);
+            
+                if(gen_param_count == 3&& LuaTypes.LUA_TNUMBER == LuaAPI.lua_type(L, 2)&& LuaTypes.LUA_TNUMBER == LuaAPI.lua_type(L, 3)) 
+                {
+                    int _type = LuaAPI.xlua_tointeger(L, 2);
+                    int _index = LuaAPI.xlua_tointeger(L, 3);
+                    
+                        string gen_ret = gen_to_be_invoked.GetQuickSetting( _type, _index );
+                        LuaAPI.lua_pushstring(L, gen_ret);
+                    
+                    
+                    
+                    return 1;
+                }
+                if(gen_param_count == 3&& translator.Assignable<QuickSetting.QuickSettingType>(L, 2)&& LuaTypes.LUA_TNUMBER == LuaAPI.lua_type(L, 3)) 
                 {
                     QuickSetting.QuickSettingType _type;translator.Get(L, 2, out _type);
                     int _index = LuaAPI.xlua_tointeger(L, 3);
@@ -172,6 +199,8 @@
             } catch(System.Exception gen_e) {
                 return LuaAPI.luaL_error(L, "c# exception:" + gen_e);
             }
+            
+            return LuaAPI.luaL_error(L, "invalid arguments to QuickSetting.GetQuickSetting!");
             
         }
         
@@ -285,6 +314,40 @@
         
 		
 		
+        [MonoPInvokeCallbackAttribute(typeof(LuaCSFunction))]
+        static int _e_onQuickSettingUpdate(RealStatePtr L)
+        {
+		    try {
+                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);
+			    int gen_param_count = LuaAPI.lua_gettop(L);
+			QuickSetting gen_to_be_invoked = (QuickSetting)translator.FastGetCSObj(L, 1);
+                System.Action gen_delegate = translator.GetDelegate<System.Action>(L, 3);
+                if (gen_delegate == null) {
+                    return LuaAPI.luaL_error(L, "#3 need System.Action!");
+                }
+				
+				if (gen_param_count == 3)
+				{
+					
+					if (LuaAPI.xlua_is_eq_str(L, 2, "+")) {
+						gen_to_be_invoked.onQuickSettingUpdate += gen_delegate;
+						return 0;
+					} 
+					
+					
+					if (LuaAPI.xlua_is_eq_str(L, 2, "-")) {
+						gen_to_be_invoked.onQuickSettingUpdate -= gen_delegate;
+						return 0;
+					} 
+					
+				}
+			} catch(System.Exception gen_e) {
+                return LuaAPI.luaL_error(L, "c# exception:" + gen_e);
+            }
+			LuaAPI.luaL_error(L, "invalid arguments to QuickSetting.onQuickSettingUpdate!");
+            return 0;
+        }
+        
 		
 		
     }

--
Gitblit v1.8.0