added sync at start of round and trick
This commit is contained in:
@@ -3,8 +3,10 @@ package eu.jonahbauer.wizard.client.cli.state;
|
||||
import eu.jonahbauer.wizard.client.cli.Client;
|
||||
import eu.jonahbauer.wizard.client.cli.commands.GameCommand;
|
||||
import eu.jonahbauer.wizard.client.cli.util.Pair;
|
||||
import eu.jonahbauer.wizard.common.messages.client.InteractionMessage;
|
||||
import eu.jonahbauer.wizard.common.messages.data.PlayerData;
|
||||
import eu.jonahbauer.wizard.common.messages.observer.*;
|
||||
import eu.jonahbauer.wizard.common.messages.player.ContinueMessage;
|
||||
import eu.jonahbauer.wizard.common.messages.server.AckMessage;
|
||||
import eu.jonahbauer.wizard.common.messages.server.GameMessage;
|
||||
import eu.jonahbauer.wizard.common.messages.server.NackMessage;
|
||||
@@ -133,20 +135,25 @@ public final class Game extends BaseState {
|
||||
|
||||
client.print("The scores are as follows:", "", col0, col1);
|
||||
} else if (observerMessage instanceof UserInputMessage input) {
|
||||
if (self.equals(input.getPlayer())) {
|
||||
if (input.getAction() == UserInputMessage.Action.SYNC) {
|
||||
client.send(new InteractionMessage(new ContinueMessage()));
|
||||
} else if (self.equals(input.getPlayer())) {
|
||||
client.printfln("It is your turn to %s. You have time until %s.", switch (input.getAction()) {
|
||||
case CHANGE_PREDICTION -> "change your prediction";
|
||||
case JUGGLE_CARD -> "juggle a card";
|
||||
case PLAY_CARD -> "play a card";
|
||||
case PICK_TRUMP -> "pick the trump suit";
|
||||
case MAKE_PREDICTION -> "make a prediction";
|
||||
default -> throw new AssertionError();
|
||||
}, LocalDateTime.ofInstant(Instant.ofEpochMilli(input.getTimeout()), ZoneId.systemDefault()));
|
||||
} else {
|
||||
client.printfln(
|
||||
"Waiting for input %s from %s. (times out at %s)",
|
||||
input.getAction(),
|
||||
nameOf(input.getPlayer()),
|
||||
LocalDateTime.ofInstant(Instant.ofEpochMilli(input.getTimeout()), ZoneId.systemDefault())
|
||||
LocalDateTime.ofInstant(Instant.ofEpochMilli(input.getTimeout()),
|
||||
ZoneId.systemDefault()
|
||||
)
|
||||
);
|
||||
}
|
||||
} else if (observerMessage instanceof TimeoutMessage) {
|
||||
|
Reference in New Issue
Block a user