diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/NotificationSynchronizer.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/NotificationSynchronizer.java index c552e66d..00871dfe 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/NotificationSynchronizer.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/NotificationSynchronizer.java @@ -60,6 +60,8 @@ private void handleLobby(Notification notification) { if (notification instanceof TskSelectNotification n) { lobbyView.setTaken(n.getColor(), true, n.isSelf(), n.getName()); lobbyView.setTaken(n.getColor(), true, false, n.getName()); + } else if (notification instanceof StartDialogNotification) { + app.enter(MdgaState.MAIN); } else if (notification instanceof TskUnselectNotification n) { lobbyView.setTaken(n.getColor(), false, false, null); } else if(notification instanceof LobbyReadyNotification lobbyReadyNotification) { diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/LobbyState.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/LobbyState.java index 9064fee0..d310436e 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/LobbyState.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/LobbyState.java @@ -12,6 +12,7 @@ import pp.mdga.message.server.UpdateReadyMessage; import pp.mdga.message.server.UpdateTSKMessage; import pp.mdga.notification.LobbyReadyNotification; +import pp.mdga.notification.StartDialogNotification; import pp.mdga.notification.TskSelectNotification; import pp.mdga.notification.TskUnselectNotification; @@ -36,6 +37,7 @@ public void exit() { @Override public void selectLeave() { parent.setState(parent.getStartDialog()); + logic.addNotification(new StartDialogNotification()); logic.send(new LeaveGameMessage()); } @@ -72,6 +74,7 @@ public void selectStart(){ @Override public void received(ServerStartGameMessage msg){ + parent.startGame(); }