public void MoveFocusFigure_FocusAndMoveFigure_FigureMoved() { Reset(); Assert.IsTrue(GameMaster.SetAndActivateFocusFigure(_figure), $"can't focus cell:{_figure}"); Assert.IsTrue(GameMaster.MoveFocusFigure(_moveToCell), $"attempt place not available cell:{_moveToCell}"); Assert.IsTrue(_moveToCell.Figure == _figure, $"not equal moveble figure:{_moveToCell.Figure}, figure:{_figure}"); }
private void OnClickCellView(object sender, IBoardCell cell) { if (cell.Status == BoardCellStatus.AvailableForMove) { GameMaster.MoveFocusFigure(cell); } else if (!GameMaster.IsBlockFocused && cell.IsBusy) { GameMaster.SetAndActivateFocusFigure(cell.Figure); } }
private void RandomMoveFocusCell() { var cells = new List <IBoardCell>(); foreach (var cell in BoardModel.Cells) { if (cell.Status == BoardCellStatus.AvailableForMove) { cells.Add(cell); } } if (!cells.IsEmpty()) { GameMaster.MoveFocusFigure(cells.GetRandom()); return; } Debug.LogWarning("Can't find available cells"); GameSwitcherTurn.SwitchTurn(true, true); }