@CommandNode( name = "remove", permission = "mytown.cmd.assistant.ranks.remove", parentName = "mytown.cmd.everyone.ranks", completionKeys = {"rankCompletion"}) public static void ranksRemoveCommand(ICommandSender sender, List<String> args) { if (args.size() < 1) throw new WrongUsageException(getLocal().getLocalization("mytown.cmd.usage.ranks")); Resident res = getDatasource().getOrMakeResident(sender); Town town = res.getSelectedTown(); Rank rank = getRankFromTown(town, args.get(0)); if (town.getDefaultRank().equals(rank)) throw new CommandException(getLocal().getLocalization("mytown.cmd.err.rank.defaultDeletion")); if (getDatasource().deleteRank(rank)) { res.sendMessage( getLocal() .getLocalization("mytown.notification.town.ranks.rem", args.get(0), town.getName())); } else { res.sendMessage( getLocal().getLocalization("mytown.cmd.err.ranks.rem.notallowed", args.get(0))); } }