From e6e6115f43feb41c5c2f6adffef4b9f63cce0d0e Mon Sep 17 00:00:00 2001 From: Jasupa Date: Sun, 28 Jun 2026 20:56:23 +0200 Subject: [PATCH] fix(permissions): centralize block palette permission - add block palette edit permission to Permissions - replace local block palette permission constants - verify rail generator still uses centralized generator permission --- .../blockpalettegui/ChoosePaletteMenu.java | 4 ++-- .../blockpalettegui/CreatePaletteMenu.java | 4 ++-- .../blockpalettegui/EditPaletteMenu.java | 12 ++++++------ .../modules/network/model/Permissions.java | 3 +++ 4 files changed, 13 insertions(+), 10 deletions(-) diff --git a/src/main/java/net/buildtheearth/buildteamtools/modules/miscellaneous/blockpalettegui/ChoosePaletteMenu.java b/src/main/java/net/buildtheearth/buildteamtools/modules/miscellaneous/blockpalettegui/ChoosePaletteMenu.java index 125a5637..9a9ac392 100644 --- a/src/main/java/net/buildtheearth/buildteamtools/modules/miscellaneous/blockpalettegui/ChoosePaletteMenu.java +++ b/src/main/java/net/buildtheearth/buildteamtools/modules/miscellaneous/blockpalettegui/ChoosePaletteMenu.java @@ -2,6 +2,7 @@ import com.alpsbte.alpslib.utils.item.Item; import com.cryptomorin.xseries.XMaterial; +import net.buildtheearth.buildteamtools.modules.network.model.Permissions; import net.buildtheearth.buildteamtools.utils.menus.AbstractMenu; import org.bukkit.Material; import org.bukkit.entity.Player; @@ -19,7 +20,6 @@ public class ChoosePaletteMenu extends AbstractMenu { private static final int BACK_SLOT = 36; private static final int ADD_PALETTE_SLOT = 44; - private static final String EDIT_PERMISSION = "btt.bp.edit"; private static final String BACK_HEAD = "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90" @@ -226,7 +226,7 @@ protected void setItemClickEventsAsync() { private boolean hasEditPermission() { try { - return getMenuPlayer().hasPermission(EDIT_PERMISSION); + return getMenuPlayer().hasPermission(Permissions.BLOCK_PALETTE_EDIT); } catch (Exception e) { return false; } diff --git a/src/main/java/net/buildtheearth/buildteamtools/modules/miscellaneous/blockpalettegui/CreatePaletteMenu.java b/src/main/java/net/buildtheearth/buildteamtools/modules/miscellaneous/blockpalettegui/CreatePaletteMenu.java index 5b154a7d..3f6d0b9e 100644 --- a/src/main/java/net/buildtheearth/buildteamtools/modules/miscellaneous/blockpalettegui/CreatePaletteMenu.java +++ b/src/main/java/net/buildtheearth/buildteamtools/modules/miscellaneous/blockpalettegui/CreatePaletteMenu.java @@ -4,6 +4,7 @@ import com.cryptomorin.xseries.XMaterial; import io.papermc.paper.event.player.AsyncChatEvent; import lombok.Getter; +import net.buildtheearth.buildteamtools.modules.network.model.Permissions; import net.buildtheearth.buildteamtools.utils.menus.AbstractMenu; import net.kyori.adventure.text.logger.slf4j.ComponentLogger; import net.kyori.adventure.text.serializer.plain.PlainTextComponentSerializer; @@ -44,7 +45,6 @@ public class CreatePaletteMenu extends AbstractMenu { private static final int MAX_NAME_LENGTH = 32; private static final int MAX_DESCRIPTION_LENGTH = 256; - private static final String EDIT_PERMISSION = "btt.bp.edit"; private final BlockPaletteManager manager; private final JavaPlugin plugin; @@ -162,7 +162,7 @@ protected void setItemClickEventsAsync() { // Apply getMenu().getSlot(APPLY_SLOT).setClickHandler((p, i) -> { - if (!p.hasPermission(EDIT_PERMISSION)) { + if (!p.hasPermission(Permissions.BLOCK_PALETTE_EDIT)) { p.sendMessage("§cYou do not have permission to create palettes."); return; } diff --git a/src/main/java/net/buildtheearth/buildteamtools/modules/miscellaneous/blockpalettegui/EditPaletteMenu.java b/src/main/java/net/buildtheearth/buildteamtools/modules/miscellaneous/blockpalettegui/EditPaletteMenu.java index c1008d57..a137041b 100644 --- a/src/main/java/net/buildtheearth/buildteamtools/modules/miscellaneous/blockpalettegui/EditPaletteMenu.java +++ b/src/main/java/net/buildtheearth/buildteamtools/modules/miscellaneous/blockpalettegui/EditPaletteMenu.java @@ -3,6 +3,7 @@ import com.alpsbte.alpslib.utils.item.Item; import com.cryptomorin.xseries.XMaterial; import io.papermc.paper.event.player.AsyncChatEvent; +import net.buildtheearth.buildteamtools.modules.network.model.Permissions; import net.buildtheearth.buildteamtools.utils.menus.AbstractMenu; import net.kyori.adventure.text.serializer.plain.PlainTextComponentSerializer; import org.bukkit.Bukkit; @@ -42,7 +43,6 @@ public class EditPaletteMenu extends AbstractMenu { private static final int MAX_NAME_LENGTH = 32; private static final int MAX_DESCRIPTION_LENGTH = 256; - private static final String EDIT_PERMISSION = "btt.bp.edit"; private final BlockPaletteManager manager; private final JavaPlugin plugin; @@ -122,7 +122,7 @@ protected void setMenuItemsAsync() { protected void setItemClickEventsAsync() { // Name getMenu().getSlot(NAME_SLOT).setClickHandler((p, i) -> { - if (!p.hasPermission(EDIT_PERMISSION)) { + if (!p.hasPermission(Permissions.BLOCK_PALETTE_EDIT)) { p.sendMessage("§cYou do not have permission to edit palettes."); return; } @@ -140,7 +140,7 @@ protected void setItemClickEventsAsync() { // Description getMenu().getSlot(DESCRIPTION_SLOT).setClickHandler((p, i) -> { - if (!p.hasPermission(EDIT_PERMISSION)) { + if (!p.hasPermission(Permissions.BLOCK_PALETTE_EDIT)) { p.sendMessage("§cYou do not have permission to edit palettes."); return; } @@ -158,7 +158,7 @@ protected void setItemClickEventsAsync() { // Blocks getMenu().getSlot(BLOCKS_SLOT).setClickHandler((p, i) -> { - if (!p.hasPermission(EDIT_PERMISSION)) { + if (!p.hasPermission(Permissions.BLOCK_PALETTE_EDIT)) { p.sendMessage("§cYou do not have permission to edit palettes."); return; } @@ -175,7 +175,7 @@ protected void setItemClickEventsAsync() { // Delete getMenu().getSlot(DELETE_SLOT).setClickHandler((p, i) -> { - if (!p.hasPermission(EDIT_PERMISSION)) { + if (!p.hasPermission(Permissions.BLOCK_PALETTE_EDIT)) { p.sendMessage("§cYou do not have permission to delete palettes."); return; } @@ -201,7 +201,7 @@ protected void setItemClickEventsAsync() { // Apply getMenu().getSlot(APPLY_SLOT).setClickHandler((p, i) -> { - if (!p.hasPermission(EDIT_PERMISSION)) { + if (!p.hasPermission(Permissions.BLOCK_PALETTE_EDIT)) { p.sendMessage("§cYou do not have permission to edit palettes."); return; } diff --git a/src/main/java/net/buildtheearth/buildteamtools/modules/network/model/Permissions.java b/src/main/java/net/buildtheearth/buildteamtools/modules/network/model/Permissions.java index 5881ddb9..1f3c2793 100644 --- a/src/main/java/net/buildtheearth/buildteamtools/modules/network/model/Permissions.java +++ b/src/main/java/net/buildtheearth/buildteamtools/modules/network/model/Permissions.java @@ -17,6 +17,9 @@ public class Permissions { public static final String GENERATOR_USE = "btt.generator.use"; + public static final String BLOCK_PALETTE_EDIT = "btt.bp.edit"; + + public static final String NAVIGATOR_USE = "btt.navigator.use";