Adjusted tthe logic of the server and client

when the client sends a wrong map the server will send the client back to the editro state
This commit is contained in:
Hanno Fleischer hanno.fleischer@unibw.de
2024-10-05 12:35:49 +02:00
parent 0f629252bc
commit dca0875ad5
5 changed files with 20 additions and 1 deletions

View File

@@ -57,6 +57,8 @@ public Menu(BattleshipApp app) {
addChild(musicToggle);
addChild(new Label(lookup("menu.volume")));
Slider volumeSlider = new Slider();
volumeSlider.setModel(new DefaultRangedValueModel(0.0 , 2.0, app.getBackgroundMusic().getVolume()));
volumeSlider.setDelta(0.1);

View File

@@ -7,6 +7,7 @@
package pp.battleship.game.client;
import pp.battleship.message.server.GameDetails;
import pp.battleship.message.server.StartBattleMessage;
import java.lang.System.Logger.Level;
@@ -38,4 +39,16 @@ public void receivedStartBattle(StartBattleMessage msg) {
logic.setInfoText(msg.getInfoTextKey());
logic.setState(new BattleState(logic, msg.isMyTurn()));
}
/**
* This method will revert the client from wait state to editor state
* in case a wrong map was submitted
*
* @param details the game details including map size and ships
*/
@Override
public void receivedGameDetails(GameDetails details){
logic.setInfoText("invalid.map");
logic.setState(new EditorState(logic));
}
}

View File

@@ -146,8 +146,10 @@ public Player addPlayer(int id) {
public void received(MapMessage msg, int from) {
if (state != ServerState.SET_UP)
LOGGER.log(Level.ERROR, "playerReady not allowed in {0}", state); //NON-NLS
else if (!checkMap(msg, from))
else if (!checkMap(msg, from)) {
LOGGER.log(Level.ERROR, "player submitted not allowed Map");
send(getPlayerById(from), new GameDetails(config));
}
else
playerReady(getPlayerById(from), msg.getShips());
}

View File

@@ -33,6 +33,7 @@ menu.sound-enabled=Sound switched on
menu.map.load=Load map from file...
menu.map.save=Save map in file...
menu.music.toggle=Toggle the music
invalid.map=Your submitted map was invalid
menu.volume=Volume
label.file=File:
label.connecting=Connecting...

View File

@@ -33,6 +33,7 @@ menu.sound-enabled=Sound eingeschaltet
menu.map.load=Karte von Datei laden...
menu.map.save=Karte in Datei speichern...
menu.music.toggle=An/Ausschalten der Musik
invalid.map=Die angegebene Karte war ung<6E>ltig
menu.volume=Lautst<EFBFBD>rke
label.file=Datei:
label.connecting=Verbindung wird aufgebaut...