Finished implementing room codes.

- Fixed bug where room code wasn't parsed correctly
- Added room code selection to server list screen.
- Added room code to hosts lobby.
- Implemented communication protocols on the game client.

Tags: #story[1281]
This commit is contained in:
Michael Rausch
2017-09-21 22:48:33 +12:00
parent e17e9749d8
commit 95ad7a4840
10 changed files with 167 additions and 53 deletions
@@ -22,6 +22,7 @@ import seng302.model.RaceState;
import seng302.model.mark.CompoundMark;
import seng302.model.mark.Corner;
import seng302.model.stream.xml.parser.RaceXMLData;
import seng302.serverRepository.ServerRepositoryClient;
import seng302.utilities.Sounds;
import seng302.visualiser.GameView;
import seng302.visualiser.controllers.cells.PlayerCell;
@@ -29,10 +30,7 @@ import seng302.visualiser.controllers.dialogs.BoatCustomizeController;
import java.io.IOException;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.ResourceBundle;
import java.util.*;
public class LobbyController implements Initializable {
@@ -85,6 +83,10 @@ public class LobbyController implements Initializable {
serverName.setText(ViewManager.getInstance().getProperty("serverName"));
mapName.setText(ViewManager.getInstance().getProperty("mapName"));
if (ServerRepositoryClient.getRoomCode() != null){
setRoomCode(ServerRepositoryClient.getRoomCode());
}
ViewManager.getInstance().getPlayerList().addListener((ListChangeListener<String>) c -> Platform.runLater(this::refreshPlayerList));
ViewManager.getInstance().getPlayerList().setAll(ViewManager.getInstance().getPlayerList().sorted());
@@ -242,4 +244,8 @@ public class LobbyController implements Initializable {
public void closeCustomizationDialog() {
customizationDialog.close();
}
public void setRoomCode(String roomCode) {
serverName.setText(serverName.getText() + " ( " + roomCode +" )");
}
}