diff --git a/pom.xml b/pom.xml
index d91e4c1..5d56f5a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
cn.lunadeer
Dominion
- 1.34.6-beta
+ 1.34.7-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 974150b..3e5d1ae 100644
--- a/src/main/java/cn/lunadeer/dominion/dtos/Flag.java
+++ b/src/main/java/cn/lunadeer/dominion/dtos/Flag.java
@@ -28,6 +28,7 @@ public enum Flag {
CREEPER_EXPLODE("creeper_explode", "实体爆炸", "包含:苦力怕/凋零头颅/水晶爆炸", false, true, true),
COMPARER("comparer", "比较器交互", "是否可以修改比较器状态", false, false, true),
DOOR("door", "门交互", "是否可以使用各种材质的门(包括活板门)", false, false, true),
+ DRAGON_EGG("dragon_egg", "触碰龙蛋", "是否可以触碰龙蛋", false, false, true),
DYE("dye", "染色", "是否可以使用染料(对羊、狗项圈、猫项圈)染色", false, false, true),
EDIT_SIGN("edit_sign", "编辑告示牌", "是否可以编辑告示牌", false, false, true),
EGG("egg", "扔鸡蛋", "是否可以扔鸡蛋", 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 351b884..898d46c 100644
--- a/src/main/java/cn/lunadeer/dominion/events/PlayerEvents.java
+++ b/src/main/java/cn/lunadeer/dominion/events/PlayerEvents.java
@@ -6,6 +6,7 @@ import cn.lunadeer.dominion.dtos.Flag;
import cn.lunadeer.dominion.dtos.PlayerDTO;
import cn.lunadeer.minecraftpluginutils.Notification;
import cn.lunadeer.minecraftpluginutils.Teleport;
+import io.papermc.paper.event.block.DragonEggFormEvent;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.Tag;
@@ -313,6 +314,20 @@ public class PlayerEvents implements Listener {
checkFlag(dom, Flag.DOOR, player, event);
}
+ @EventHandler(priority = EventPriority.HIGHEST) // dragon_egg
+ public void touchDragonEdd(PlayerInteractEvent event) {
+ Block block = event.getClickedBlock();
+ if (block == null) {
+ return;
+ }
+ if (block.getType() != Material.DRAGON_EGG) {
+ return;
+ }
+ Player player = event.getPlayer();
+ DominionDTO dom = Cache.instance.getDominion(block.getLocation());
+ checkFlag(dom, Flag.DRAGON_EGG, player, event);
+ }
+
@EventHandler(priority = EventPriority.HIGHEST) // dye
public void dyeEvent(PlayerInteractEntityEvent event) {
Player player = event.getPlayer();