[Fix] Refactor project

This commit is contained in:
2026-03-02 12:49:12 +07:00
parent f65976796d
commit f52131f755
44 changed files with 449 additions and 404 deletions
+18 -13
View File
@@ -19,7 +19,7 @@ namespace YachtDice.Game
private void Awake()
{
int count = diceRollers.Count;
var count = diceRollers.Count;
_diceInstances = new DiceInstance[count];
for (int i = 0; i < count; i++)
@@ -43,14 +43,14 @@ namespace YachtDice.Game
public void UnlockAll()
{
for (int i = 0; i < _diceInstances.Length; i++)
_diceInstances[i].IsLocked = false;
foreach (var t in _diceInstances)
t.IsLocked = false;
}
public void RollUnlocked()
{
for (int i = 0; i < diceRollers.Count; i++)
if (diceRollers[i].IsRolling) return;
foreach (var t in diceRollers)
if (t.IsRolling) return;
_pendingCount = 0;
@@ -59,7 +59,7 @@ namespace YachtDice.Game
if (_diceInstances[i].IsLocked) continue;
_pendingCount++;
int capturedIndex = i;
var capturedIndex = i;
void Handler(int value)
{
@@ -80,14 +80,18 @@ namespace YachtDice.Game
OnAllDiceSettled?.Invoke();
}
/// <summary>Возвращает абстрактный список дайсов (основной API).</summary>
/// <summary>
/// Возвращает абстрактный список дайсов (основной API).
/// </summary>
public IReadOnlyList<IDice> GetDice() => _diceInstances;
/// <summary>Возвращает копию текущих значений (обратная совместимость).</summary>
/// <summary>
/// Возвращает копию текущих значений (обратная совместимость).
/// </summary>
public int[] GetCurrentValues()
{
int[] values = new int[_diceInstances.Length];
for (int i = 0; i < _diceInstances.Length; i++)
var values = new int[_diceInstances.Length];
for (var i = 0; i < _diceInstances.Length; i++)
values[i] = _diceInstances[i].Value;
return values;
}
@@ -98,15 +102,16 @@ namespace YachtDice.Game
{
get
{
for (int i = 0; i < diceRollers.Count; i++)
if (diceRollers[i].IsRolling) return true;
foreach (var t in diceRollers)
if (t.IsRolling) return true;
return false;
}
}
public void ReadAllValues()
{
for (int i = 0; i < diceRollers.Count; i++)
for (var i = 0; i < diceRollers.Count; i++)
{
var diceComponent = diceRollers[i].GetComponent<Dice.Dice>();
if (diceComponent != null && diceComponent.TryGetTopValue(out int val))