[Fix] Rename Scripts Folder

This commit is contained in:
2026-06-07 00:30:10 +07:00
parent 79a928ae52
commit 6c9cdaf67d
140 changed files with 0 additions and 0 deletions
@@ -0,0 +1,76 @@
using UnityEngine;
namespace Minesweeper.Config
{
[CreateAssetMenu(fileName = "MinesweeperUiConfig", menuName = "Minesweeper/UI Config")]
public sealed class MinesweeperUiConfig : ScriptableObject
{
public const float DefaultReferenceCellSize = 100f;
public const float DefaultBoardPaddingRatio = 0.15f;
public const float DefaultGridSpacingRatio = 0.02f;
public const float DefaultMinimumCellSize = 8f;
[field: SerializeField] public Sprite SmileSprite { get; private set; }
[field: SerializeField] public Sprite SurprisedSprite { get; private set; }
[field: SerializeField] public Sprite CoolSprite { get; private set; }
[field: SerializeField] public Sprite DeadSprite { get; private set; }
[field: SerializeField] public GameObject CellButtonPrefab { get; private set; }
[field: SerializeField] public Sprite MineSprite { get; private set; }
[field: SerializeField] public Sprite FlagSprite { get; private set; }
[field: SerializeField] public Color ClosedCellColor { get; private set; } = Color.gray;
[field: SerializeField] public Color OpenedCellColor { get; private set; } = Color.white;
[SerializeField] private Color defaultTextColor = Color.black;
[SerializeField] private Color oneMineTextColor = Color.blue;
[SerializeField] private Color twoMineTextColor = Color.green;
[SerializeField] private Color threeMineTextColor = Color.red;
[SerializeField] private Color fourMineTextColor = new Color(0f, 0f, 0.5f, 1f);
[SerializeField] private Color fiveMineTextColor = new Color(0.5f, 0f, 0f, 1f);
[SerializeField] private Color sixMineTextColor = Color.cyan;
[SerializeField] private Color sevenMineTextColor = Color.black;
[SerializeField] private Color eightMineTextColor = Color.gray;
[field: SerializeField, Min(DefaultMinimumCellSize)] public float ReferenceCellSize { get; private set; } = DefaultReferenceCellSize;
[field: SerializeField, Min(0f)] public float BoardPaddingRatio { get; private set; } = DefaultBoardPaddingRatio;
[field: SerializeField, Min(0f)] public float GridSpacingRatio { get; private set; } = DefaultGridSpacingRatio;
[field: SerializeField, Min(DefaultMinimumCellSize)] public float MinimumCellSize { get; private set; } = DefaultMinimumCellSize;
public Sprite GetSmileSprite(SmileFaceState state)
{
switch (state)
{
case SmileFaceState.Surprised:
return SurprisedSprite != null ? SurprisedSprite : SmileSprite;
case SmileFaceState.Cool:
return CoolSprite != null ? CoolSprite : SmileSprite;
case SmileFaceState.Dead:
return DeadSprite != null ? DeadSprite : SmileSprite;
default:
return SmileSprite;
}
}
public Color GetNumberTextColor(int neighborMines)
{
switch (neighborMines)
{
case 1:
return oneMineTextColor;
case 2:
return twoMineTextColor;
case 3:
return threeMineTextColor;
case 4:
return fourMineTextColor;
case 5:
return fiveMineTextColor;
case 6:
return sixMineTextColor;
case 7:
return sevenMineTextColor;
case 8:
return eightMineTextColor;
default:
return defaultTextColor;
}
}
}
}