From 216c9004e706effb1c7d97fcb614f0c6b7027194 Mon Sep 17 00:00:00 2001 From: Seraina Date: Mon, 16 May 2022 21:41:16 +0200 Subject: [PATCH] Removed more referencec to ListView and added some threads in the hope of making the gameplay smoother --- .../dbis/cs108/multiplayer/client/Client.java | 39 ------------------- .../gui/lounge/ListOfLobbiesController.java | 13 +++++-- .../gui/lounge/LobbyDisplayHandler.java | 5 +++ 3 files changed, 14 insertions(+), 43 deletions(-) diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/Client.java b/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/Client.java index 6fb264d..d157536 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/Client.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/Client.java @@ -378,9 +378,6 @@ public class Client { chatApp.getGameController().clearAllNoiseDisplay(); dayNightChangeListener.setNoiseButtonInvisible(true); break; - case GuiParameters.getMembersInLobby: - updateLobbyMembers(data); - break; case GuiParameters.viewChangeToGame: chatApp.getLoungeSceneViewController().addGameView(); gameStateModel.setGameOver(false); @@ -418,42 +415,6 @@ public class Client { } - private void removeLobbyFromGui(String data) { - loungeSceneViewController.removeLobbyFromView(data); - LOGGER.debug("Made it into removeLobbyFromGui()"); - } - - private void makeNewLobby(String data) { - String[] params = data.split(":"); - loungeSceneViewController.newLobby(params[0], params[1]); - LOGGER.debug("makeNewLobby() seems to have finished"); - - } - - private void addPlayerToLobby(String data) { - String[] params = data.split(":"); - loungeSceneViewController.addPlayerToLobby(params[0], params[1]); - LOGGER.debug("addPlayerToLobby() seems to have finished"); - } - - private void updateLobbyMembers(String data) { - String[] dataArr = data.split(":"); - String lobbyID = dataArr[0]; - String adminName = dataArr[1]; - } - - private void updateListOfLobbies(String data) { - String[] arr = data.split(":"); - ObservableList list = new SimpleListProperty<>(); - int n = arr.length; - for (int i = 0; i < n; i = i + 2) { - list.add(new SimpleStringProperty(arr[i])); - //ChatController.getClient().addLobbyToList(new SimpleStringProperty(arr[i])); - } - //TODO - } - - /** * Starts a new thread, thad adds a message to notificationText in the gameController, waits 3 * seconds and deletes it again. diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/ListOfLobbiesController.java b/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/ListOfLobbiesController.java index b03d272..3594f1e 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/ListOfLobbiesController.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/ListOfLobbiesController.java @@ -51,10 +51,15 @@ public class ListOfLobbiesController implements Initializable { public void updateList() { - clearVBox(); - for (LobbyModel lobby : LobbyDisplayHandler.getLobbies()) { - newTreeView(lobby.getId(), lobby.getAdmin(), chatApp.getcModel().getUsername(), lobby.getMembers()); - } + new Thread(new Runnable() { + @Override + public void run() { + clearVBox(); + for (LobbyModel lobby : LobbyDisplayHandler.getLobbies()) { + newTreeView(lobby.getId(), lobby.getAdmin(), chatApp.getcModel().getUsername(), lobby.getMembers()); + } + } + }).start(); } /** diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/LobbyDisplayHandler.java b/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/LobbyDisplayHandler.java index f09e2e3..8a8c674 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/LobbyDisplayHandler.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/LobbyDisplayHandler.java @@ -31,6 +31,9 @@ public class LobbyDisplayHandler { } public void updateLobbies(String data) { + new Thread(new Runnable() { + @Override + public void run() { try { for (LobbyModel model : lobbies) { model.setHasBeenVisited(false); @@ -56,6 +59,8 @@ public class LobbyDisplayHandler { e.printStackTrace(); LOGGER.info("empty list"); } + } + }).start(); } private void addLobbyFromString(int id, String admin, boolean isOpen, String[] oneLobby) {