private boolean isPermissed(CommandSender sender, String permission) { return !isNotPermissed(sender, permission); }
if (isNotPermissed(sender, "nametagedit.use")) return false; if (args.length < 1) { sendUsage(sender); } else { switch (args[0].toLowerCase()) { case "reload": cmdReload(sender); break; case "convert": cmdConvert(sender, args); break; case "debug": break; case "player": cmdPlayer(sender, args); break; case "group": cmdGroups(sender, args); break; case "longtags": break; case "priority": cmdPriority(sender, args); break; default: sendUsage(sender); break;
if (args.length == 3) { if (!args[2].equalsIgnoreCase("clear")) { sendUsagePlayer(sender); return; if (isNotPermissed(sender, "nametagedit.clear.self")) return; case "prefix": case "suffix": if (isNotPermissed(sender, "nametagedit.edit.self")) return; break; case "priority": if (isNotPermissed(sender, "nametagedit.edit.self")) return; setupPriority(sender, true, priorityName, args[3]); break; default: sendUsagePlayer(sender); sendUsagePlayer(sender);
if (isNotPermissed(sender, "nametagedit.groups")) return; if (args.length < 2) { sendUsageGroup(sender); } else { if (args[1].equalsIgnoreCase("list")) { sendUsageGroup(sender); return; NametagMessages.GROUP_VALUE_CLEARED.send(sender, prefix ? "prefix" : "suffix", group); } else if (args[2].equalsIgnoreCase("priority")) { setupPriority(sender, false, group, args[3]); sendUsageGroup(sender);
/** * Handles /nte reload */ private void cmdReload(CommandSender sender) { if (isPermissed(sender, "nametagedit.reload")) { handler.reload(); NametagMessages.RELOADED_DATA.send(sender); } }
public List<String> onTabComplete(CommandSender sender, Command command, String label, String[] args) { if (args.length == 1) { return getSuggestions(args[0], "debug", "reload", "convert", "player", "group"); } else if (args.length == 2 || args.length == 3) { if (args[0].equalsIgnoreCase("player")) { return getSuggestions(args[2], "clear", "prefix", "suffix", "priority"); return getSuggestions(args[1], data.toArray(new String[data.size()])); } else { return getSuggestions(args[2], "clear", "prefix", "suffix", "permission", "priority");
@Override public void onEnable() { testCompat(); if (!isEnabled()) return; manager = new NametagManager(this); handler = new NametagHandler(this, manager); PluginManager pluginManager = Bukkit.getPluginManager(); if (checkShouldRegister("zPermissions")) { pluginManager.registerEvents(new HookZPermissions(handler), this); } else if (checkShouldRegister("PermissionsEx")) { pluginManager.registerEvents(new HookPermissionsEX(handler), this); } else if (checkShouldRegister("GroupManager")) { pluginManager.registerEvents(new HookGroupManager(handler), this); } else if (checkShouldRegister("LuckPerms")) { pluginManager.registerEvents(new HookLuckPerms(handler), this); } if (pluginManager.getPlugin("LibsDisguises") != null) { pluginManager.registerEvents(new HookLibsDisguise(this), this); } getCommand("ne").setExecutor(new NametagCommand(handler)); if (api == null) { api = new NametagAPI(handler, manager); } }
/** * Handles /nte priority */ private void cmdPriority(CommandSender sender, String[] args) { if (isNotPermissed(sender, "nametagedit.priority")) return; // if (args.length == 0) { // sender.sendMessage(Utils.format("&a&lNametagEdit &7Sort Priority")); // sender.sendMessage(Utils.format("&7This feature allows you to position Nametags in tab.")); // sender.sendMessage(Utils.format("&a/nte priority view &7view advanced info")); // } // List<GroupData> copyOfGroups = new ArrayList<>(groupData); // Collections.sort(copyOfGroups, new Comparator<GroupData>() { // @Override // public int compare(GroupData group1, GroupData group2) { // return group1.getSortPriority() - group2.getSortPriority(); // } // }); // // int adjustedSortPriority = 1; // // for (GroupData groupData : copyOfGroups) { // groupData.setSortPriority(groupData.getSortPriority() < 1 ? -1 : adjustedSortPriority++); // } // // abstractConfig.save(groupData.toArray(new GroupData[groupData.size()])); }
/** * Handles /nte convert */ private void cmdConvert(CommandSender sender, String[] args) { if (isNotPermissed(sender, "nametagedit.convert")) return; if (args.length != 4) { NametagMessages.USAGE_CONVERT.send(sender); } else { boolean sourceIsFile = args[1].equalsIgnoreCase("file"); boolean destinationIsSQL = args[2].equalsIgnoreCase("db"); boolean legacy = args[3].equalsIgnoreCase("true"); NametagMessages.CONVERSION.send(sender, "groups & players", sourceIsFile ? "file" : "mysql", destinationIsSQL ? "mysql" : "file", legacy); if (sourceIsFile && !destinationIsSQL && legacy) { new Converter().legacyConversion(sender, handler.getPlugin()); } else if ((destinationIsSQL && sourceIsFile) || (!sourceIsFile && !destinationIsSQL)) { new ConverterTask(!destinationIsSQL, sender, handler.getPlugin()).runTaskAsynchronously(handler.getPlugin()); } } }