forked from SteamWar/SteamWar
Fix ConcurrentModificationException through death in loop
This commit is contained in:
@@ -29,6 +29,7 @@ import de.steamwar.towerrun.state.GameStates;
|
|||||||
import org.bukkit.*;
|
import org.bukkit.*;
|
||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.entity.EntityType;
|
import org.bukkit.entity.EntityType;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.block.Action;
|
import org.bukkit.event.block.Action;
|
||||||
import org.bukkit.event.block.BlockBreakEvent;
|
import org.bukkit.event.block.BlockBreakEvent;
|
||||||
@@ -83,14 +84,16 @@ public class IngameListener extends GameStateBukkitListener {
|
|||||||
.min(Comparator.comparing(Function.identity()))
|
.min(Comparator.comparing(Function.identity()))
|
||||||
.orElse(0.0);
|
.orElse(0.0);
|
||||||
|
|
||||||
|
List<Player> toDamage = new ArrayList<>();
|
||||||
TowerRunGame.PLAYERS_ALIVE.forEach(towerRunPlayer -> {
|
TowerRunGame.PLAYERS_ALIVE.forEach(towerRunPlayer -> {
|
||||||
if (towerRunPlayer.player().getLocation().getY() - minY > 20) {
|
if (towerRunPlayer.player().getLocation().getY() - minY > 20) {
|
||||||
towerRunPlayer.player().sendTitle("§a", TowerRun.getMessage().parse("CATCH_UP_WARNING", towerRunPlayer.player()), 5, 30, 5);
|
towerRunPlayer.player().sendTitle("§a", TowerRun.getMessage().parse("CATCH_UP_WARNING", towerRunPlayer.player()), 5, 30, 5);
|
||||||
}
|
}
|
||||||
if (towerRunPlayer.player().getLocation().getY() - minY > 30) {
|
if (towerRunPlayer.player().getLocation().getY() - minY > 30) {
|
||||||
towerRunPlayer.player().damage(1.0);
|
toDamage.add(towerRunPlayer.player());
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
toDamage.forEach(p -> p.damage(1.0));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
antiCampRunnable.runTaskTimer(TowerRun.getInstance(), 100, 100);
|
antiCampRunnable.runTaskTimer(TowerRun.getInstance(), 100, 100);
|
||||||
|
|||||||
Reference in New Issue
Block a user