mirror of
https://github.com/PaperMC/Paper.git
synced 2024-11-30 06:24:06 +01:00
Fix EntityDismountEvent and VehicleExitEvent cancellation
Perhaps "workaround" would be the better term
This commit is contained in:
parent
a6536804fd
commit
4f7b7bb31a
@ -1,9 +1,8 @@
|
|||||||
From 32304a72413a8faddc6192b78f7bbc5850810763 Mon Sep 17 00:00:00 2001
|
From e99524d7eec1240e136ac933dccd3f8ac9e72902 Mon Sep 17 00:00:00 2001
|
||||||
From: Zach Brown <zach.brown@destroystokyo.com>
|
From: Zach Brown <zach.brown@destroystokyo.com>
|
||||||
Date: Fri, 22 Apr 2016 01:43:11 -0500
|
Date: Fri, 22 Apr 2016 01:43:11 -0500
|
||||||
Subject: [PATCH] EntityRegainHealthEvent isFastRegen API
|
Subject: [PATCH] EntityRegainHealthEvent isFastRegen API
|
||||||
|
|
||||||
Don't even get me started
|
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/event/entity/EntityRegainHealthEvent.java b/src/main/java/org/bukkit/event/entity/EntityRegainHealthEvent.java
|
diff --git a/src/main/java/org/bukkit/event/entity/EntityRegainHealthEvent.java b/src/main/java/org/bukkit/event/entity/EntityRegainHealthEvent.java
|
||||||
index a7b3517..703520f 100644
|
index a7b3517..703520f 100644
|
||||||
|
@ -1,20 +1,25 @@
|
|||||||
From 5c4d7d8d8e6ff1d01202e5de62da63fe66c55c96 Mon Sep 17 00:00:00 2001
|
From 031f1df60d5934708755d7afe14817d30fdf8b4d Mon Sep 17 00:00:00 2001
|
||||||
From: Nik Gil <nikmanG@users.noreply.github.com>
|
From: Nik Gil <nikmanG@users.noreply.github.com>
|
||||||
Date: Thu, 3 Mar 2016 04:04:19 -0600
|
Date: Thu, 3 Mar 2016 04:04:19 -0600
|
||||||
Subject: [PATCH] Made EntityDismountEvent Cancellable
|
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
|
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||||
index 782abd6..c3e6588 100644
|
index 782abd6..b15c5f6 100644
|
||||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||||
+++ b/src/main/java/net/minecraft/server/Entity.java
|
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||||
@@ -1741,7 +1741,9 @@ public abstract class Entity implements ICommandListener {
|
@@ -1741,7 +1741,14 @@ public abstract class Entity implements ICommandListener {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
- Bukkit.getPluginManager().callEvent( new org.spigotmc.event.entity.EntityDismountEvent(entity.getBukkitEntity(), this.getBukkitEntity())); // Spigot
|
- Bukkit.getPluginManager().callEvent( new org.spigotmc.event.entity.EntityDismountEvent(entity.getBukkitEntity(), this.getBukkitEntity())); // Spigot
|
||||||
+ // Paper start - make EntityDismountEvent cancellable
|
+ // Paper start - make EntityDismountEvent cancellable
|
||||||
+ if (!new org.spigotmc.event.entity.EntityDismountEvent(entity.getBukkitEntity(), this.getBukkitEntity()).callEvent()) return;
|
+ if (!new org.spigotmc.event.entity.EntityDismountEvent(entity.getBukkitEntity(), this.getBukkitEntity()).callEvent()) {
|
||||||
|
+ if (entity instanceof EntityPlayer) {
|
||||||
|
+ ((EntityPlayer) entity).playerConnection.sendPacket(new net.minecraft.server.PacketPlayOutMount(this));
|
||||||
|
+ }
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
+ // Paper end
|
+ // Paper end
|
||||||
this.passengers.remove(entity);
|
this.passengers.remove(entity);
|
||||||
entity.j = 60;
|
entity.j = 60;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 4fd34aff149d7fee35a8e3b18e2e007bb2225d97 Mon Sep 17 00:00:00 2001
|
From 5f3dd9383f6ea18ea59df19c28d68bea36d87d98 Mon Sep 17 00:00:00 2001
|
||||||
From: Aikar <aikar@aikar.co>
|
From: Aikar <aikar@aikar.co>
|
||||||
Date: Tue, 8 Mar 2016 23:25:45 -0500
|
Date: Tue, 8 Mar 2016 23:25:45 -0500
|
||||||
Subject: [PATCH] Disable Scoreboards for non players by default
|
Subject: [PATCH] Disable Scoreboards for non players by default
|
||||||
@ -37,10 +37,10 @@ index b044f33..1758a56 100644
|
|||||||
|
|
||||||
if (scoreboard.addPlayerToTeam(s2, s)) {
|
if (scoreboard.addPlayerToTeam(s2, s)) {
|
||||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||||
index 5ff5c54..f9626d6 100644
|
index fc4d72f..14ab2da 100644
|
||||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||||
+++ b/src/main/java/net/minecraft/server/Entity.java
|
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||||
@@ -1847,6 +1847,7 @@ public abstract class Entity implements ICommandListener {
|
@@ -1852,6 +1852,7 @@ public abstract class Entity implements ICommandListener {
|
||||||
}
|
}
|
||||||
|
|
||||||
public ScoreboardTeamBase aO() {
|
public ScoreboardTeamBase aO() {
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 113483e5a4e9d1f9f4f0b98b2d80ceb075c323ba Mon Sep 17 00:00:00 2001
|
From 8a8060df1836f7082b54b4fda091c10e1cefd2d6 Mon Sep 17 00:00:00 2001
|
||||||
From: Aikar <aikar@aikar.co>
|
From: Aikar <aikar@aikar.co>
|
||||||
Date: Tue, 22 Mar 2016 00:55:23 -0400
|
Date: Tue, 22 Mar 2016 00:55:23 -0400
|
||||||
Subject: [PATCH] Don't teleport dead entities
|
Subject: [PATCH] Don't teleport dead entities
|
||||||
@ -7,10 +7,10 @@ Had some issue with this in past, and this is the vanilla logic.
|
|||||||
Potentially an old CB change that's no longer needed.
|
Potentially an old CB change that's no longer needed.
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||||
index 4a4fe34..49e6661 100644
|
index 8c26c0e..1bc39f5 100644
|
||||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||||
+++ b/src/main/java/net/minecraft/server/Entity.java
|
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||||
@@ -2097,7 +2097,7 @@ public abstract class Entity implements ICommandListener {
|
@@ -2102,7 +2102,7 @@ public abstract class Entity implements ICommandListener {
|
||||||
}
|
}
|
||||||
|
|
||||||
public Entity teleportTo(Location exit, boolean portal) {
|
public Entity teleportTo(Location exit, boolean portal) {
|
||||||
|
@ -0,0 +1,25 @@
|
|||||||
|
From acbc64e0d3be4b92b05dfb9cac09fd7d2f0f021a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Zach Brown <zach.brown@destroystokyo.com>
|
||||||
|
Date: Fri, 22 Apr 2016 15:42:44 -0500
|
||||||
|
Subject: [PATCH] Fix VehicleExitEvent cancellation
|
||||||
|
|
||||||
|
|
||||||
|
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||||
|
index 8512105..1f59225 100644
|
||||||
|
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||||
|
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||||
|
@@ -1739,6 +1739,11 @@ public abstract class Entity implements ICommandListener {
|
||||||
|
CraftEntity craftn = (CraftEntity) entity.getBukkitEntity().getVehicle();
|
||||||
|
Entity n = craftn == null ? null : craftn.getHandle();
|
||||||
|
if (event.isCancelled() || n != orig) {
|
||||||
|
+ // Paper - Fix cancellation
|
||||||
|
+ if (entity instanceof EntityPlayer) {
|
||||||
|
+ ((EntityPlayer) entity).playerConnection.sendPacket(new net.minecraft.server.PacketPlayOutMount(this));
|
||||||
|
+ }
|
||||||
|
+ // Paper end
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.8.0
|
||||||
|
|
Loading…
Reference in New Issue
Block a user