コード例 #1
0
    public virtual IPaletteService CreatePaletteService(string palettesPath, AppSettings settings)
    {
        var _colorFactory   = new ColorFactory();
        var _paletteService = new PaletteService(_colorFactory);

        foreach (var paletteName in settings.GlobalPalettes)
        {
            var paletteFileName = Path.Combine(palettesPath, $"{paletteName}.json");
            var palette         = _paletteService.ReadJsonPalette(paletteFileName);
            _paletteService.GlobalPalettes.Add(palette);
        }
        _paletteService.SetDefaultPalette(_paletteService.GlobalPalettes.First());

        var nesPaletteFileName = Path.Combine(palettesPath, $"{settings.NesPalette}.json");
        var nesPalette         = _paletteService.ReadJsonPalette(nesPaletteFileName);

        _colorFactory.SetNesPalette(nesPalette);
        _paletteService.SetNesPalette(nesPalette);

        return(_paletteService);
    }