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_PVETile _values = new Tab_PVETile(); _values.m_Id = Convert.ToInt32(valuesList[(int)_ID.ID_ID] as string); _values.m_Level = Convert.ToInt32(valuesList[(int)_ID.ID_LEVEL] as string); _values.m_Name = valuesList[(int)_ID.ID_NAME] as string; _values.m_Resource = valuesList[(int)_ID.ID_RESOURCE] 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_PVETile() { g_PVETile.Clear(); Dictionary <int, List <object> > tmps = new Dictionary <int, List <object> >(); if (!Tab_PVETile.LoadTable(tmps)) { return(false); } foreach (KeyValuePair <int, List <object> > kv in tmps) { List <Tab_PVETile> values = new List <Tab_PVETile>(); foreach (object subit in kv.Value) { values.Add((Tab_PVETile)subit); } g_PVETile.Add(kv.Key, values); } return(true); }