progress
This commit is contained in:
@@ -0,0 +1,126 @@
|
||||
package us.ajg0702.queue.commands.commands.leavequeue;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import us.ajg0702.queue.api.commands.ICommandSender;
|
||||
import us.ajg0702.queue.api.commands.ISubCommand;
|
||||
import us.ajg0702.queue.api.players.AdaptedPlayer;
|
||||
import us.ajg0702.queue.api.players.QueuePlayer;
|
||||
import us.ajg0702.queue.api.queues.QueueServer;
|
||||
import us.ajg0702.queue.commands.BaseCommand;
|
||||
import us.ajg0702.queue.common.QueueMain;
|
||||
import us.ajg0702.utils.common.Messages;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class LeaveCommand extends BaseCommand {
|
||||
|
||||
|
||||
private final QueueMain main;
|
||||
|
||||
public LeaveCommand(QueueMain main) {
|
||||
this.main = main;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return "leavequeue";
|
||||
}
|
||||
|
||||
@Override
|
||||
public ImmutableList<String> getAliases() {
|
||||
return ImmutableList.of("leaveq");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ImmutableList<ISubCommand> getSubCommands() {
|
||||
return ImmutableList.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getPermission() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Messages getMessages() {
|
||||
return main.getMessages();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addSubCommand(ISubCommand subCommand) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(ICommandSender sender, String[] args) {
|
||||
System.out.println("leave command");
|
||||
if(!sender.isPlayer()) {
|
||||
System.out.println("not player");
|
||||
sender.sendMessage(getMessages().getComponent("errors.player-only"));
|
||||
return;
|
||||
}
|
||||
System.out.println("player");
|
||||
AdaptedPlayer player = main.getPlatformMethods().senderToPlayer(sender);
|
||||
List<QueueServer> servers = main.getQueueManager().getPlayerQueues(player);
|
||||
|
||||
if(servers.size() == 0) {
|
||||
sender.sendMessage(getMessages().getComponent("commands.leave.no-queues"));
|
||||
return;
|
||||
}
|
||||
|
||||
System.out.println("0");
|
||||
|
||||
if(servers.size() == 1) {
|
||||
servers.get(0).removePlayer(player);
|
||||
sender.sendMessage(getMessages().getComponent("commands.leave-queue", "SERVER:"+servers.get(0).getAlias()));
|
||||
return;
|
||||
}
|
||||
|
||||
System.out.println("1");
|
||||
|
||||
if(args.length <= 0) {
|
||||
sender.sendMessage(getMessages().getComponent("commands.leave.more-args", "QUEUES:"+getQueueList(servers)));
|
||||
return;
|
||||
}
|
||||
|
||||
String leaving = args[0];
|
||||
QueueServer leavingServer = main.getQueueManager().findServer(leaving);
|
||||
if(leavingServer == null) {
|
||||
sender.sendMessage(getMessages().getComponent("commands.leave.not-queued", "QUEUES:"+getQueueList(servers)));
|
||||
return;
|
||||
}
|
||||
QueuePlayer queuePlayer = leavingServer.findPlayer(player);
|
||||
if(queuePlayer == null) {
|
||||
sender.sendMessage(getMessages().getComponent("commands.leave.not-queued", "QUEUES:"+getQueueList(servers)));
|
||||
return;
|
||||
}
|
||||
|
||||
System.out.println("2");
|
||||
|
||||
leavingServer.removePlayer(queuePlayer);
|
||||
sender.sendMessage(getMessages().getComponent("commands.leave-queue", "SERVER:"+leavingServer.getAlias()));
|
||||
|
||||
}
|
||||
|
||||
private String getQueueList(List<QueueServer> servers) {
|
||||
StringBuilder queueList = new StringBuilder();
|
||||
for(QueueServer server : servers) {
|
||||
queueList.append(getMessages().getString("commands.leave.queues-list-format").replaceAll("\\{NAME}", server.getName()));
|
||||
}
|
||||
if(queueList.length() > 2) {
|
||||
queueList = new StringBuilder(queueList.substring(0, queueList.length() - 2));
|
||||
}
|
||||
return queueList.toString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> autoComplete(ICommandSender sender, String[] args) {
|
||||
List<QueuePlayer> servers = main.getQueueManager().findPlayerInQueues(main.getPlatformMethods().senderToPlayer(sender));
|
||||
List<String> serverNames = new ArrayList<>();
|
||||
for(QueuePlayer queuePlayer : servers) {
|
||||
serverNames.add(queuePlayer.getQueueServer().getName());
|
||||
}
|
||||
return serverNames;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
package us.ajg0702.queue.commands.commands.manage;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import us.ajg0702.queue.api.commands.ICommandSender;
|
||||
import us.ajg0702.queue.api.commands.ISubCommand;
|
||||
import us.ajg0702.queue.commands.BaseCommand;
|
||||
import us.ajg0702.queue.commands.SubCommand;
|
||||
import us.ajg0702.queue.common.QueueMain;
|
||||
import us.ajg0702.utils.common.Messages;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class ManageCommand extends BaseCommand {
|
||||
|
||||
QueueMain main;
|
||||
|
||||
public ManageCommand(QueueMain main) {
|
||||
this.main = main;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return "ajqueue";
|
||||
}
|
||||
|
||||
@Override
|
||||
public ImmutableList<String> getAliases() {
|
||||
return ImmutableList.of("ajq");
|
||||
}
|
||||
|
||||
List<ISubCommand> subCommands = new ArrayList<>();
|
||||
|
||||
@Override
|
||||
public ImmutableList<ISubCommand> getSubCommands() {
|
||||
return ImmutableList.copyOf(subCommands);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getPermission() {
|
||||
return "ajqueue.manage";
|
||||
}
|
||||
|
||||
@Override
|
||||
public Messages getMessages() {
|
||||
return main.getMessages();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addSubCommand(ISubCommand subCommand) {
|
||||
subCommands.add(subCommand);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(ICommandSender sender, String[] args) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> autoComplete(ICommandSender sender, String[] args) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user