Inheritance: NamedMapObject
示例#1
0
        /// <summary>Reads the infantry. </summary>
        private void ReadInfantry()
        {
            IniSection infantrySection = GetSection("Infantry");

            if (infantrySection == null)
            {
                Logger.Info("Infantry section unavailable in {0}", Path.GetFileName(FileName));
                return;
            }

            foreach (var v in infantrySection.OrderedEntries)
            {
                try {
                    string[] entries = ((string)v.Value).Split(',');
                    if (entries.Length <= 8)
                    {
                        continue;
                    }
                    string owner     = entries[0];
                    string name      = entries[1];
                    short  health    = short.Parse(entries[2]);
                    int    rx        = int.Parse(entries[3]);
                    int    ry        = int.Parse(entries[4]);
                    short  direction = short.Parse(entries[7]);
                    bool   onBridge  = entries[11] == "1";
                    var    i         = new Infantry(owner, name, health, direction, onBridge);
                    i.Tile = Tiles.GetTileR(rx, ry);
                    if (i.Tile != null)
                    {
                        Infantries.Add(i);
                    }
                }
                catch (IndexOutOfRangeException) {
                }
                catch (FormatException) {
                }
            }
            Logger.Trace("Read {0} infantry objects", Infantries.Count);
        }
示例#2
0
        /// <summary>Reads the infantry. </summary>
        private void ReadInfantry()
        {
            IniSection infantrySection = GetSection("Infantry");
            if (infantrySection == null) {
                Logger.Info("Infantry section unavailable in {0}", Path.GetFileName(FileName));
                return;
            }

            foreach (var v in infantrySection.OrderedEntries) {
                try {

                    string[] entries = ((string)v.Value).Split(',');
                    if (entries.Length <= 8) continue;
                    string owner = entries[0];
                    string name = entries[1];
                    short health = short.Parse(entries[2]);
                    int rx = int.Parse(entries[3]);
                    int ry = int.Parse(entries[4]);
                    short direction = short.Parse(entries[7]);
                    bool onBridge = entries[11] == "1";
                    var i = new Infantry(owner, name, health, direction, onBridge);
                    i.Tile = Tiles.GetTileR(rx, ry);
                    if (i.Tile != null)
                        Infantries.Add(i);
                }
                catch (IndexOutOfRangeException) {
                }
                catch (FormatException) {
                }
            }
            Logger.Trace("Read {0} infantry objects", Infantries.Count);
        }