using UnityEngine;

namespace Infrastructure.Unity
{
    public static class ThemeManager
    {
        public struct ThemePalette
        {
            public Color StableColor;
            public Color WarningColor;
            public Color BackgroundColor; // Not used yet but good to have
        }

        public static ThemePalette CurrentTheme { get; set; } = DefaultTheme;

        public static ThemePalette DefaultTheme => new ThemePalette
        {
            StableColor = new Color(0.33725490196078434f, 0.5058823529411764f, 0.9529411764705882f),
            WarningColor = new Color(1f, 0.1803921568627451f, 0.38823529411764707f)
        };

        public static ThemePalette CyberpunkTheme => new ThemePalette
        {
            StableColor = new Color(0.23f, 0.53f, 0.7f),
            WarningColor = new Color(1f, 0f, 1f)
        };

        public static ThemePalette GoldenTheme => new ThemePalette
        {
            StableColor = new Color(0.3f, 0.3f, 0.1f), // Dark Gold
            WarningColor = new Color(1f, 0.8f, 0f)     // Gold
        };

        public static ThemePalette GetTheme(int highScore)
        {
            if (highScore >= 500) return GoldenTheme;
            if (highScore >= 100) return CyberpunkTheme;
            return DefaultTheme;
        }
    }
}
