private void ChooseAndDoMove() { Move move = MoveTreeBuilder.ChooseNextCPUMove(); var fromTileClickDetector = tileGetter.GetTile(move.From).GetComponent <TileClickDetector>(); var toTileClickDetector = tileGetter.GetTile(move.To).GetComponent <TileClickDetector>(); fromTileClickDetector.ClickTile(); toTileClickDetector.ClickTile(); }
private bool HasCapturingMoveOnDiagonal(TileIndex checkingDirectionInIndex) { for (var tileIndexToCheck = GetFirstTileIndexToCheck(checkingDirectionInIndex); IsIndexValid(tileIndexToCheck); tileIndexToCheck += checkingDirectionInIndex) { var tileToCheck = tileGetter.GetTile(tileIndexToCheck); if (pawnMoveValidator.IsCapturingMove(pawnToCheck, tileToCheck)) { return(true); } } return(false); }
private void GeneratePawn(int columnIndex, int rowIndex, PawnColor pawnColor) { Transform tileTransform = tileGetter.GetTile(columnIndex, rowIndex).transform; GameObject instantiatedPawn = Instantiate(Pawn, tileTransform.position, Pawn.transform.rotation, tileTransform); instantiatedPawn.GetComponent <IPawnProperties>().PawnColor = pawnColor; }
private bool IsTileOccupied(TileIndex tileIndex) { return(tileGetter.GetTile(tileIndex).GetComponent <TileProperties>().IsOccupied()); }
private GameObject GetPawnFromTreeNode(TreeNode <Move> treeNode) { return(tileGetter.GetTile(treeNode.Value.To).GetComponent <TileProperties>().GetPawn()); }
private GameObject GetLastMovePawn() { GameObject pawnTile = tileGetter.GetTile(lastMove.From); return(GetPawnFromTile(pawnTile)); }