some improvments, bugs and bugfixed )

This commit is contained in:
hdvt
2025-07-03 02:40:14 +03:00
parent 611ac6c213
commit 9f36ac3e4b
33 changed files with 526 additions and 456 deletions

View File

@@ -3,13 +3,9 @@ package hdvtdev.blockAndSeek.managers;
import hdvtdev.blockAndSeek.BlockAndSeek;
import hdvtdev.blockAndSeek.BlockAndSeekGame;
import hdvtdev.blockAndSeek.BlockAndSeekMap;
import hdvtdev.blockAndSeek.Localization;
import org.bukkit.Bukkit;
import org.bukkit.WorldCreator;
import org.bukkit.scoreboard.Criteria;
import org.bukkit.scoreboard.DisplaySlot;
import org.bukkit.scoreboard.Objective;
import org.bukkit.scoreboard.Scoreboard;
import org.bukkit.entity.Player;
import java.io.File;
import java.util.Set;
@@ -18,9 +14,14 @@ import java.util.concurrent.ConcurrentHashMap;
public class GamesManager {
private static final ConcurrentHashMap<String, BlockAndSeekGame> games = new ConcurrentHashMap<>();
private static final Set<Player> seekerImmune = ConcurrentHashMap.newKeySet();
public static boolean isExist(String name) {
return games.containsKey(name);
public static boolean triggerSeekerImmune(Player player) {
return seekerImmune.remove(player);
}
public static void addSeekerImmune(Player player) {
seekerImmune.add(player);
}
public static Set<String> getAvailableGames() {
@@ -51,33 +52,4 @@ public class GamesManager {
return games.get(name);
}
private static Scoreboard updateScoreboard(Scoreboard scoreboard, int players, int maxPlayers) {
Objective objective = scoreboard.getObjective(DisplaySlot.SIDEBAR);
for (String o : scoreboard.getEntries()) {
scoreboard.resetScores(o);
}
objective.getScore(" ").setScore(3);
objective.getScore(Localization.getComponent("game-players-count", "{players}", String.valueOf(players), "{max-players}", String.valueOf(maxPlayers)).toString()).setScore(2);
objective.getScore(" ").setScore(1);
objective.getScore(Localization.getComponent("wait-time-left", "{time}", String.valueOf(30)).toString()).setScore(0);
return scoreboard;
}
private static Scoreboard newLobbyScoreboard(String name, int players, int maxPlayers) {
Scoreboard scoreboard = Bukkit.getScoreboardManager().getNewScoreboard();
Objective objective = scoreboard.registerNewObjective(name, Criteria.DUMMY, Localization.getComponent(" game-title", "{title}", name));
objective.setDisplaySlot(DisplaySlot.SIDEBAR);
objective.getScore(" ").setScore(3);
objective.getScore(Localization.getComponent("game-players-count", "{players}", String.valueOf(players), "{max-players}", String.valueOf(maxPlayers)).toString()).setScore(2);
objective.getScore(" ").setScore(1);
objective.getScore(Localization.getComponent("wait-time-left", "{time}", String.valueOf(30)).toString()).setScore(0);
return scoreboard;
}
}