From ae53b68bc3f0abdb88e9ecefadc4bdcbee332215 Mon Sep 17 00:00:00 2001
From: JimmyTheCat <154287729+JimmyTheCatOwO@users.noreply.github.com>
Date: Thu, 9 Jan 2025 15:38:53 +0100
Subject: [PATCH] player flip by reset, board class mechanic and board
 constructor cleanup

---
 Board.java | 21 +++++++++++++++------
 1 file changed, 15 insertions(+), 6 deletions(-)

diff --git a/Board.java b/Board.java
index 3abdda8..8060fe8 100644
--- a/Board.java
+++ b/Board.java
@@ -13,6 +13,11 @@ public class Board extends Thread {
      */
     Player players[] = new Player[2];
 
+    /**This Integer defines which character gets to draw first.
+     * 
+     */
+    int firstPlayer;
+
     /**This Integer defines which character can currently draw on a tile.
      * 
      */
@@ -27,16 +32,20 @@ public class Board extends Thread {
      * Creates the Tiles and Players and sets the player who starts the game.
      */
     Board() {
-        for(int i = 0; i < tiles.length; i++) tiles[i] = new Tile(0,0,0);
         for(int i = 0; i < players.length; i++) players[i] = new Player(i+1);
-        currentPlayer = 0;
-        marks = 0;
+        firstPlayer = 0;
+        initBoard();
     }
 
-    Board(Player[] players) {
-        for(int i = 0; i < tiles.length; i++) tiles[i] = new Tile(0,0,0);
+    Board(Player[] players, int firstPlayer) {
         this.players = players;
-        currentPlayer = 0;
+        this.firstPlayer = firstPlayer == 1 ? 0 : 1;
+        initBoard();
+    }
+
+    private void initBoard() {
+        for(int i = 0; i < tiles.length; i++) tiles[i] = new Tile(0,0,0);
+        currentPlayer = firstPlayer;
         marks = 0;
     }
 
-- 
GitLab