Esempio n. 1
0
        private void OnKoiRequested(object sender, RequestKoiEventArgs e)
        {
            var header = new HeaderChunk(this);

            foreach (var block in basicBlocks)
            {
                finalChunks.Add(block.Item2.CreateChunk(this, block.Item1));
            }
            finalChunks.AddRange(extraChunks);
            finalChunks.Add(new BinaryChunk(Watermark.GenerateWatermark((uint)settings.Seed)));
            Descriptor.Random.Shuffle(finalChunks);
            finalChunks.Insert(0, header);

            ComputeOffsets();
            FixupReferences();
            header.WriteData(this);
            e.Heap = CreateHeap();
        }