From 2c6f9adf54fc137672fb2f79e62ce68826b3b834 Mon Sep 17 00:00:00 2001 From: Luca Conte Date: Sat, 30 Nov 2024 18:15:07 +0100 Subject: [PATCH] move board size out of player constructor --- src/GameController.java | 10 +++++++--- src/OnlinePlayer.java | 1 - src/Player.java | 5 +++-- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/GameController.java b/src/GameController.java index 381dfbe..ea735ef 100644 --- a/src/GameController.java +++ b/src/GameController.java @@ -17,7 +17,7 @@ public class GameController { "1.1.0", OnlinePlayer_1_1_0.class )); - public void startOnlineGame(Class localPlayerClass, InetSocketAddress address) throws IOException { + public void startOnlineGame(Class localPlayerClass, InetSocketAddress address, int size) throws IOException { AsyncSocket clientSocket; boolean localPlayerIsServer = address.getHostName() == null; @@ -34,7 +34,7 @@ public class GameController { serverSocket.close(); } else { // CLIENT MODE - + Socket socket = new Socket(); try { @@ -71,7 +71,7 @@ public class GameController { OnlinePlayer onlinePlayer; try { localPlayer = localPlayerClass.getDeclaredConstructor().newInstance(); - onlinePlayer = onlinePlayerClass.getDeclaredConstructor().newInstance(); + onlinePlayer = onlinePlayerClass.getDeclaredConstructor().newInstance((Integer)size, clientSocket); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException("Unable to instantiate players"); @@ -161,6 +161,10 @@ public class GameController { e.printStackTrace(); throw new RuntimeException("Unable to instantiate players"); } + + localPlayer.createBoard(size); + aiPlayer.createBoard(size); + startGameWithInstancedPlayers(localPlayer, aiPlayer); } diff --git a/src/OnlinePlayer.java b/src/OnlinePlayer.java index f3aaaf8..ad757df 100644 --- a/src/OnlinePlayer.java +++ b/src/OnlinePlayer.java @@ -2,7 +2,6 @@ public abstract class OnlinePlayer extends Player implements AsyncSocketListener private AsyncSocket socket; public OnlinePlayer(int size, AsyncSocket socket) { - super(size); this.socket = socket; //TODO Auto-generated constructor stub } diff --git a/src/Player.java b/src/Player.java index 192b3f4..6fbd55c 100644 --- a/src/Player.java +++ b/src/Player.java @@ -1,5 +1,4 @@ import java.awt.*; -import java.util.List; public abstract class Player { protected boolean myTurn; @@ -9,7 +8,9 @@ public abstract class Player { protected String name; protected Board board; - public Player(int size) { + public Player() {} + + public void createBoard(int size) { this.board = new Board(size); }