diff --git a/src/main/java/us/ajg0702/queue/Manager.java b/src/main/java/us/ajg0702/queue/Manager.java index c8b4460..6dddca4 100644 --- a/src/main/java/us/ajg0702/queue/Manager.java +++ b/src/main/java/us/ajg0702/queue/Manager.java @@ -199,7 +199,11 @@ public class Manager { int len = plys.size(); if(!s.isJoinable(p)) { - String status = msgs.get("status.offline.restarting"); + String status = "unknown"; + + if(!s.isOnline()) { + status = msgs.get("status.offline.restarting"); + } if(s.getOfflineTime() > pl.config.getInt("offline-time")) { status = msgs.get("status.offline.offline"); @@ -209,6 +213,10 @@ public class Manager { status = msgs.get("status.offline.restricted"); } + if(s.isFull()) { + status = msgs.get("status.offline.full"); + } + if(s.isPaused()) { status = msgs.get("status.offline.paused"); } diff --git a/src/main/java/us/ajg0702/queue/Server.java b/src/main/java/us/ajg0702/queue/Server.java index f9ca853..bc5d000 100644 --- a/src/main/java/us/ajg0702/queue/Server.java +++ b/src/main/java/us/ajg0702/queue/Server.java @@ -141,10 +141,17 @@ public class Server { return (!whitelisted || whitelistedplayers.contains(p.getName())) && this.isOnline() && this.canAccess(p) && - this.isFull() && + !this.isFull() && !this.isPaused(); } + public String getJoinableDebug(ProxiedPlayer p) { + return (!whitelisted || whitelistedplayers.contains(p.getName())) + "\n" + + this.isOnline() +"\n"+ + this.canAccess(p) +"\n"+ + !this.isFull() +"\n"+ + !this.isPaused(); + } boolean paused = false; diff --git a/src/main/java/us/ajg0702/queue/commands/ManageCommand.java b/src/main/java/us/ajg0702/queue/commands/ManageCommand.java index abad419..63178af 100644 --- a/src/main/java/us/ajg0702/queue/commands/ManageCommand.java +++ b/src/main/java/us/ajg0702/queue/commands/ManageCommand.java @@ -70,6 +70,11 @@ public class ManageCommand extends Command { sender.sendMessage(Main.formatMessage(pl.isp()+"")); return; } + if(args[0].equalsIgnoreCase("statusdebug")) { + Server s = Manager.getInstance().getSingleServer((ProxiedPlayer) sender); + if(s == null) return; + sender.sendMessage(Main.formatMessage(s.getJoinableDebug((ProxiedPlayer) sender))); + } if(args[0].equalsIgnoreCase("player")) { sender.sendMessage(Main.formatMessage("/ajQueue ")); return;