16 lines
684 B
C#
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;
|
|
}
|
|
}
|