From 1192ed91729bc56478e557ed2f0add636751b300 Mon Sep 17 00:00:00 2001 From: ajgeiss0702 Date: Thu, 2 Jul 2020 16:09:11 -0700 Subject: [PATCH] 1.4.7 & 1.4.8 --- dependency-reduced-pom.xml | 2 +- pom.xml | 2 +- src/main/java/us/ajg0702/queue/Main.java | 13 +++++++-- src/main/java/us/ajg0702/queue/Manager.java | 2 +- .../ajg0702/queue/commands/ManageCommand.java | 27 ++++++++++++------- .../ajg0702/queue/commands/MoveCommand.java | 5 ++++ .../ajg0702/queue/utils/BungeeMessages.java | 1 + src/main/resources/config.yml | 14 +++++++++- 8 files changed, 50 insertions(+), 16 deletions(-) diff --git a/dependency-reduced-pom.xml b/dependency-reduced-pom.xml index 1c7ef5d..f980ddd 100644 --- a/dependency-reduced-pom.xml +++ b/dependency-reduced-pom.xml @@ -4,7 +4,7 @@ us.ajg0702 ajQueue ajQueue - 1.4.6 + 1.4.8 diff --git a/pom.xml b/pom.xml index d8ee3f5..d15f768 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 us.ajg0702 ajQueue - 1.4.6 + 1.4.8 ajQueue diff --git a/src/main/java/us/ajg0702/queue/Main.java b/src/main/java/us/ajg0702/queue/Main.java index a614e16..bfa0896 100644 --- a/src/main/java/us/ajg0702/queue/Main.java +++ b/src/main/java/us/ajg0702/queue/Main.java @@ -3,10 +3,12 @@ package us.ajg0702.queue; import java.io.ByteArrayInputStream; import java.io.DataInputStream; import java.io.IOException; +import java.util.Arrays; import java.util.LinkedHashMap; import java.util.List; import java.util.concurrent.Callable; +import net.md_5.bungee.api.CommandSender; import net.md_5.bungee.api.chat.BaseComponent; import net.md_5.bungee.api.chat.TextComponent; import net.md_5.bungee.api.connection.ProxiedPlayer; @@ -41,6 +43,8 @@ public class Main extends Plugin implements Listener { boolean isp; + MoveCommand moveCommand; + @Override public void onEnable() { plugin = this; @@ -90,7 +94,8 @@ public class Main extends Plugin implements Listener { config = new BungeeConfig(this); checkConfig(); - this.getProxy().getPluginManager().registerCommand(this, new MoveCommand(this)); + moveCommand = new MoveCommand(this); + this.getProxy().getPluginManager().registerCommand(this, moveCommand); this.getProxy().getPluginManager().registerCommand(this, new ManageCommand(this)); this.getProxy().getPluginManager().registerCommand(this, new LeaveCommand(this)); @@ -218,7 +223,11 @@ public class Main extends Plugin implements Listener { if(subchannel.equals("queue")) { String data = in.readUTF(); - man.addToQueue(player, data); + String[] args = new String[1]; + args[0] = data; + moveCommand.execute((CommandSender) player, args); + //man.addToQueue(player, data); + } if(subchannel.equals("queuename")) { BungeeUtils.sendCustomData(player, "queuename", man.getQueuedName(player)); diff --git a/src/main/java/us/ajg0702/queue/Manager.java b/src/main/java/us/ajg0702/queue/Manager.java index 5928602..2adaafd 100644 --- a/src/main/java/us/ajg0702/queue/Manager.java +++ b/src/main/java/us/ajg0702/queue/Manager.java @@ -40,7 +40,7 @@ public class Manager { public void run() { reloadServers(); } - }, 0, TimeUnit.SECONDS); + }, pl.config.getInt("wait-to-load-servers-delay"), TimeUnit.MILLISECONDS); } } diff --git a/src/main/java/us/ajg0702/queue/commands/ManageCommand.java b/src/main/java/us/ajg0702/queue/commands/ManageCommand.java index 534e264..a3d1150 100644 --- a/src/main/java/us/ajg0702/queue/commands/ManageCommand.java +++ b/src/main/java/us/ajg0702/queue/commands/ManageCommand.java @@ -81,17 +81,14 @@ public class ManageCommand extends Command { } if(args.length == 2) { - - List playerNames = new ArrayList<>(); - for(ProxiedPlayer ply : pl.getProxy().getPlayers()) { - if(ply == null || !ply.isConnected()) continue; - playerNames.add(ply.getName().toLowerCase()); + if(!sender.hasPermission("ajqueue.send")) { + sender.sendMessage(msgs.getBC("noperm")); + return; } + + List playerNames = getNameList(); if(playerNames.contains(args[0].toLowerCase())) { - if(!sender.hasPermission("ajqueue.send")) { - sender.sendMessage(msgs.getBC("noperm")); - return; - } + ProxiedPlayer ply = pl.getProxy().getPlayer(args[0]); Manager.getInstance().addToQueue(ply, args[1]); sender.sendMessage(Main.formatMessage( @@ -104,4 +101,14 @@ public class ManageCommand extends Command { } sender.sendMessage(Main.formatMessage("/ajqueue ")); - }} + } + + private List getNameList() { + List playerNames = new ArrayList<>(); + for(ProxiedPlayer ply : pl.getProxy().getPlayers()) { + if(ply == null || !ply.isConnected()) continue; + playerNames.add(ply.getName().toLowerCase()); + } + return playerNames; + } +} diff --git a/src/main/java/us/ajg0702/queue/commands/MoveCommand.java b/src/main/java/us/ajg0702/queue/commands/MoveCommand.java index 78a0074..5ac3bae 100644 --- a/src/main/java/us/ajg0702/queue/commands/MoveCommand.java +++ b/src/main/java/us/ajg0702/queue/commands/MoveCommand.java @@ -23,7 +23,12 @@ public class MoveCommand extends Command { return; } ProxiedPlayer p = (ProxiedPlayer) sender; + if(args.length > 0) { + if(plugin.getConfig().getBoolean("require-permission") && !p.hasPermission("ajqueue.queue."+args[0])) { + sender.sendMessage(msgs.getBC("noperm")); + return; + } Manager.getInstance().addToQueue(p, args[0]); } else if(args.length == 0) { sender.sendMessage(msgs.getBC("commands.joinqueue.usage")); diff --git a/src/main/java/us/ajg0702/queue/utils/BungeeMessages.java b/src/main/java/us/ajg0702/queue/utils/BungeeMessages.java index 0b503b4..18aacd8 100644 --- a/src/main/java/us/ajg0702/queue/utils/BungeeMessages.java +++ b/src/main/java/us/ajg0702/queue/utils/BungeeMessages.java @@ -90,6 +90,7 @@ public class BungeeMessages { d.put("spigot.actionbar.offline", "&7You are queued for &f{SERVER}&7. &7You are in position &f{POS}&7 of &f{LEN}&7."); d.put("send", "&aAdded &f{PLAYER}&a to the queue for &f{SERVER}"); + d.put("remove", "&aRemoved &f{PLAYER} from all queues they were in."); d.put("placeholders.queued.none", "None"); d.put("placeholders.position.none", "None"); diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index e9ad7d0..3223fb9 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -1,5 +1,5 @@ # Dont touch this number please -config-version: 6 +config-version: 8 # The time the server will wait between sending people in the queue # Default: 5 @@ -43,8 +43,20 @@ remove-player-on-server-switch: true # Default: false wait-to-load-servers: false +# How long should we wait after the server finishes loading to load the server list? +# Only works if the above is enabled. +# This is in miliseconds so 1000 = 1 second +# Default: 500 +wait-to-load-servers-delay: 500 + # How often (in seconds) we should check for new servers to add queues for. # If you dynamicly add servers, set this to something other than 0. # To disable, set to 0 reload-servers-interval: 0 + + +# Should we require permissions for players to be able to join queues? +# If enabled, players will be required to have the permission ajqueue.queue. +# Default: false +require-permission: false