public static void SerializableTable(string[] valuesList, int skey, Dictionary <int, List <object> > _hash) { if ((int)_ID.MAX_RECORD != valuesList.Length) { throw TableException.ErrorReader("Load {0} error as CodeSize:{1} not Equal DataSize:{2}", GetInstanceFile(), _ID.MAX_RECORD, valuesList.Length); } Tab_BuildBarracks _values = new Tab_BuildBarracks(); _values.m_Id = Convert.ToInt32(valuesList[(int)_ID.ID_ID] as string); _values.m_IsUpgrade = Convert.ToInt32(valuesList[(int)_ID.ID_ISUPGRADE] as string); _values.m_MaxLevel = Convert.ToInt32(valuesList[(int)_ID.ID_MAXLEVEL] as string); _values.m_Name = valuesList[(int)_ID.ID_NAME] as string; _values.m_UnlockLevel = Convert.ToInt32(valuesList[(int)_ID.ID_UNLOCKLEVEL] as string); if (_hash.ContainsKey(skey)) { List <object> tList = _hash[skey]; tList.Add(_values); } else { List <object> tList = new List <object>(); tList.Add(_values); _hash.Add(skey, (List <object>)tList); } }
public static bool InitTable_BuildBarracks() { g_BuildBarracks.Clear(); Dictionary <int, List <object> > tmps = new Dictionary <int, List <object> >(); if (!Tab_BuildBarracks.LoadTable(tmps)) { return(false); } foreach (KeyValuePair <int, List <object> > kv in tmps) { List <Tab_BuildBarracks> values = new List <Tab_BuildBarracks>(); foreach (object subit in kv.Value) { values.Add((Tab_BuildBarracks)subit); } g_BuildBarracks.Add(kv.Key, values); } return(true); }