mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
Default permissions
This commit is contained in:
committed by
granny
parent
001b8df9e7
commit
df947a7e81
@@ -1,124 +0,0 @@
|
|||||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
||||||
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
|
|
||||||
Date: Fri, 5 Jun 2020 23:32:38 -0500
|
|
||||||
Subject: [PATCH] Default permissions
|
|
||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/util/permissions/CommandPermissions.java b/src/main/java/org/bukkit/util/permissions/CommandPermissions.java
|
|
||||||
index 7763d6101ac61900db1e2310966b99584539fd0e..d5a42707d365ffd72532bbb1a59a1ca7145f9918 100644
|
|
||||||
--- a/src/main/java/org/bukkit/util/permissions/CommandPermissions.java
|
|
||||||
+++ b/src/main/java/org/bukkit/util/permissions/CommandPermissions.java
|
|
||||||
@@ -18,6 +18,7 @@ public final class CommandPermissions {
|
|
||||||
DefaultPermissions.registerPermission(PREFIX + "plugins", "Allows the user to view the list of plugins running on this server", PermissionDefault.TRUE, commands);
|
|
||||||
DefaultPermissions.registerPermission(PREFIX + "reload", "Allows the user to reload the server settings", PermissionDefault.OP, commands);
|
|
||||||
DefaultPermissions.registerPermission(PREFIX + "version", "Allows the user to view the version of the server", PermissionDefault.TRUE, commands);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "purpur", "Allows the user to use the purpur command", PermissionDefault.OP, commands); // Purpur
|
|
||||||
|
|
||||||
commands.recalculatePermissibles();
|
|
||||||
return commands;
|
|
||||||
diff --git a/src/main/java/org/bukkit/util/permissions/DefaultPermissions.java b/src/main/java/org/bukkit/util/permissions/DefaultPermissions.java
|
|
||||||
index e1a4ddf2c07cdd242fa8054a0152522fe4039e85..8e481e3815f5645ee92f0d229e5ff25c8fc9a6c2 100644
|
|
||||||
--- a/src/main/java/org/bukkit/util/permissions/DefaultPermissions.java
|
|
||||||
+++ b/src/main/java/org/bukkit/util/permissions/DefaultPermissions.java
|
|
||||||
@@ -89,6 +89,8 @@ public final class DefaultPermissions {
|
|
||||||
CommandPermissions.registerPermissions(parent);
|
|
||||||
BroadcastPermissions.registerPermissions(parent);
|
|
||||||
|
|
||||||
+ PurpurPermissions.registerPermissions(); // Purpur
|
|
||||||
+
|
|
||||||
parent.recalculatePermissibles();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
diff --git a/src/main/java/org/bukkit/util/permissions/PurpurPermissions.java b/src/main/java/org/bukkit/util/permissions/PurpurPermissions.java
|
|
||||||
new file mode 100644
|
|
||||||
index 0000000000000000000000000000000000000000..baec4c87d7ea4d54934ca22fd1eb7b46dd69061b
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/src/main/java/org/bukkit/util/permissions/PurpurPermissions.java
|
|
||||||
@@ -0,0 +1,87 @@
|
|
||||||
+package org.bukkit.util.permissions;
|
|
||||||
+
|
|
||||||
+import org.bukkit.entity.Entity;
|
|
||||||
+import org.bukkit.entity.EntityType;
|
|
||||||
+import org.bukkit.entity.Mob;
|
|
||||||
+import org.bukkit.permissions.Permission;
|
|
||||||
+import org.bukkit.permissions.PermissionDefault;
|
|
||||||
+import org.jetbrains.annotations.NotNull;
|
|
||||||
+
|
|
||||||
+import java.util.HashSet;
|
|
||||||
+import java.util.Set;
|
|
||||||
+
|
|
||||||
+public final class PurpurPermissions {
|
|
||||||
+ private static final String ROOT = "purpur";
|
|
||||||
+ private static final String PREFIX = ROOT + ".";
|
|
||||||
+ private static final Set<String> mobs = new HashSet<>();
|
|
||||||
+
|
|
||||||
+ static {
|
|
||||||
+ for (EntityType mob : EntityType.values()) {
|
|
||||||
+ Class<? extends Entity> clazz = mob.getEntityClass();
|
|
||||||
+ if (clazz != null && Mob.class.isAssignableFrom(clazz)) {
|
|
||||||
+ mobs.add(mob.getName());
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ @NotNull
|
|
||||||
+ public static Permission registerPermissions() {
|
|
||||||
+ Permission purpur = DefaultPermissions.registerPermission(ROOT, "Gives the user the ability to use all Purpur utilities and commands", PermissionDefault.FALSE);
|
|
||||||
+
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "enderchest.rows.six", "Gives the user six rows of enderchest space", PermissionDefault.FALSE, purpur);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "enderchest.rows.five", "Gives the user five rows of enderchest space", PermissionDefault.FALSE, purpur);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "enderchest.rows.four", "Gives the user four rows of enderchest space", PermissionDefault.FALSE, purpur);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "enderchest.rows.three", "Gives the user three rows of enderchest space", PermissionDefault.FALSE, purpur);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "enderchest.rows.two", "Gives the user two rows of enderchest space", PermissionDefault.FALSE, purpur);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "enderchest.rows.one", "Gives the user one row of enderchest space", PermissionDefault.FALSE, purpur);
|
|
||||||
+
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "debug.f3n", "Allows the user to use F3+N keybind to swap gamemodes", PermissionDefault.FALSE, purpur);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "joinfullserver", "Allows the user to join a full server", PermissionDefault.OP, purpur);
|
|
||||||
+
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "drop.spawners", "Allows the user to drop spawner cage when broken with diamond pickaxe with silk touch", PermissionDefault.FALSE, purpur);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "place.spawners", "Allows the user to place spawner cage in the world", PermissionDefault.FALSE, purpur);
|
|
||||||
+
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "mending_shift_click", "Allows the user to use shift-right-click to mend items", PermissionDefault.FALSE, purpur);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "inventory_totem", "Uses a totem from anywhere in the user's inventory on death", PermissionDefault.FALSE, purpur);
|
|
||||||
+
|
|
||||||
+ Permission anvil = DefaultPermissions.registerPermission(PREFIX + "anvil", "Allows the user to use all anvil color and format abilities", PermissionDefault.FALSE, purpur);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "anvil.color", "Allows the user to use color codes in an anvil", PermissionDefault.FALSE, anvil);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "anvil.minimessage", "Allows the user to use minimessage tags in an anvil", PermissionDefault.FALSE, anvil);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "anvil.remove_italics", "Allows the user to remove italics in an anvil", PermissionDefault.FALSE, anvil);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "anvil.format", "Allows the user to use format codes in an anvil", PermissionDefault.FALSE, anvil);
|
|
||||||
+ anvil.recalculatePermissibles();
|
|
||||||
+
|
|
||||||
+ Permission book = DefaultPermissions.registerPermission(PREFIX + "book", "Allows the user to use color codes on books", PermissionDefault.FALSE, purpur);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "book.color.edit", "Allows the user to use color codes on books when editing", PermissionDefault.FALSE, book);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "book.color.sign", "Allows the user to use color codes on books when signing", PermissionDefault.FALSE, book);
|
|
||||||
+ book.recalculatePermissibles();
|
|
||||||
+
|
|
||||||
+ Permission sign = DefaultPermissions.registerPermission(PREFIX + "sign", "Allows the user to use all sign abilities", PermissionDefault.FALSE, purpur);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "sign.edit", "Allows the user to click signs to open sign editor", PermissionDefault.FALSE, sign);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "sign.color", "Allows the user to use color codes on signs", PermissionDefault.FALSE, sign);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "sign.style", "Allows the user to use style codes on signs", PermissionDefault.FALSE, sign);
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "sign.magic", "Allows the user to use magic/obfuscate code on signs", PermissionDefault.FALSE, sign);
|
|
||||||
+ sign.recalculatePermissibles();
|
|
||||||
+
|
|
||||||
+ Permission ride = DefaultPermissions.registerPermission("allow.ride", "Allows the user to ride all mobs", PermissionDefault.FALSE, purpur);
|
|
||||||
+ for (String mob : mobs) {
|
|
||||||
+ DefaultPermissions.registerPermission("allow.ride." + mob, "Allows the user to ride " + mob, PermissionDefault.FALSE, ride);
|
|
||||||
+ }
|
|
||||||
+ ride.recalculatePermissibles();
|
|
||||||
+
|
|
||||||
+ Permission special = DefaultPermissions.registerPermission("allow.special", "Allows the user to use all mobs special abilities", PermissionDefault.FALSE, purpur);
|
|
||||||
+ for (String mob : mobs) {
|
|
||||||
+ DefaultPermissions.registerPermission("allow.special." + mob, "Allows the user to use " + mob + " special ability", PermissionDefault.FALSE, special);
|
|
||||||
+ }
|
|
||||||
+ special.recalculatePermissibles();
|
|
||||||
+
|
|
||||||
+ Permission powered = DefaultPermissions.registerPermission("allow.powered", "Allows the user to toggle all mobs powered state", PermissionDefault.FALSE, purpur);
|
|
||||||
+ DefaultPermissions.registerPermission("allow.powered.creeper", "Allows the user to toggle creeper powered state", PermissionDefault.FALSE, powered);
|
|
||||||
+ powered.recalculatePermissibles();
|
|
||||||
+
|
|
||||||
+ DefaultPermissions.registerPermission(PREFIX + "portal.instant", "Allows the user to bypass portal wait time", PermissionDefault.FALSE, purpur);
|
|
||||||
+
|
|
||||||
+ purpur.recalculatePermissibles();
|
|
||||||
+ return purpur;
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
--- a/src/main/java/org/bukkit/util/permissions/CommandPermissions.java
|
||||||
|
+++ b/src/main/java/org/bukkit/util/permissions/CommandPermissions.java
|
||||||
|
@@ -18,6 +_,7 @@
|
||||||
|
DefaultPermissions.registerPermission(PREFIX + "plugins", "Allows the user to view the list of plugins running on this server", PermissionDefault.TRUE, commands);
|
||||||
|
DefaultPermissions.registerPermission(PREFIX + "reload", "Allows the user to reload the server settings", PermissionDefault.OP, commands);
|
||||||
|
DefaultPermissions.registerPermission(PREFIX + "version", "Allows the user to view the version of the server", PermissionDefault.TRUE, commands);
|
||||||
|
+ DefaultPermissions.registerPermission(PREFIX + "purpur", "Allows the user to use the purpur command", PermissionDefault.OP, commands); // Purpur - Default permissions
|
||||||
|
|
||||||
|
commands.recalculatePermissibles();
|
||||||
|
return commands;
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
--- a/src/main/java/org/bukkit/util/permissions/DefaultPermissions.java
|
||||||
|
+++ b/src/main/java/org/bukkit/util/permissions/DefaultPermissions.java
|
||||||
|
@@ -89,6 +_,8 @@
|
||||||
|
CommandPermissions.registerPermissions(parent);
|
||||||
|
BroadcastPermissions.registerPermissions(parent);
|
||||||
|
|
||||||
|
+ org.purpurmc.purpur.util.permissions.PurpurPermissions.registerPermissions(); // Purpur - Default permissions
|
||||||
|
+
|
||||||
|
parent.recalculatePermissibles();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
package org.purpurmc.purpur.util.permissions;
|
||||||
|
|
||||||
|
import org.bukkit.entity.Entity;
|
||||||
|
import org.bukkit.entity.EntityType;
|
||||||
|
import org.bukkit.entity.Mob;
|
||||||
|
import org.bukkit.permissions.Permission;
|
||||||
|
import org.bukkit.permissions.PermissionDefault;
|
||||||
|
import org.bukkit.util.permissions.DefaultPermissions;
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
public final class PurpurPermissions {
|
||||||
|
private static final String ROOT = "purpur";
|
||||||
|
private static final String PREFIX = ROOT + ".";
|
||||||
|
private static final Set<String> mobs = new HashSet<>();
|
||||||
|
|
||||||
|
static {
|
||||||
|
for (EntityType mob : EntityType.values()) {
|
||||||
|
Class<? extends Entity> clazz = mob.getEntityClass();
|
||||||
|
if (clazz != null && Mob.class.isAssignableFrom(clazz)) {
|
||||||
|
mobs.add(mob.getName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@NotNull
|
||||||
|
public static Permission registerPermissions() {
|
||||||
|
Permission purpur = DefaultPermissions.registerPermission(ROOT, "Gives the user the ability to use all Purpur utilities and commands", PermissionDefault.FALSE);
|
||||||
|
|
||||||
|
purpur.recalculatePermissibles();
|
||||||
|
return purpur;
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user