e105354330
Also fixes EntityBreakDoorEvent not having the correct 'to' block data Also standardizes how to handle EntityChangeBlockEvent before a removeBlock or destroyBlock call. Always use 'state.getFluidState().createLegacyBlock()' to get the new state instead of just using the 'air' state.
102 Zeilen
2.9 KiB
Diff
102 Zeilen
2.9 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Yannick Lamprecht <yannicklamprecht@live.de>
|
|
Date: Wed, 30 Mar 2022 18:16:37 +0200
|
|
Subject: [PATCH] Player Entity Tracking Events
|
|
|
|
|
|
diff --git a/src/main/java/io/papermc/paper/event/player/PlayerTrackEntityEvent.java b/src/main/java/io/papermc/paper/event/player/PlayerTrackEntityEvent.java
|
|
new file mode 100644
|
|
index 0000000000000000000000000000000000000000..167be75dc616578db2df1a88f1a54b17707b3a88
|
|
--- /dev/null
|
|
+++ b/src/main/java/io/papermc/paper/event/player/PlayerTrackEntityEvent.java
|
|
@@ -0,0 +1,42 @@
|
|
+package io.papermc.paper.event.player;
|
|
+
|
|
+import org.bukkit.entity.Entity;
|
|
+import org.bukkit.entity.Player;
|
|
+import org.bukkit.event.HandlerList;
|
|
+import org.bukkit.event.player.PlayerEvent;
|
|
+import org.jetbrains.annotations.NotNull;
|
|
+
|
|
+/**
|
|
+ * Is called when a {@link Player} tracks an {@link Entity}.
|
|
+ */
|
|
+public class PlayerTrackEntityEvent extends PlayerEvent {
|
|
+
|
|
+ private static final HandlerList handlers = new HandlerList();
|
|
+ private final Entity entity;
|
|
+
|
|
+ public PlayerTrackEntityEvent(@NotNull Player player, @NotNull Entity entity) {
|
|
+ super(player);
|
|
+ this.entity = entity;
|
|
+ }
|
|
+
|
|
+ @NotNull
|
|
+ public static HandlerList getHandlerList() {
|
|
+ return handlers;
|
|
+ }
|
|
+
|
|
+ @NotNull
|
|
+ @Override
|
|
+ public HandlerList getHandlers() {
|
|
+ return handlers;
|
|
+ }
|
|
+
|
|
+ /**
|
|
+ * Gets the entity that will be tracked
|
|
+ *
|
|
+ * @return the entity tracked
|
|
+ */
|
|
+ @NotNull
|
|
+ public Entity getEntity() {
|
|
+ return entity;
|
|
+ }
|
|
+}
|
|
diff --git a/src/main/java/io/papermc/paper/event/player/PlayerUntrackEntityEvent.java b/src/main/java/io/papermc/paper/event/player/PlayerUntrackEntityEvent.java
|
|
new file mode 100644
|
|
index 0000000000000000000000000000000000000000..683710d53e3802ca1cb1a448886a57df6b15dd44
|
|
--- /dev/null
|
|
+++ b/src/main/java/io/papermc/paper/event/player/PlayerUntrackEntityEvent.java
|
|
@@ -0,0 +1,41 @@
|
|
+package io.papermc.paper.event.player;
|
|
+
|
|
+import org.bukkit.entity.Entity;
|
|
+import org.bukkit.entity.Player;
|
|
+import org.bukkit.event.HandlerList;
|
|
+import org.bukkit.event.player.PlayerEvent;
|
|
+import org.jetbrains.annotations.NotNull;
|
|
+
|
|
+/**
|
|
+ * Is called when a {@link Player} untracks an {@link Entity}.
|
|
+ */
|
|
+public class PlayerUntrackEntityEvent extends PlayerEvent {
|
|
+
|
|
+ private static final HandlerList handlers = new HandlerList();
|
|
+ private final Entity entity;
|
|
+
|
|
+ public PlayerUntrackEntityEvent(@NotNull Player player, @NotNull Entity entity) {
|
|
+ super(player);
|
|
+ this.entity = entity;
|
|
+ }
|
|
+
|
|
+ @NotNull
|
|
+ public static HandlerList getHandlerList() {
|
|
+ return handlers;
|
|
+ }
|
|
+
|
|
+ @NotNull
|
|
+ @Override
|
|
+ public HandlerList getHandlers() {
|
|
+ return handlers;
|
|
+ }
|
|
+
|
|
+ /**
|
|
+ * Gets the entity that will be untracked
|
|
+ * @return the entity untracked
|
|
+ */
|
|
+ @NotNull
|
|
+ public Entity getEntity() {
|
|
+ return entity;
|
|
+ }
|
|
+}
|