Skip to content

Commit 7441298

Browse files
committed
fix bossbarプレイヤー人数
1 parent bb65fea commit 7441298

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

src/main/java/com/github/elic0de/hungergames/game/HungerGame.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ public class HungerGame extends AbstractGame {
4747
@Getter
4848
private final Set<String> deadPlayers = new HashSet<>();
4949

50-
private final Set<UUID> rejoinPlayers = new HashSet<>();
50+
private final Set<String> rejoinPlayers = new HashSet<>();
5151

5252
private DragonTrait dragonTrait;
5353

@@ -82,7 +82,6 @@ public void join(GameUser user) {
8282
public void leave(GameUser user) {
8383
super.leave(user);
8484
bossBar.removePlayer(user);
85-
getUserTeam(user).ifPresent(team -> team.removeEntry(user.getUsername()));
8685
}
8786

8887

@@ -255,7 +254,7 @@ public boolean isSpectator(GameUser user) {
255254

256255
public void rejoin(GameUser user) {
257256
if (getPhase() instanceof InGamePhase) {
258-
if (rejoinPlayers.contains(user.getUniqueId())) {
257+
if (rejoinPlayers.contains(user.getUsername())) {
259258
final Player player = user.getPlayer();
260259
final ItemStack chestPlate = player.getInventory().getChestplate();
261260
if (chestPlate == null) return;
@@ -265,7 +264,7 @@ public void rejoin(GameUser user) {
265264
player.getPassengers().forEach(player::removePassenger);
266265
player.setGameMode(GameMode.SURVIVAL);
267266
}
268-
rejoinPlayers.remove(user.getUniqueId());
267+
rejoinPlayers.remove(user.getUsername());
269268
return;
270269
}
271270
user.getPlayer().setGameMode(GameMode.SPECTATOR);
@@ -275,7 +274,7 @@ public void rejoin(GameUser user) {
275274
public void addRejoinPlayer(GameUser user) {
276275
// 死んでいる場合は再参加無効に
277276
if (deadPlayers.contains(user.getUsername())) return;
278-
rejoinPlayers.add(user.getUniqueId());
277+
rejoinPlayers.add(user.getUsername());
279278
}
280279

281280
public boolean checkTeamDead(GameUser user) {
@@ -306,6 +305,8 @@ public int getAlivePlayersSize() {
306305
aliveTeams.forEach(team -> {
307306
for (String playerName : team.getEntries()) {
308307
if (deadPlayers.contains(playerName)) continue;
308+
if (rejoinPlayers.contains(playerName)) continue;
309+
if (Bukkit.getPlayer(playerName) == null) continue;
309310
playersSize.incrementAndGet();
310311
}
311312
});

0 commit comments

Comments
 (0)