aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorZach <[email protected]>2016-02-03 03:09:18 -0600
committerZach <[email protected]>2016-02-03 03:09:18 -0600
commit83b700618b2006ab6f779a5752c12bc682a2692c (patch)
tree8bf56aa5704b4d20c9d757c307007dba8c58894e
parent6f0e9e08cdfabeba1f286a9d6d7580577735cc53 (diff)
parentb9d98ad6e8f68a2d8a3340eb62ae56b2e8c25cee (diff)
downloadPaper-83b700618b2006ab6f779a5752c12bc682a2692c.tar.gz
Paper-83b700618b2006ab6f779a5752c12bc682a2692c.zip
Merge pull request #9 from Techcable/cancellable-EntityDismountEvent
Make EntityDismountEvent Cancellable
-rw-r--r--Spigot-API-Patches/0016-Made-EntityDismountEvent-Cancellable.patch47
-rw-r--r--Spigot-Server-Patches/0087-Made-EntityDismountEvent-Cancellable.patch68
2 files changed, 115 insertions, 0 deletions
diff --git a/Spigot-API-Patches/0016-Made-EntityDismountEvent-Cancellable.patch b/Spigot-API-Patches/0016-Made-EntityDismountEvent-Cancellable.patch
new file mode 100644
index 0000000000..0a0c7941de
--- /dev/null
+++ b/Spigot-API-Patches/0016-Made-EntityDismountEvent-Cancellable.patch
@@ -0,0 +1,47 @@
+From 09b55d7828f2499a4179e60f0be9dbb6b7888ba8 Mon Sep 17 00:00:00 2001
+From: Nik Gil <[email protected]>
+Date: Mon, 1 Feb 2016 23:36:31 -0700
+Subject: [PATCH] Made EntityDismountEvent Cancellable
+
+
+diff --git a/src/main/java/org/spigotmc/event/entity/EntityDismountEvent.java b/src/main/java/org/spigotmc/event/entity/EntityDismountEvent.java
+index 24d4942..b35c7c1 100644
+--- a/src/main/java/org/spigotmc/event/entity/EntityDismountEvent.java
++++ b/src/main/java/org/spigotmc/event/entity/EntityDismountEvent.java
+@@ -4,11 +4,15 @@ import org.bukkit.entity.Entity;
+ import org.bukkit.event.HandlerList;
+ import org.bukkit.event.entity.EntityEvent;
+
++// PaperSpigot start
++import org.bukkit.event.Cancellable;
++// PaperSpigot end
++
+ /**
+ * Called when an entity stops riding another entity.
+ *
+ */
+-public class EntityDismountEvent extends EntityEvent
++public class EntityDismountEvent extends EntityEvent implements Cancellable // PaperSpigot - implement Cancellable
+ {
+
+ private static final HandlerList handlers = new HandlerList();
+@@ -36,4 +40,16 @@ public class EntityDismountEvent extends EntityEvent
+ {
+ return handlers;
+ }
++
++ // PaperSpigot start - implement Cancellable methods
++ @Override
++ public boolean isCancelled() {
++ return cancelled;
++ }
++
++ @Override
++ public void setCancelled(boolean cancelled) {
++ this.cancelled = cancelled;
++ }
++ // PaperSpigot end
+ }
+--
+2.7.0
+
diff --git a/Spigot-Server-Patches/0087-Made-EntityDismountEvent-Cancellable.patch b/Spigot-Server-Patches/0087-Made-EntityDismountEvent-Cancellable.patch
new file mode 100644
index 0000000000..c95f84b83a
--- /dev/null
+++ b/Spigot-Server-Patches/0087-Made-EntityDismountEvent-Cancellable.patch
@@ -0,0 +1,68 @@
+From 640d9af4079afb008d0e871446e87af89ff81387 Mon Sep 17 00:00:00 2001
+From: Nik Gil <[email protected]>
+Date: Mon, 1 Feb 2016 23:47:24 -0700
+Subject: [PATCH] Made EntityDismountEvent Cancellable
+
+
+diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
+index ef59b40..2da303f 100644
+--- a/src/main/java/net/minecraft/server/Entity.java
++++ b/src/main/java/net/minecraft/server/Entity.java
+@@ -33,6 +33,10 @@ import org.bukkit.event.entity.EntityPortalEvent;
+ import org.bukkit.plugin.PluginManager;
+ // CraftBukkit end
+
++// PaperSpigot start
++import org.spigotmc.event.entity.EntityDismountEvent;
++// PaperSpigot end
++
+ public abstract class Entity implements ICommandListener {
+
+ // CraftBukkit start
+@@ -1576,7 +1580,11 @@ public abstract class Entity implements ICommandListener {
+ }
+ }
+ // CraftBukkit end
+- pluginManager.callEvent( new org.spigotmc.event.entity.EntityDismountEvent( this.getBukkitEntity(), this.vehicle.getBukkitEntity() ) ); // Spigot
++ // PaperSpigot start - make EntityDismountEvent cancellable
++ EntityDismountEvent dismountEvent = new EntityDismountEvent(this.getBukkitEntity(), this.vehicle.getBukkitEntity()); // Spigot
++ pluginManager.callEvent(dismountEvent);
++ if (dismountEvent.isCancelled()) return;
++ // PaperSpigot end
+ this.setPositionRotation(this.vehicle.locX, this.vehicle.getBoundingBox().b + (double) this.vehicle.length, this.vehicle.locZ, this.yaw, this.pitch);
+ this.vehicle.passenger = null;
+ }
+diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
+index 19a743c..c8b4e29 100644
+--- a/src/main/java/net/minecraft/server/EntityLiving.java
++++ b/src/main/java/net/minecraft/server/EntityLiving.java
+@@ -25,6 +25,11 @@ import org.bukkit.event.vehicle.VehicleExitEvent;
+
+ import co.aikar.timings.SpigotTimings; // Spigot
+
++// PaperSpigot start
++import org.bukkit.Bukkit;
++import org.spigotmc.event.entity.EntityDismountEvent;
++// PaperSpigot end
++
+ public abstract class EntityLiving extends Entity {
+
+ private static final UUID a = UUID.fromString("662A6B8D-DA3E-4C1C-8813-96EA6097278D");
+@@ -1709,8 +1714,12 @@ public abstract class EntityLiving extends Entity {
+ }
+ }
+ // CraftBukkit end
+- org.bukkit.Bukkit.getPluginManager().callEvent( new org.spigotmc.event.entity.EntityDismountEvent( this.getBukkitEntity(), this.vehicle.getBukkitEntity() ) ); // Spigot
+-
++ // PaperSpigot start - make dismountEvent cancellable
++ EntityDismountEvent dismountEvent = new EntityDismountEvent(this.getBukkitEntity(), this.vehicle.getBukkitEntity()); // Spigot
++ Bukkit.getPluginManager().callEvent(dismountEvent);
++ if (dismountEvent.isCancelled()) return;
++ // PaperSpigot end
++
+ if (!this.world.isClientSide) {
+ this.q(this.vehicle);
+ }
+--
+2.7.0
+