2020import org .bukkit .entity .Player ;
2121import org .bukkit .event .player .PlayerTeleportEvent ;
2222import org .bukkit .inventory .ItemStack ;
23+ import org .bukkit .scheduler .BukkitTask ;
2324import org .bukkit .scoreboard .Scoreboard ;
2425import org .bukkit .scoreboard .Team ;
2526import org .jetbrains .annotations .NotNull ;
@@ -122,7 +123,7 @@ public void dismountWithTeam(GameUser user) {
122123
123124 public void onDeath (GameUser user ) {
124125 if (getPhase () instanceof InGamePhase ) {
125- if (isSpectator (user )) return ;
126+ /* if (isSpectator(user)) return;
126127
127128 deadPlayers.add(user.getUsername());
128129 if ((getPlayers().size() - getDeadPlayers().size()) == 10) {
@@ -132,19 +133,20 @@ public void onDeath(GameUser user) {
132133 getUserTeam(user).ifPresent(team -> {
133134 if (checkTeamDead(user)) aliveTeams.remove(team);
134135 });
135-
136136 // 生存チーム数が2チーム以下になったら勝利
137137 if (aliveTeams.size() < 2) {
138138 wonGame();
139- }
139+ }*/
140140
141141 if (user .getPlayer ().getKiller () != null ) {
142- records .addKill (user );
142+ records .addKill (GameUserManager . getGameUser ( user . getPlayer (). getKiller ()) );
143143 }
144144
145- deathChest .generateChest (user );
146- user .getPlayer ().setGameMode (GameMode .SPECTATOR );
147- user .getPlayer ().getWorld ().strikeLightningEffect (user .getPlayer ().getLocation ());
145+ Bukkit .getScheduler ().runTask (HungerGames .getInstance (), () -> {
146+ deathChest .generateChest (user );
147+ user .getPlayer ().setGameMode (GameMode .SPECTATOR );
148+ user .getPlayer ().getWorld ().strikeLightningEffect (user .getPlayer ().getLocation ());
149+ });
148150 }
149151 }
150152
@@ -203,7 +205,9 @@ public void rejoin(GameUser user) {
203205 player .setGameMode (GameMode .SURVIVAL );
204206 }
205207 rejoinPlayers .remove (user .getUniqueId ());
208+ return ;
206209 }
210+ user .getPlayer ().setGameMode (GameMode .SPECTATOR );
207211 }
208212 }
209213
0 commit comments