[Fix] Config & auto-property
This commit is contained in:
@@ -10,15 +10,15 @@ namespace Minesweeper.Config
|
||||
public const float DefaultGridSpacingRatio = 0.02f;
|
||||
public const float DefaultMinimumCellSize = 8f;
|
||||
|
||||
[SerializeField] private Sprite smileSprite;
|
||||
[SerializeField] private Sprite surprisedSprite;
|
||||
[SerializeField] private Sprite coolSprite;
|
||||
[SerializeField] private Sprite deadSprite;
|
||||
[SerializeField] private GameObject cellButtonPrefab;
|
||||
[SerializeField] private Sprite mineSprite;
|
||||
[SerializeField] private Sprite flagSprite;
|
||||
[SerializeField] private Sprite closedCellSprite;
|
||||
[SerializeField] private Sprite openedCellSprite;
|
||||
[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;
|
||||
@@ -28,33 +28,23 @@ namespace Minesweeper.Config
|
||||
[SerializeField] private Color sixMineTextColor = Color.cyan;
|
||||
[SerializeField] private Color sevenMineTextColor = Color.black;
|
||||
[SerializeField] private Color eightMineTextColor = Color.gray;
|
||||
[SerializeField, Min(DefaultMinimumCellSize)] private float referenceCellSize = DefaultReferenceCellSize;
|
||||
[SerializeField, Min(0f)] private float boardPaddingRatio = DefaultBoardPaddingRatio;
|
||||
[SerializeField, Min(0f)] private float gridSpacingRatio = DefaultGridSpacingRatio;
|
||||
[SerializeField, Min(DefaultMinimumCellSize)] private float minimumCellSize = DefaultMinimumCellSize;
|
||||
|
||||
public GameObject CellButtonPrefab => cellButtonPrefab;
|
||||
public Sprite MineSprite => mineSprite;
|
||||
public Sprite FlagSprite => flagSprite;
|
||||
public Sprite ClosedCellSprite => closedCellSprite;
|
||||
public Sprite OpenedCellSprite => openedCellSprite;
|
||||
public float ReferenceCellSize => referenceCellSize;
|
||||
public float BoardPaddingRatio => boardPaddingRatio;
|
||||
public float GridSpacingRatio => gridSpacingRatio;
|
||||
public float MinimumCellSize => minimumCellSize;
|
||||
[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;
|
||||
return SurprisedSprite != null ? SurprisedSprite : SmileSprite;
|
||||
case SmileFaceState.Cool:
|
||||
return coolSprite != null ? coolSprite : smileSprite;
|
||||
return CoolSprite != null ? CoolSprite : SmileSprite;
|
||||
case SmileFaceState.Dead:
|
||||
return deadSprite != null ? deadSprite : smileSprite;
|
||||
return DeadSprite != null ? DeadSprite : SmileSprite;
|
||||
default:
|
||||
return smileSprite;
|
||||
return SmileSprite;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user