public GameLogic(Board board, PlayerCollector playerCollector, FlashingPlayerCoins flashingPlayerCoins) { PlayerCollector = playerCollector; AllPlayer = PlayerCollector.AllPlayer; Board = board; FlashingPlayerCoins = flashingPlayerCoins; }
public static void Play() { int width = GetBoardSizeInts.GetBoardWidth(); int height = GetBoardSizeInts.GetBoardHeight(); Board b = new Board(height, width); BoardPrinter bp = new BoardPrinter(b); FlashingPlayerCoins fpc = new FlashingPlayerCoins(bp); PlayerCollector pc = new PlayerCollector(bp); GameLogic gl = new GameLogic(b, pc, fpc); pc.Collect(); bp.Print(); gl.DoTurnsUntilWinn(); }
private bool HasPlayer4InDiagonal1(Player player) { for (int y = 0; y < Board.Width - 3; y++) { for (int x = 0; x < Board.Height - 3; x++) { if (Board._board[x][y] == player && Board._board[x + 1][y + 1] == player && Board._board[x + 2][y + 2] == player && Board._board[x + 3][x + 3] == player) { FlashingPlayerCoins.FlashDiagonal1(player, x, y); return(true); } } } return(false); }
private bool HasPlayer4InRow(Player player) { for (int y = 0; y < Board.Width - 3; y++) { for (int x = 0; x < Board.Height; x++) { if (Board._board[y][x] == player && Board._board[y + 1][x] == player && Board._board[y + 2][x] == player && Board._board[y + 3][x] == player) { FlashingPlayerCoins.FlashRow(player, x, y); return(true); } } } return(false); }
private bool HasPlayer4InColumn(Player player) { for (int y = 0; y < Board.Width; y++) { for (int x = 0; x < Board.Height - 3; x++) { if (Board._board[y][x] == player && Board._board[y][x + 1] == player && Board._board[y][x + 2] == player && Board._board[y][x + 3] == player) { Player coin1 = Board._board[y][x]; Player coin2 = Board._board[y][x + 1]; Player coin3 = Board._board[y][x + 2]; Player coin4 = Board._board[y][x + 3]; int[,] intCoin1 = new int[, ] { { y, x } }; int[,] intCoin2 = new int[, ] { { y, x + 1 } }; int[,] intCoin3 = new int[, ] { { y, x + 2 } }; int[,] intCoin4 = new int[, ] { { y, x + 3 } }; FlashingPlayerCoins.FlashColumn(player, intCoin1, intCoin2, intCoin3, intCoin4); return(true); } } } return(false); }