From 3b314f5953d6b5f4e0a0bd0345495c30c4c48aa8 Mon Sep 17 00:00:00 2001 From: md_5 Date: Tue, 17 Dec 2019 12:27:25 +1100 Subject: [PATCH] SPIGOT-5459: Add minecraft.debugstick.always permission to allow use in survival etc --- .../0100-Add-creative-mode-NBT-permissions.patch | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/CraftBukkit-Patches/0100-Add-creative-mode-NBT-permissions.patch b/CraftBukkit-Patches/0100-Add-creative-mode-NBT-permissions.patch index a4182517..a095b9db 100644 --- a/CraftBukkit-Patches/0100-Add-creative-mode-NBT-permissions.patch +++ b/CraftBukkit-Patches/0100-Add-creative-mode-NBT-permissions.patch @@ -1,4 +1,4 @@ -From 93324f6798fb3003852413a6c83d10c62c527e58 Mon Sep 17 00:00:00 2001 +From 1a4d07551cc521d8b4bd04452c2cc9b9bb9bf351 Mon Sep 17 00:00:00 2001 From: md_5 Date: Mon, 25 Feb 2019 19:26:56 +1100 Subject: [PATCH] Add creative mode NBT permissions @@ -18,7 +18,7 @@ index df2068e3..ab875a73 100644 } diff --git a/src/main/java/net/minecraft/server/ItemDebugStick.java b/src/main/java/net/minecraft/server/ItemDebugStick.java -index a67f89bc..23f19fc3 100644 +index a67f89bc..1a7fdb68 100644 --- a/src/main/java/net/minecraft/server/ItemDebugStick.java +++ b/src/main/java/net/minecraft/server/ItemDebugStick.java @@ -38,7 +38,7 @@ public class ItemDebugStick extends Item { @@ -26,7 +26,7 @@ index a67f89bc..23f19fc3 100644 private void a(EntityHuman entityhuman, IBlockData iblockdata, GeneratorAccess generatoraccess, BlockPosition blockposition, boolean flag, ItemStack itemstack) { - if (entityhuman.isCreativeAndOp()) { -+ if (entityhuman.isCreativeAndOp() || (entityhuman.abilities.canInstantlyBuild && entityhuman.getBukkitEntity().hasPermission("minecraft.debugstick"))) { ++ if (entityhuman.isCreativeAndOp() || (entityhuman.abilities.canInstantlyBuild && entityhuman.getBukkitEntity().hasPermission("minecraft.debugstick")) || entityhuman.getBukkitEntity().hasPermission("minecraft.debugstick.always")) { // Spigot Block block = iblockdata.getBlock(); BlockStateList blockstatelist = block.getStates(); Collection> collection = blockstatelist.d(); @@ -44,17 +44,18 @@ index 00976a27..ba029351 100644 TileEntity tileentity = this.player.world.getTileEntity(blockposition); diff --git a/src/main/java/org/bukkit/craftbukkit/util/permissions/CraftDefaultPermissions.java b/src/main/java/org/bukkit/craftbukkit/util/permissions/CraftDefaultPermissions.java -index 6bea250b..574aee62 100644 +index 6bea250b..d936b928 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/permissions/CraftDefaultPermissions.java +++ b/src/main/java/org/bukkit/craftbukkit/util/permissions/CraftDefaultPermissions.java -@@ -11,6 +11,11 @@ public final class CraftDefaultPermissions { +@@ -11,6 +11,12 @@ public final class CraftDefaultPermissions { public static void registerCorePermissions() { Permission parent = DefaultPermissions.registerPermission(ROOT, "Gives the user the ability to use all vanilla utilities and commands"); CommandPermissions.registerPermissions(parent); + // Spigot start + DefaultPermissions.registerPermission(ROOT + ".nbt.place", "Gives the user the ability to place restricted blocks with NBT in creative", org.bukkit.permissions.PermissionDefault.OP, parent); + DefaultPermissions.registerPermission(ROOT + ".nbt.copy", "Gives the user the ability to copy NBT in creative", org.bukkit.permissions.PermissionDefault.TRUE, parent); -+ DefaultPermissions.registerPermission(ROOT + ".debugstick", "Gives the user the ability to use the debug stick creative", org.bukkit.permissions.PermissionDefault.OP, parent); ++ DefaultPermissions.registerPermission(ROOT + ".debugstick", "Gives the user the ability to use the debug stick in creative", org.bukkit.permissions.PermissionDefault.OP, parent); ++ DefaultPermissions.registerPermission(ROOT + ".debugstick.always", "Gives the user the ability to use the debug stick in all game modes", org.bukkit.permissions.PermissionDefault.FALSE, parent); + // Spigot end parent.recalculatePermissibles(); }