diff --git a/src/main/java/dev/pgm/events/ready/ReadyCommands.java b/src/main/java/dev/pgm/events/ready/ReadyCommands.java index 9a96637..5a4f2fd 100644 --- a/src/main/java/dev/pgm/events/ready/ReadyCommands.java +++ b/src/main/java/dev/pgm/events/ready/ReadyCommands.java @@ -2,6 +2,7 @@ import dev.pgm.events.config.AppData; import java.time.Duration; +import java.util.stream.Stream; import net.md_5.bungee.api.ChatColor; import org.bukkit.Bukkit; import org.bukkit.command.CommandSender; @@ -38,7 +39,12 @@ public void readyCommand(CommandSender sender, Match match, MatchPlayer player) Party party = player.getParty(); Bukkit.broadcastMessage( - party.getColor() + player.getParty().getNameLegacy() + ChatColor.RESET + " is now ready."); + party.getColor() + + player.getParty().getNameLegacy() + + ChatColor.RESET + + " is " + + ChatColor.GREEN + + "now ready"); readyParties.ready(party); if (readyParties.allReady(match)) @@ -65,7 +71,9 @@ public void unreadyCommand(CommandSender sender, Match match, MatchPlayer player party.getColor() + player.getParty().getNameLegacy() + ChatColor.RESET - + " is now unready."); + + " is " + + ChatColor.RED + + "no longer ready"); if (readyParties.allReady(match)) { readyParties.unReady(party); @@ -78,6 +86,25 @@ public void unreadyCommand(CommandSender sender, Match match, MatchPlayer player } } + @Command(aliases = "status", desc = "Display if teams are ready") + public void status(CommandSender sender, Match match) { + Stream parties = match.getCompetitors().stream(); + if (AppData.observersMustReady()) + parties = Stream.concat(Stream.of(match.getDefaultParty()), parties); + + parties + .map( + p -> + p.getColor() + + p.getNameLegacy() + + ChatColor.RESET + + " is " + + (readyParties.isReady(p) + ? ChatColor.GREEN + "ready" + : ChatColor.RED + "not ready")) + .forEach(sender::sendMessage); + } + private boolean preConditions(Match match) { return !match.isRunning() && !match.isFinished(); }