Update ScoreboardManager to Java 8 lambdas and method references.

Just makes things a little bit neater.
This commit is contained in:
Andreas Troelsen 2018-07-04 01:42:52 +02:00
parent dbd04294a4
commit 623bfae308

View File

@ -103,11 +103,7 @@ public class ScoreboardManager {
final Score fake = kills.getScore(name);
if (value == 0) {
fake.setScore(8);
arena.scheduleTask(new Runnable() {
public void run() {
fake.setScore(0);
}
}, 1);
arena.scheduleTask(() -> fake.setScore(0), 1);
} else {
fake.setScore(value);
}
@ -131,13 +127,7 @@ public class ScoreboardManager {
* It is necessary to delay the reset of the player scores, and the
* reset is necessary because of non-zero crappiness. */
resetKills();
arena.scheduleTask(new Runnable() {
public void run() {
for (Player p : arena.getPlayersInArena()) {
kills.getScore(p.getName()).setScore(0);
}
}
}, 1);
arena.scheduleTask(this::resetPlayerScores, 1);
}
private void resetKills() {
@ -149,6 +139,13 @@ public class ScoreboardManager {
updateWave(0);
}
private void resetPlayerScores() {
arena.getPlayersInArena().stream()
.map(Player::getName)
.map(kills::getScore)
.forEach(score -> score.setScore(0));
}
static class NullScoreboardManager extends ScoreboardManager {
NullScoreboardManager(Arena arena) {
super(arena);