From 4bdae46c6f82de8fb0354ad4878a67f0335b2b08 Mon Sep 17 00:00:00 2001 From: Mostafa Date: Fri, 10 Apr 2026 14:42:56 +0200 Subject: [PATCH] added that you can change num rounds in lobby screen that host can change --- .../group07/beatbattle/controller/LobbyController.java | 3 ++- core/src/main/java/group07/beatbattle/view/LobbyView.java | 7 +++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/group07/beatbattle/controller/LobbyController.java b/core/src/main/java/group07/beatbattle/controller/LobbyController.java index 7bf59b6..46e8032 100644 --- a/core/src/main/java/group07/beatbattle/controller/LobbyController.java +++ b/core/src/main/java/group07/beatbattle/controller/LobbyController.java @@ -205,7 +205,8 @@ public void onFailure(Exception exception) { } /** Called by the host when they press Start Game. */ - public void onStartGame(String sessionId, List players) { + public void onStartGame(String sessionId, List players, int rounds) { + numRounds = rounds; int tracksNeeded = numRounds * OPTIONS_PER_Q; game.getMusicService().fetchTracks(tracksNeeded, new MusicServiceCallback() { @Override diff --git a/core/src/main/java/group07/beatbattle/view/LobbyView.java b/core/src/main/java/group07/beatbattle/view/LobbyView.java index eee94d1..d00b23b 100644 --- a/core/src/main/java/group07/beatbattle/view/LobbyView.java +++ b/core/src/main/java/group07/beatbattle/view/LobbyView.java @@ -27,6 +27,7 @@ import group07.beatbattle.model.Player; import group07.beatbattle.model.services.LobbyService; import group07.beatbattle.ui.components.BackButton; +import group07.beatbattle.ui.components.RoundSelector; import group07.beatbattle.ui.components.SettingsButton; import group07.beatbattle.ui.components.StartGameButton; import group07.beatbattle.ui.dialog.AlertDialogs; @@ -339,16 +340,18 @@ private Table createFooter() { Table footer = new Table(); if (mode == GameMode.CREATE) { - StartGameButton startButton = new StartGameButton(game.getMontserratFont()); + RoundSelector roundSelector = new RoundSelector(game.getMontserratFont()); + StartGameButton startButton = new StartGameButton(game.getMontserratFont()); startButton.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { - controller.onStartGame(sessionId, currentPlayers); + controller.onStartGame(sessionId, currentPlayers, roundSelector.getSelectedRounds()); } }); float btnWidth = Math.min(800f, Gdx.graphics.getWidth() - 80f); + footer.add(roundSelector.getActor()).width(btnWidth).padBottom(20f).row(); footer.add(startButton).width(btnWidth).height(150); }