Allow second ready check for when a player quits in the lobby

This commit is contained in:
Daniel Saukel 2021-02-26 20:15:33 +01:00
parent bd14fa2202
commit eae11e7b81
2 changed files with 9 additions and 5 deletions

View File

@ -130,6 +130,7 @@ public class EndSign extends Button {
return true;
}
// TODO: Group with 2 players, player A finishs, player B leaves
if (dPlayer.isFinished()) {
return true;
}

View File

@ -164,9 +164,10 @@ public class ReadySign extends Button {
}
private void ready(GamePlayer player) {
if (player == null || player.isReady()) {
if (player == null) {
return;
}
boolean wasReady = player.isReady();
if (!getGameWorld().areClassesEnabled() || player.getPlayerClass() != null) {
if (player.ready() && bar != null) {
@ -174,10 +175,12 @@ public class ReadySign extends Button {
}
}
if (player.isReady()) {
player.sendMessage(DMessage.PLAYER_READY.getMessage());
} else if (getGameWorld().areClassesEnabled()) {
player.sendMessage(DMessage.ERROR_READY.getMessage());
if (!wasReady) {
if (player.isReady()) {
player.sendMessage(DMessage.PLAYER_READY.getMessage());
} else if (getGameWorld().areClassesEnabled()) {
player.sendMessage(DMessage.ERROR_READY.getMessage());
}
}
}