diff --git a/pom.xml b/pom.xml index f22091e..f871200 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ cn.lunadeer Dominion - 1.42.0-beta + 1.42.1-beta jar Dominion diff --git a/src/main/java/cn/lunadeer/dominion/dtos/Flag.java b/src/main/java/cn/lunadeer/dominion/dtos/Flag.java index 4bed18d..8a0f677 100644 --- a/src/main/java/cn/lunadeer/dominion/dtos/Flag.java +++ b/src/main/java/cn/lunadeer/dominion/dtos/Flag.java @@ -20,7 +20,7 @@ public enum Flag { BEACON("beacon", "信标交互", "是否允许与信标交互", false, false, true), BED("bed", "床交互", "是否允许使用床睡觉或设置重生点", false, false, true), BREW("brew", "使用酿造台", "是否可以使用酿造台", false, false, true), - BREAK_BLOCK("break", "破坏方块", "是否可以破坏方块(包括:一般方块、展示框)", false, false, true), + BREAK_BLOCK("break", "破坏方块", "是否可以破坏方块(包括:一般方块、展示框、盔甲架)", false, false, true), BUTTON("button", "使用按钮", "是否可以使用各种材质的按钮", false, false, true), CAKE("cake", "吃蛋糕", "是否可以吃蛋糕", false, false, true), CONTAINER("container", "一般容器", "包含:箱子/木桶/潜影盒/盔甲架/展示框", false, false, true), diff --git a/src/main/java/cn/lunadeer/dominion/events/PlayerEvents.java b/src/main/java/cn/lunadeer/dominion/events/PlayerEvents.java index 3a5cae8..3c821de 100644 --- a/src/main/java/cn/lunadeer/dominion/events/PlayerEvents.java +++ b/src/main/java/cn/lunadeer/dominion/events/PlayerEvents.java @@ -140,21 +140,19 @@ public class PlayerEvents implements Listener { event.setCancelled(true); } - @EventHandler(priority = EventPriority.HIGHEST) // break - item frame + @EventHandler(priority = EventPriority.HIGHEST) // break - item frame && armor stand public void onItemFrameBreak(HangingBreakByEntityEvent event) { Entity entity = event.getEntity(); - if (!(entity instanceof ItemFrame)) { + if (!(entity instanceof ItemFrame) && !(entity instanceof ArmorStand)) { return; } - ItemFrame itemFrame = (ItemFrame) entity; Entity remover = event.getRemover(); if (!(remover instanceof Player)) { return; } - if (onBreak((Player) event.getRemover(), itemFrame.getLocation())) { + if (onBreak((Player) event.getRemover(), entity.getLocation())) { return; } - itemFrame.remove(); event.setCancelled(true); }