mirror of
https://github.com/PaperMC/Paper.git
synced 2024-11-30 04:02:50 +01:00
4c9bdf53ac
Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 9d0ad318 Fix javadoc errors in previous commits 9501daa2 #578: Add methods to modify the rate of regeneration and starvation 197d8f3d #577: Add EntityExhaustionEvent CraftBukkit Changes: a021e334 #795: Add methods to modify the rate of regeneration and starvation 509e523c #792: Add EntityExhaustionEvent Spigot Changes: db99f821 Rebuild patches
33 lines
1.5 KiB
Diff
33 lines
1.5 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Zach Brown <zach@zachbr.io>
|
|
Date: Mon, 4 Feb 2019 23:33:24 -0500
|
|
Subject: [PATCH] Block Entity#remove from being called on Players
|
|
|
|
This doesn't result in the same behavior as other entities and causes
|
|
several problems. Anyone ever complain about the "Cannot send chat
|
|
message" thing? That's one of the issues this causes, among others.
|
|
|
|
If a plugin developer can come up with a valid reason to call this on a
|
|
Player we will look at limiting the scope of this change. It appears to
|
|
be unintentional in the few cases we've seen so far.
|
|
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
|
index 78b6860a9b786a9ca74e76f1e550b43be369e699..719e2ce08e780e9d6e2bbfe0e5b1b9d5be5c3e53 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
|
@@ -2225,6 +2225,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
|
public void resetCooldown() {
|
|
getHandle().resetAttackCooldown();
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public void remove() {
|
|
+ if (this.getHandle().getClass().equals(EntityPlayer.class)) { // special case for NMS plugins inheriting
|
|
+ throw new UnsupportedOperationException("Calling Entity#remove on players produces undefined (bad) behavior");
|
|
+ } else {
|
|
+ super.remove();
|
|
+ }
|
|
+ }
|
|
// Paper end
|
|
|
|
// Spigot start
|