Fix untrack event not being called for all 'untracks' (#10110)

This commit is contained in:
Jake Potrebic 2024-01-03 20:57:49 -08:00 committed by GitHub
parent 1fa48d140c
commit ae001ae6ee
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 34 additions and 15 deletions

View file

@ -6,10 +6,10 @@ 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..db0a011815daf2690deb4ad2aff08227664fc6b8
index 0000000000000000000000000000000000000000..40024c8d5fe81e23eae9b37a08fca34a91e40011
--- /dev/null
+++ b/src/main/java/io/papermc/paper/event/player/PlayerTrackEntityEvent.java
@@ -0,0 +1,56 @@
@@ -0,0 +1,59 @@
+package io.papermc.paper.event.player;
+
+import org.bukkit.entity.Entity;
@ -23,6 +23,9 @@ index 0000000000000000000000000000000000000000..db0a011815daf2690deb4ad2aff08227
+ * Is called when a {@link Player} tracks an {@link Entity}.
+ * <p>
+ * If cancelled entity is not shown to the player and interaction in both directions is not possible.
+ * <p>
+ * Adding or removing entities from the world at the point in time this event is called is completely
+ * unsupported and should be avoided.
+ */
+public class PlayerTrackEntityEvent extends PlayerEvent implements Cancellable {
+
@ -68,10 +71,10 @@ index 0000000000000000000000000000000000000000..db0a011815daf2690deb4ad2aff08227
+}
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
index 0000000000000000000000000000000000000000..82bb2d2b4bf05d7b4e8dd22280deb04433c2ad9e
--- /dev/null
+++ b/src/main/java/io/papermc/paper/event/player/PlayerUntrackEntityEvent.java
@@ -0,0 +1,41 @@
@@ -0,0 +1,44 @@
+package io.papermc.paper.event.player;
+
+import org.bukkit.entity.Entity;
@ -82,6 +85,9 @@ index 0000000000000000000000000000000000000000..683710d53e3802ca1cb1a448886a57df
+
+/**
+ * Is called when a {@link Player} untracks an {@link Entity}.
+ * <p>
+ * Adding or removing entities from the world at the point in time this event is called is completely
+ * unsupported and should be avoided.
+ */
+public class PlayerUntrackEntityEvent extends PlayerEvent {
+