static int GetAddnAttr(IntPtr L) { LuaScriptMgr.CheckArgsCount(L, 2); EquipmentBaseDataConfig obj = (EquipmentBaseDataConfig)LuaScriptMgr.GetNetObjectSelf(L, 1, "EquipmentBaseDataConfig"); uint arg0 = (uint)LuaScriptMgr.GetNumber(L, 2); uint o = obj.GetAddnAttr(arg0); LuaScriptMgr.Push(L, o); return(1); }
static int GetBaseConfig(IntPtr L) { LuaScriptMgr.CheckArgsCount(L, 3); EquipmentConfig obj = (EquipmentConfig)LuaScriptMgr.GetNetObjectSelf(L, 1, "EquipmentConfig"); uint arg0 = (uint)LuaScriptMgr.GetNumber(L, 2); uint arg1 = (uint)LuaScriptMgr.GetNumber(L, 3); EquipmentBaseDataConfig o = obj.GetBaseConfig(arg0, arg1); LuaScriptMgr.PushObject(L, o); return(1); }
static int _CreateEquipmentBaseDataConfig(IntPtr L) { int count = LuaDLL.lua_gettop(L); if (count == 0) { EquipmentBaseDataConfig obj = new EquipmentBaseDataConfig(); LuaScriptMgr.PushObject(L, obj); return(1); } else { LuaDLL.luaL_error(L, "invalid arguments to method: EquipmentBaseDataConfig.New"); } return(0); }
static int get_icon(IntPtr L) { object o = LuaScriptMgr.GetLuaObject(L, 1); EquipmentBaseDataConfig obj = (EquipmentBaseDataConfig)o; if (obj == null) { LuaTypes types = LuaDLL.lua_type(L, 1); if (types == LuaTypes.LUA_TTABLE) { LuaDLL.luaL_error(L, "unknown member name icon"); } else { LuaDLL.luaL_error(L, "attempt to index icon on a nil value"); } } LuaScriptMgr.Push(L, obj.icon); return(1); }
static int set_sell_price(IntPtr L) { object o = LuaScriptMgr.GetLuaObject(L, 1); EquipmentBaseDataConfig obj = (EquipmentBaseDataConfig)o; if (obj == null) { LuaTypes types = LuaDLL.lua_type(L, 1); if (types == LuaTypes.LUA_TTABLE) { LuaDLL.luaL_error(L, "unknown member name sell_price"); } else { LuaDLL.luaL_error(L, "attempt to index sell_price on a nil value"); } } obj.sell_price = (uint)LuaScriptMgr.GetNumber(L, 3); return(0); }
static int set_addn_attr(IntPtr L) { object o = LuaScriptMgr.GetLuaObject(L, 1); EquipmentBaseDataConfig obj = (EquipmentBaseDataConfig)o; if (obj == null) { LuaTypes types = LuaDLL.lua_type(L, 1); if (types == LuaTypes.LUA_TTABLE) { LuaDLL.luaL_error(L, "unknown member name addn_attr"); } else { LuaDLL.luaL_error(L, "attempt to index addn_attr on a nil value"); } } obj.addn_attr = (Dictionary <uint, uint>)LuaScriptMgr.GetNetObject(L, 3, typeof(Dictionary <uint, uint>)); return(0); }
public void ReadConfig() { if (isLoadFinish == false) { return; } isLoadFinish = false; lock (LockObject) { GameSystem.Instance.readConfigCnt += 1; } Debug.Log("Config reading " + name); string text = ResourceLoadManager.Instance.GetConfigText(name); if (text == null) { Debug.LogError("LoadConfig failed: " + name); return; } Data.Clear(); //读取以及处理XML文本的类 XmlDocument xmlDoc = CommonFunction.LoadXmlConfig(GlobalConst.DIR_XML_EQUIPMENT, text); //解析xml的过程 XmlNodeList nodelist = xmlDoc.SelectSingleNode("Data").ChildNodes; foreach (XmlElement xe in nodelist) { XmlNode comment = xe.SelectSingleNode(GlobalConst.CONFIG_SWITCH_COLUMN); if (comment != null && comment.InnerText == GlobalConst.CONFIG_SWITCH) { continue; } EquipmentLvDataConfig lvData = new EquipmentLvDataConfig(); EquipmentBaseDataConfig data = new EquipmentBaseDataConfig(); uint level = 0; foreach (XmlElement xel in xe) { if (xel.Name == "id") { lvData.id = uint.Parse(xel.InnerText); } else if (xel.Name == "level") { level = uint.Parse(xel.InnerText); } else if (xel.Name == "name") { data.name = xel.InnerText; } else if (xel.Name == "icon") { data.icon = xel.InnerText; } else if (xel.Name == "addn_attr") { Dictionary <uint, uint> addn_attr = new Dictionary <uint, uint>(); string[] entirety = xel.InnerText.Split('&'); for (int i = 0; i < entirety.Length; ++i) { string[] detail = entirety[i].Split(':'); if (detail.Length < 2) { continue; } addn_attr[uint.Parse(detail[0])] = uint.Parse(detail[1]); } data.addn_attr = addn_attr; } else if (xel.Name == "require_level") { data.require_level = uint.Parse(xel.InnerText); } else if (xel.Name == "sacrifice_consume") { data.sacrifice_consume = uint.Parse(xel.InnerText); } else if (xel.Name == "sell_price") { data.sell_price = uint.Parse(xel.InnerText); } } lvData.lvData[level] = data; if (Data.ContainsKey(lvData.id)) { if (!Data[lvData.id].lvData.ContainsKey(level)) { Data[lvData.id].lvData[level] = data; } } else { Data[lvData.id] = lvData; } } }