A struct containing information about the referenced MCNK
        /// <inheritdoc/>
        public void LoadBinaryData(byte[] inData)
        {
            using var ms = new MemoryStream(inData);
            using var br = new BinaryReader(ms);

            // read size, n of entries is size / 16
            var entryCount = br.BaseStream.Length / 16;

            for (var i = 0; i < entryCount; ++i)
            {
                var entry = new MapChunkOffsetEntry
                {
                    MapChunkOffset        = br.ReadInt32(),
                    MapChunkSize          = br.ReadInt32(),
                    Flags                 = br.ReadInt32(),
                    AsynchronousLoadingID = br.ReadInt32()
                };

                Entries.Add(entry);
            }
        }
示例#2
0
        public void LoadBinaryData(byte[] inData)
        {
            using (MemoryStream ms = new MemoryStream(inData))
            {
                using (BinaryReader br = new BinaryReader(ms))
                {
                    //read size, n of entries is size / 16
                    long nEntries = br.BaseStream.Length / 16;

                    for (int i = 0; i < nEntries; ++i)
                    {
                        MapChunkOffsetEntry entry = new MapChunkOffsetEntry();

                        entry.MapChunkOffset        = br.ReadInt32();
                        entry.MapChunkSize          = br.ReadInt32();
                        entry.Flags                 = br.ReadInt32();
                        entry.AsynchronousLoadingID = br.ReadInt32();

                        this.Entries.Add(entry);
                    }
                }
            }
        }
        public void LoadBinaryData(byte[] inData)
        {
            using (MemoryStream ms = new MemoryStream(inData))
            {
                using (BinaryReader br = new BinaryReader(ms))
                {
                    //read size, n of entries is size / 16
                    long nEntries = br.BaseStream.Length / 16;

                    for (int i = 0; i < nEntries; ++i)
                    {
                        MapChunkOffsetEntry entry = new MapChunkOffsetEntry();

                        entry.MapChunkOffset = br.ReadInt32();
                        entry.MapChunkSize = br.ReadInt32();
                        entry.Flags = br.ReadInt32();
                        entry.AsynchronousLoadingID = br.ReadInt32();

                        this.Entries.Add(entry);
                    }
                }
            }
        }