permissions: create separate perms for commands vs items, rename creator item to anchor

This commit is contained in:
2021-06-11 09:34:26 -07:00
parent b04ac9e5a4
commit 41addd1a88
5 changed files with 40 additions and 26 deletions

View File

@@ -70,7 +70,7 @@ public class RegionCommand implements CommandExecutor, TabCompleter {
return true;
}
String subCommand = split[0];
if (subCommand.equals("create") && p.hasPermission("regions.create")) {
if (subCommand.equals("create") && p.hasPermission("regions.commands.create")) {
if (split.length <= 1) {
p.sendMessage("Must specify a region name");
return true;
@@ -85,7 +85,7 @@ public class RegionCommand implements CommandExecutor, TabCompleter {
p.teleport(r.teleportLocation());
m_plugin.regionManager().addRegion(r);
m_plugin.saveRegions();
} else if (subCommand.equals("remove") && p.hasPermission("regions.remove")) {
} else if (subCommand.equals("remove") && p.hasPermission("regions.commands.remove")) {
Region r = m_plugin.regionManager().nearestRegion(p.getLocation());
if (r == null) {
p.sendMessage("There are no regions in this world.");
@@ -94,7 +94,7 @@ public class RegionCommand implements CommandExecutor, TabCompleter {
m_plugin.regionManager().removeRegion(r);
p.sendMessage("Deleted region " + r.coloredName());
m_plugin.saveRegions();
} else if (subCommand.equals("regen") && p.hasPermission("regions.regen")) {
} else if (subCommand.equals("regen") && p.hasPermission("regions.commands.regen")) {
Region r = m_plugin.regionManager().nearestRegion(p.getLocation());
if (r == null) {
p.sendMessage("There are no regions in this world.");
@@ -106,7 +106,7 @@ public class RegionCommand implements CommandExecutor, TabCompleter {
p.sendMessage("Region post regenerated.");
});
}
} else if (subCommand.equals("regenall") && p.hasPermission("regions.regen.all")) {
} else if (subCommand.equals("regenall") && p.hasPermission("regions.commands.regen.all")) {
for(Region r : m_plugin.regionManager().regionsForWorld(p.getLocation().getWorld())) {
m_plugin.getServer().getScheduler().runTask(m_plugin, () -> {
RegionPostBuilder builder = new RegionPostBuilder(r, m_plugin);

View File

@@ -72,11 +72,11 @@ public class RegionOpCommand implements CommandExecutor, TabCompleter {
}
} else if (subCommand.equals("item") && sender.hasPermission("regions.give-items.creator")) {
Player player = (Player)sender;
ItemStack createItem = RegionPostItemWatcher.createCreateItem();
ItemStack anchorStack = RegionPostItemWatcher.createAnchor();
if (split.length > 1) {
createItem.setAmount(Integer.parseInt(split[1]));
anchorStack.setAmount(Integer.parseInt(split[1]));
}
HashMap<Integer, ItemStack> rejected = player.getInventory().addItem(createItem);
HashMap<Integer, ItemStack> rejected = player.getInventory().addItem(anchorStack);
for(ItemStack item : rejected.values()) {
player.getLocation().getWorld().dropItem(player.getLocation(), item);
}