private void LoadColoursFromEditableFiles(string directory) { int i = 0; foreach (string colourDirectory in Directory.EnumerateDirectories(directory, "Colour??")) { var colour = new CarColour(); colour.LoadFromEditableFiles(colourDirectory); colours[i++] = colour; } }
public void LoadFromGameFile(Stream file, GameFileLayout layout) { file.Position = layout.ColourCountIndex; ushort colourCount = file.ReadUShort(); for (ushort i = 0; i < colourCount; i++) { var colour = new CarColour(); colour.LoadFromGameFile(file, layout, i); colours[i] = colour; } file.Position = layout.BitmapStartIndex + layout.BitmapEmptyFillSize; for (ushort y = 0; y < BitmapHeight; y++) { for (ushort x = 0; x < BitmapWidth; x += 2) { byte pixelPair = (byte)file.ReadByte(); bitmapData[x, y] = (byte)(pixelPair & 0xF); bitmapData[x + 1, y] = (byte)(pixelPair >> 4); } } }