diff --git a/src/main/java/fr/k0bus/creativemanager/event/PlayerBreak.java b/src/main/java/fr/k0bus/creativemanager/event/PlayerBreak.java index e9a9bdc..4b10b5f 100644 --- a/src/main/java/fr/k0bus/creativemanager/event/PlayerBreak.java +++ b/src/main/java/fr/k0bus/creativemanager/event/PlayerBreak.java @@ -77,11 +77,12 @@ public void checkLog(BlockBreakEvent e) for (Block block:blocks) { Player p = e.getPlayer(); if(!p.getGameMode().equals(GameMode.CREATIVE)) { - if (!p.hasPermission("creativemanager.bypass.break-creative")) + if (!p.hasPermission("creativemanager.bypass.break")) { BlockLog blockLog = plugin.getDataManager().getBlockFrom(block.getLocation()); if (blockLog != null) { if (blockLog.isCreative()) { + if (!CreativeManager.getSettings().getProtection(Protections.BREAK)) continue; e.setCancelled(true); return; } diff --git a/src/main/java/fr/k0bus/creativemanager/settings/Protections.java b/src/main/java/fr/k0bus/creativemanager/settings/Protections.java index d0eba64..a9bcd7f 100644 --- a/src/main/java/fr/k0bus/creativemanager/settings/Protections.java +++ b/src/main/java/fr/k0bus/creativemanager/settings/Protections.java @@ -38,7 +38,8 @@ public enum Protections { ARMOR("armor", Material.CHAINMAIL_HELMET, "Set a defined player armor set", "Creative Armor"), PL_ITEMSADDER("itemsadder", Material.REDSTONE_BLOCK, "Deny player to use itemsadder features", "ItemsAdder"), BUILD_CONTAINER("build-container", Material.CHEST, "Deny player to place block with items in inventory", "Place container"), - REMOVE_EFFECTS("remove-effects", Material.POTION, "Remove all potion effect when player switch gamemode", "Remove effects"); + REMOVE_EFFECTS("remove-effects", Material.POTION, "Remove all potion effect when player switch gamemode", "Remove effects"), + BREAK("break", Material.BARRIER, "Deny survival player to break creative placed blocks", "Break Creative Block"); private final String name; private final Material icon; diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index 13ecb85..1780e42 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -29,6 +29,7 @@ protections: armor: false build-container: true #Bypass : creativemanager.bypass.build-container remove-effects: false + break: true # Deny survival players from breaking blocks placed in creative mode. Bypass: creativemanager.bypass.break itemsadder: true plugins: citizens: true diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 91be6b3..81bfcff 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -72,6 +72,9 @@ permissions: creativemanager.bypass.loot: description: "Allow loot creative placed block" default: op + creativemanager.bypass.break: + description: "Allow breaking creative placed blocks" + default: op creativemanager.bypass.spawn_build: description: "Allow creative player to build golem" default: op