示例#1
0
 public static MapBlockHeader Read(BinaryReader reader)
 {
     var header = new MapBlockHeader();
     header.length = reader.ReadInt32(); // usually first 2 bytes have a value
     header.value2 = reader.ReadInt32(); // usually 0
     header.value3 = reader.ReadInt16(); // 0,1,2,3
     header.value4 = reader.ReadInt16(); // 0x1017 (sometimes 0x1018
     return header;
 }
示例#2
0
 private void ReadOutputsSection2(BinaryReader reader)
 {
     outputs2Header = MapBlockHeader.Read(reader);
     outputs2Count  = reader.ReadInt32();
     for (int n = 0; n < outputs2Count; n++)
     {
         reader.ReadBytes(24); // data
     }
 }
示例#3
0
        public static MapBlockHeader Read(BinaryReader reader)
        {
            var header = new MapBlockHeader();

            header.length = reader.ReadInt32(); // usually first 2 bytes have a value
            header.value2 = reader.ReadInt32(); // usually 0
            header.value3 = reader.ReadInt16(); // 0,1,2,3
            header.value4 = reader.ReadInt16(); // 0x1017 (sometimes 0x1018
            return(header);
        }
示例#4
0
 private void ReadOutputsSection3(BinaryReader reader)
 {
     outputs3Header = MapBlockHeader.Read(reader);
     if (outputs3Header.Length > 0)
     {
         outputs3Count = reader.ReadInt32();
         for (int n = 0; n < outputs3Count; n++)
         {
             reader.ReadBytes(36); // data
         }
     }
 }
示例#5
0
        private void ReadMapName(BinaryReader reader)
        {
            mapNameHeader = MapBlockHeader.Read(reader);
            char[] name = reader.ReadChars(34);
            int    nameLength;

            for (nameLength = 0; nameLength < name.Length; nameLength++)
            {
                if (name[nameLength] == 0)
                {
                    break;
                }
            }
            mapName = new string(name, 0, nameLength);
            reader.ReadBytes(98); // unknown
        }
示例#6
0
 private void ReadOutputsSection3(BinaryReader reader)
 {
     outputs3Header = MapBlockHeader.Read(reader);
     if (outputs3Header.Length > 0)
     {
         outputs3Count = reader.ReadInt32();
         for (int n = 0; n < outputs3Count; n++)
         {
             reader.ReadBytes(36); // data
         }
     }
 }
示例#7
0
 private void ReadOutputsSection2(BinaryReader reader)
 {
     outputs2Header = MapBlockHeader.Read(reader);
     outputs2Count = reader.ReadInt32();
     for (int n = 0; n < outputs2Count; n++)
     {
         reader.ReadBytes(24); // data
     }
 }
示例#8
0
 private void ReadMapName(BinaryReader reader)
 {
     mapNameHeader = MapBlockHeader.Read(reader);
     char[] name = reader.ReadChars(34);
     int nameLength;
     for (nameLength = 0; nameLength < name.Length; nameLength++)
     {
         if (name[nameLength] == 0)
             break;
     }
     mapName = new string(name,0,nameLength);
     reader.ReadBytes(98); // unknown
 }
示例#9
0
 private void ReadMapHeader(BinaryReader reader)
 {
     fileHeader1 = MapBlockHeader.Read(reader);
     fileHeader2 = MapBlockHeader.Read(reader);
     mapEntryCount = reader.ReadInt32();
 }
示例#10
0
 private void ReadMapHeader(BinaryReader reader)
 {
     fileHeader1   = MapBlockHeader.Read(reader);
     fileHeader2   = MapBlockHeader.Read(reader);
     mapEntryCount = reader.ReadInt32();
 }