From 5c1222512eb27eb716d0c7126edc0cb9295d7636 Mon Sep 17 00:00:00 2001 From: takagi Date: Mon, 26 Sep 2022 22:27:02 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=E3=82=B2=E3=83=BC=E3=83=A0=E7=B5=82?= =?UTF-8?q?=E4=BA=86=E5=BE=8C=E3=81=AB=E7=B5=90=E6=9E=9C=E7=99=BA=E8=A1=A8?= =?UTF-8?q?=E3=82=92=E3=81=99=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/net/iamtakagi/pesce/PesceGame.java | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/src/main/java/net/iamtakagi/pesce/PesceGame.java b/src/main/java/net/iamtakagi/pesce/PesceGame.java index 57ef3a6..f0d9b19 100644 --- a/src/main/java/net/iamtakagi/pesce/PesceGame.java +++ b/src/main/java/net/iamtakagi/pesce/PesceGame.java @@ -27,8 +27,7 @@ import java.util.UUID; import java.util.logging.Level; -import static net.iamtakagi.pesce.Pesce.broadcast; -import static net.iamtakagi.pesce.Pesce.log; +import static net.iamtakagi.pesce.Pesce.*; import static net.iamtakagi.pesce.PesceConfig.CONFIG_YAML_DEST; import static net.iamtakagi.pesce.PesceConfig.loadYamlConfig; @@ -91,7 +90,7 @@ public PesceGame() { // ゲームプロセス初期化 process = new GameProcess(); // プレイヤーリスト初期化 - players = new LinkedList<>(); + players = new LinkedList<>(); } public PesceGame init() { @@ -219,6 +218,20 @@ public void onStartState() { if(state == GameState.ENDGAME) { seconds = PesceGameConfig.getEndgameSeconds(); broadcast("ゲーム終了!"); + // 昇順ソート + players.sort((o1, o2) -> o1.getCatches() > o2.getCatches() ? -1 : 1); + // 結果発表 + StringBuilder sb = new StringBuilder() + .append(Style.HORIZONTAL_SEPARATOR).append("\n") + .append(Style.AQUA + Style.BOLD + "結果発表!").append("\n"); + players.forEach(gamePlayer -> { + Player bukkitPlayer = Bukkit.getPlayer(gamePlayer.getUuid()); + if(bukkitPlayer != null) { + sb.append(Style.GRAY + bukkitPlayer.getName() + ": " + Style.WHITE + gamePlayer.getCatches() + "匹").append("\n"); + } + }); + sb.append(Style.HORIZONTAL_SEPARATOR); + broadcastWithoutPrefix(sb.toString()); Bukkit.getOnlinePlayers().forEach(player -> { player.playSound(player.getLocation(), Sound.ENTITY_PLAYER_LEVELUP, 1F, 1F); });