Fix Maplist bug & GameTimer error on join
This commit is contained in:
parent
ca3060321b
commit
e40b53713f
3 changed files with 17 additions and 17 deletions
|
|
@ -20,8 +20,6 @@ public class ForceStart implements CommandExecutor {
|
|||
|
||||
public FileConfiguration config = PS3Minigames.INSTANCE.getConfig();
|
||||
|
||||
public PS3Minigames plugin = PS3Minigames.INSTANCE;
|
||||
|
||||
@Override
|
||||
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||
if (args.length == 1) {
|
||||
|
|
@ -33,7 +31,7 @@ public class ForceStart implements CommandExecutor {
|
|||
sender.sendMessage(ChatColor.translateAlternateColorCodes('&', config.getString("messages.force-starting-game").replace("%map%", world.getName())));
|
||||
return true;
|
||||
} else {
|
||||
sender.sendMessage(ChatColor.translateAlternateColorCodes('&', config.getString("messages.world-not-found")));
|
||||
sender.sendMessage(ChatColor.translateAlternateColorCodes('&', config.getString("messages.world-not-found").replace("%world%", args[0])));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ public class MapList implements CommandExecutor {
|
|||
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||
if (args.length == 0) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
PS3Minigames.INSTANCE.getMultiverseCore().getMVWorldManager().getMVWorlds().stream().filter(world -> !world.getName().contains("world")).forEach(world -> sb.append(world.getName()).append(", "));
|
||||
PS3Minigames.INSTANCE.getMultiverseCore().getMVWorldManager().getMVWorlds().stream().filter(world -> !world.getName().contains("world") && !world.getName().contains(config.getString("spawn-lobby.world"))).forEach(world -> sb.append(world.getName()).append(", "));
|
||||
sender.sendMessage(ChatColor.translateAlternateColorCodes('&', config.getString("messages.available-maps")));
|
||||
sender.sendMessage(ChatColor.translateAlternateColorCodes('&', "&6" + sb));
|
||||
return true;
|
||||
|
|
|
|||
|
|
@ -49,36 +49,38 @@ public class JoinQuitListener implements Listener {
|
|||
|
||||
// Send all players in the lobby the join message
|
||||
String joinMessage = ChatColor.translateAlternateColorCodes('&', config.getString("messages.join").replace("%player%", player.getDisplayName()));
|
||||
for (Player player1 : plugin.getLobby().getPlayers()) {
|
||||
player1.sendMessage(joinMessage);
|
||||
}
|
||||
|
||||
plugin.getLobby().getPlayers().forEach(player1 -> player1.sendMessage(joinMessage));
|
||||
|
||||
player.sendMessage(joinMessage);
|
||||
|
||||
int lobbySize = plugin.getLobby().getPlayers().size();
|
||||
int playerCount = plugin.getLobby().getPlayers().size();
|
||||
|
||||
if (lobbySize == 0) {
|
||||
if (playerCount < 2) {
|
||||
String neededPlayersMessage = ChatColor.translateAlternateColorCodes('&', config.getString("messages.needed-players"));
|
||||
|
||||
player.sendMessage(neededPlayersMessage);
|
||||
for (Player player1 : plugin.getLobby().getPlayers()) {
|
||||
player1.sendMessage(neededPlayersMessage);
|
||||
}
|
||||
|
||||
plugin.getLobby().getPlayers().forEach(player1 -> player1.sendMessage(joinMessage));
|
||||
} else {
|
||||
String gameStartMessage;
|
||||
int startSeconds = (lobbySize >= 3) ? 10 : 25;
|
||||
int startSeconds = (playerCount >= 3) ? 10 : 25;
|
||||
gameStartMessage = ChatColor.translateAlternateColorCodes('&', config.getString("messages.game-start").replace("%seconds%", Integer.toString(startSeconds)));
|
||||
|
||||
player.sendMessage(gameStartMessage);
|
||||
for (Player player1 : plugin.getLobby().getPlayers()) {
|
||||
player1.sendMessage(gameStartMessage);
|
||||
}
|
||||
|
||||
plugin.getLobby().getPlayers().forEach(player1 -> player1.sendMessage(joinMessage));
|
||||
|
||||
if (plugin.getLobbyState() == LobbyState.IDLE) {
|
||||
|
||||
plugin.setLobbyState(LobbyState.STARTING);
|
||||
lobbyPlayers.add(player.getUniqueId());
|
||||
|
||||
plugin.getLobby().getPlayers().forEach(player1 -> lobbyPlayers.add(player1.getUniqueId()));
|
||||
|
||||
gameTimer.start();
|
||||
gameTimer = new Timer(startSeconds, plugin);
|
||||
|
||||
gameTimer.start();
|
||||
gameTimer.whenComplete(() -> PS3Minigames.INSTANCE.getGameUtil().startNewGame(lobbyPlayers, plugin.getServer().getWorld("cavern")));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue