aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/api/0295-Make-EntityUnleashEvent-cancellable.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/api/0295-Make-EntityUnleashEvent-cancellable.patch')
-rw-r--r--patches/api/0295-Make-EntityUnleashEvent-cancellable.patch49
1 files changed, 49 insertions, 0 deletions
diff --git a/patches/api/0295-Make-EntityUnleashEvent-cancellable.patch b/patches/api/0295-Make-EntityUnleashEvent-cancellable.patch
new file mode 100644
index 0000000000..e99584c277
--- /dev/null
+++ b/patches/api/0295-Make-EntityUnleashEvent-cancellable.patch
@@ -0,0 +1,49 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Jake Potrebic <[email protected]>
+Date: Sun, 3 Jan 2021 21:25:39 -0800
+Subject: [PATCH] Make EntityUnleashEvent cancellable
+
+
+diff --git a/src/main/java/org/bukkit/event/entity/EntityUnleashEvent.java b/src/main/java/org/bukkit/event/entity/EntityUnleashEvent.java
+index e0e068799a1868c8e561869015f41f553ef4fbdb..95248d0f5cf9b62d31a4883955b9088a7fc8a3b3 100644
+--- a/src/main/java/org/bukkit/event/entity/EntityUnleashEvent.java
++++ b/src/main/java/org/bukkit/event/entity/EntityUnleashEvent.java
+@@ -6,11 +6,20 @@ import org.jetbrains.annotations.NotNull;
+
+ /**
+ * Called immediately prior to an entity being unleashed.
++ * <p>
++ * Cancelling this event when either:
++ * <ul>
++ * <li>the leashed entity dies,</li>
++ * <li>the entity changes dimension, or</li>
++ * <li>the client has disconnected the leash</li>
++ * </ul>
++ * will have no effect.
+ */
+-public class EntityUnleashEvent extends EntityEvent {
++public class EntityUnleashEvent extends EntityEvent implements org.bukkit.event.Cancellable { // Paper
+ private static final HandlerList handlers = new HandlerList();
+ private final UnleashReason reason;
+ private boolean dropLeash; // Paper
++ private boolean cancelled; // Paper
+
+ // Paper start - drop leash variable
+ @Deprecated
+@@ -53,6 +62,16 @@ public class EntityUnleashEvent extends EntityEvent {
+ public void setDropLeash(boolean dropLeash) {
+ this.dropLeash = dropLeash;
+ }
++
++ @Override
++ public boolean isCancelled() {
++ return cancelled;
++ }
++
++ @Override
++ public void setCancelled(boolean cancel) {
++ this.cancelled = cancel;
++ }
+ // Paper end
+
+ @NotNull