Beispiel #1
0
      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);
        }