@Override
public List<String> getTabCompletions(MinecraftServer server, ICommandSender sender, String[] args, @Nullable BlockPos pos) {
if (args.length == 1) {
return getListOfStringsMatchingLastWord(args, commands);
} else if(args.length > 1) {
for(CommandBase cmd : subcommands) {
if (cmd.getName().equalsIgnoreCase(args[0]) && cmd.checkPermission(server, sender)) {
String[] remaining = Arrays.copyOfRange(args, 1, args.length);
return cmd.getTabCompletions(server, sender, remaining, pos);
}
}
}
return super.getTabCompletions(server, sender, args, pos);
}
}