Files
ajQueue/common/src/main/java/us/ajg0702/queue/commands/BaseCommand.java
T
2021-09-14 12:33:02 -07:00

76 lines
1.8 KiB
Java

package us.ajg0702.queue.commands;
import com.google.common.collect.ImmutableList;
import net.kyori.adventure.text.Component;
import us.ajg0702.queue.api.commands.IBaseCommand;
import us.ajg0702.queue.api.commands.ICommandSender;
import us.ajg0702.queue.api.commands.ISubCommand;
import us.ajg0702.utils.common.Messages;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
public class BaseCommand implements IBaseCommand {
@Override
public String getName() {
return null;
}
@Override
public ImmutableList<String> getAliases() {
return null;
}
@SuppressWarnings("unused")
@Override
public ImmutableList<ISubCommand> getSubCommands() {
return null;
}
@Override
public String getPermission() {
return null;
}
@Override
public boolean showInTabComplete() {
return true;
}
@Override
public Messages getMessages() {
return null;
}
@SuppressWarnings("unused")
@Override
public void addSubCommand(ISubCommand subCommand) {
}
@Override
public void execute(ICommandSender sender, String[] args) {
sender.sendMessage(Component.text("Unimplemented command"));
}
public boolean checkPermission(ICommandSender sender) {
if(getPermission() != null && !sender.hasPermission(getPermission())) {
sender.sendMessage(getMessages().getComponent("noperm"));
return false;
}
return true;
}
@Override
public List<String> autoComplete(ICommandSender sender, String[] args) {
return null;
}
public List<String> filterCompletion(List<String> in, String current) {
List<String> out = new ArrayList<>(in);
out.removeIf(t -> !t.toLowerCase(Locale.ROOT).contains(current.toLowerCase(Locale.ROOT)));
return out;
}
}