using System.Collections.Generic; using Dalamud.Interface.Internal; using Dalamud.Plugin.Services; using Penumbra.GameData.Enums; namespace Glamourer.Customization; public class CustomizationManager : ICustomizationManager { private static CustomizationOptions? _options; private CustomizationManager() { } public static ICustomizationManager Create(ITextureProvider textures, IDataManager gameData, IPluginLog log) { _options ??= new CustomizationOptions(textures, gameData, log); return new CustomizationManager(); } public IReadOnlyList Races => CustomizationOptions.Races; public IReadOnlyList Clans => CustomizationOptions.Clans; public IReadOnlyList Genders => CustomizationOptions.Genders; public CustomizationSet GetList(SubRace clan, Gender gender) => _options!.GetList(clan, gender); public IDalamudTextureWrap GetIcon(uint iconId) => _options!.GetIcon(iconId); public string GetName(CustomName name) => _options!.GetName(name); }