allow you to send a whole server
This commit is contained in:
@@ -72,7 +72,7 @@ public class Main extends Plugin implements Listener {
|
|||||||
d.put("status.now-in-empty-queue", "");
|
d.put("status.now-in-empty-queue", "");
|
||||||
d.put("status.sending-now", "&aSending you to &f{SERVER} &anow..");
|
d.put("status.sending-now", "&aSending you to &f{SERVER} &anow..");
|
||||||
|
|
||||||
d.put("errors.server-not-exist", "&cThat server does not exist!");
|
d.put("errors.server-not-exist", "&cThe server {SERVER} does not exist!");
|
||||||
d.put("errors.already-queued", "&cYou are already queued for that server!");
|
d.put("errors.already-queued", "&cYou are already queued for that server!");
|
||||||
d.put("errors.player-only", "&cThis command can only be executed as a player!");
|
d.put("errors.player-only", "&cThis command can only be executed as a player!");
|
||||||
d.put("errors.already-connected", "&cYou are already connected to this server!");
|
d.put("errors.already-connected", "&cYou are already connected to this server!");
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package us.ajg0702.queue.commands;
|
package us.ajg0702.queue.commands;
|
||||||
|
|
||||||
import net.md_5.bungee.api.CommandSender;
|
import net.md_5.bungee.api.CommandSender;
|
||||||
|
import net.md_5.bungee.api.config.ServerInfo;
|
||||||
import net.md_5.bungee.api.connection.ProxiedPlayer;
|
import net.md_5.bungee.api.connection.ProxiedPlayer;
|
||||||
import net.md_5.bungee.api.plugin.Command;
|
import net.md_5.bungee.api.plugin.Command;
|
||||||
import net.md_5.bungee.api.plugin.TabExecutor;
|
import net.md_5.bungee.api.plugin.TabExecutor;
|
||||||
@@ -109,7 +110,7 @@ public class ManageCommand extends Command implements TabExecutor {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(!Manager.getInstance().getServerNames().contains(args[1])) {
|
if(!Manager.getInstance().getServerNames().contains(args[1])) {
|
||||||
sender.sendMessage(msgs.getBC("errors.server-not-exist"));
|
sender.sendMessage(msgs.getBC("errors.server-not-exist", "SERVER:"+args[1]));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
QueueServer srv = Manager.getInstance().findServer(args[1]);
|
QueueServer srv = Manager.getInstance().findServer(args[1]);
|
||||||
@@ -161,7 +162,12 @@ public class ManageCommand extends Command implements TabExecutor {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
List<String> playerNames = getNameList();
|
if(Manager.getInstance().getServer(args[2]) == null) {
|
||||||
|
sender.sendMessage(msgs.getBC("errors.server-not-exist", "SERVER:"+args[2]));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
List<String> playerNames = getNameList(true);
|
||||||
if(playerNames.contains(args[1].toLowerCase())) {
|
if(playerNames.contains(args[1].toLowerCase())) {
|
||||||
|
|
||||||
ProxiedPlayer ply = pl.getProxy().getPlayer(args[1]);
|
ProxiedPlayer ply = pl.getProxy().getPlayer(args[1]);
|
||||||
@@ -172,6 +178,21 @@ public class ManageCommand extends Command implements TabExecutor {
|
|||||||
.replaceAll("\\{SERVER\\}", args[2]))
|
.replaceAll("\\{SERVER\\}", args[2]))
|
||||||
);
|
);
|
||||||
return;
|
return;
|
||||||
|
} else if(pl.getProxy().getServers().keySet().contains(args[1])) {
|
||||||
|
|
||||||
|
ServerInfo from = pl.getProxy().getServerInfo(args[1]);
|
||||||
|
if(from == null) {
|
||||||
|
sender.sendMessage(msgs.getBC("errors.server-not-exist", "SERVER:"+args[1]));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
List<ProxiedPlayer> players = new ArrayList<>(from.getPlayers());
|
||||||
|
for(ProxiedPlayer ply : players) {
|
||||||
|
Manager.getInstance().addToQueue(ply, args[2]);
|
||||||
|
}
|
||||||
|
|
||||||
|
sender.sendMessage(msgs.getBC("send", "PLAYER:"+args[1], "SERVER:"+args[2]));
|
||||||
|
return;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
sender.sendMessage(msgs.getBC("commands.send.player-not-found"));
|
sender.sendMessage(msgs.getBC("commands.send.player-not-found"));
|
||||||
return;
|
return;
|
||||||
@@ -182,11 +203,15 @@ public class ManageCommand extends Command implements TabExecutor {
|
|||||||
sender.sendMessage(Main.formatMessage("/ajqueue <reload|list|send|pause>"));
|
sender.sendMessage(Main.formatMessage("/ajqueue <reload|list|send|pause>"));
|
||||||
}
|
}
|
||||||
|
|
||||||
private List<String> getNameList() {
|
private List<String> getNameList(boolean lowercase) {
|
||||||
List<String> playerNames = new ArrayList<>();
|
List<String> playerNames = new ArrayList<>();
|
||||||
for(ProxiedPlayer ply : pl.getProxy().getPlayers()) {
|
for(ProxiedPlayer ply : pl.getProxy().getPlayers()) {
|
||||||
if(ply == null || !ply.isConnected()) continue;
|
if(ply == null || !ply.isConnected()) continue;
|
||||||
|
if(lowercase) {
|
||||||
playerNames.add(ply.getName().toLowerCase());
|
playerNames.add(ply.getName().toLowerCase());
|
||||||
|
} else {
|
||||||
|
playerNames.add(ply.getName());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return playerNames;
|
return playerNames;
|
||||||
}
|
}
|
||||||
@@ -198,7 +223,9 @@ public class ManageCommand extends Command implements TabExecutor {
|
|||||||
}
|
}
|
||||||
if(args.length == 2) {
|
if(args.length == 2) {
|
||||||
if(args[0].equalsIgnoreCase("send")) {
|
if(args[0].equalsIgnoreCase("send")) {
|
||||||
return getNameList();
|
List<String> options = new ArrayList<>(pl.getProxy().getServers().keySet());
|
||||||
|
options.addAll(getNameList(false));
|
||||||
|
return options;
|
||||||
}
|
}
|
||||||
if(args[0].equalsIgnoreCase("pause")) {
|
if(args[0].equalsIgnoreCase("pause")) {
|
||||||
return Manager.getInstance().getServerNames();
|
return Manager.getInstance().getServerNames();
|
||||||
@@ -212,6 +239,6 @@ public class ManageCommand extends Command implements TabExecutor {
|
|||||||
return Arrays.asList("on", "off", "true", "false");
|
return Arrays.asList("on", "off", "true", "false");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return null;
|
return new ArrayList<>();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user