From a881d3b2123c0fd6e4b86a548be519f8fa318e8b Mon Sep 17 00:00:00 2001 From: SandyPham823 Date: Tue, 29 Oct 2019 22:49:14 -0400 Subject: [PATCH] Three in a row, lab done :D --- .../zipcodewilmington/tictactoe/Board.java | 55 +++++++++++++++++-- 1 file changed, 51 insertions(+), 4 deletions(-) diff --git a/src/main/java/rocks/zipcodewilmington/tictactoe/Board.java b/src/main/java/rocks/zipcodewilmington/tictactoe/Board.java index f56452f..55ac700 100644 --- a/src/main/java/rocks/zipcodewilmington/tictactoe/Board.java +++ b/src/main/java/rocks/zipcodewilmington/tictactoe/Board.java @@ -4,23 +4,70 @@ * @author leon on 6/22/18. */ public class Board { + private Character[][] board; + public Board(Character[][] matrix) { + this.board = matrix; } public Boolean isInFavorOfX() { - return null; + if (horizontalCheck('X') || diagonalCheck('X') || verticalCheck('X')){ + return true; } + return false; +} public Boolean isInFavorOfO() { - return null; + if (horizontalCheck('O') || diagonalCheck('O') || verticalCheck('O')){ + return true; + } + return false; } public Boolean isTie() { - return null; + if (!isInFavorOfX() && !isInFavorOfO()) { + return true; + } else { + return false; + } } public String getWinner() { - return null; + if (isInFavorOfX()) { + return "X"; + } + if (isInFavorOfO()) { + return "O"; + } else { + return ""; + } } + public Boolean verticalCheck(Character x0){ + for (int i = 0; i <= 2; i++) { + if ((board[0][i] == x0) && (board[1][i] == x0) && (board[2][i] == x0)){ + return true; + } + } + return false; } + + public Boolean horizontalCheck(Character x0) { + for (int i = 0; i <= 2; i++) { + if ((board[i][0] == x0) && (board[i][1] == x0) && (board[i][2] == x0)) { + return true; + } + } + return false; + } + + public Boolean diagonalCheck(Character x0) { + if ((board[0][0] == x0 && board[1][1] == x0 && board[2][2] == x0) || (board[2][0] == x0 && board[1][1] == x0 && board[0][2] == x0)) { + return true; + + } + return false; + } +} + +