Files
FreewayGamesTest/Assets/Runtime/Config/MinesweeperGameConfig.cs
T
2026-06-06 22:41:45 +07:00

16 lines
684 B
C#

using UnityEngine;
namespace Minesweeper.Config
{
[CreateAssetMenu(fileName = "MinesweeperGameConfig", menuName = "Minesweeper/Game Config")]
public sealed class MinesweeperGameConfig : ScriptableObject
{
[field: SerializeField, Min(1)] public int Width { get; private set; } = 9;
[field: SerializeField, Min(1)] public int Height { get; private set; } = 9;
[field: SerializeField, Min(1)] public int MinesCount { get; private set; } = 10;
[field: SerializeField] public KeyCode RestartKey { get; private set; } = KeyCode.R;
public bool IsValid => Width > 0 && Height > 0 && MinesCount > 0 && MinesCount < Width * Height;
}
}