PaperMC/Spigot-Server-Patches/0433-Bees-get-gravity-in-void.-Fixes-MC-167279.patch
Shane Freeder 55b3a09dde
Updated Upstream (Bukkit/CraftBukkit/Spigot)
Upstream has released updates that appears 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:
d0800d0c Update checkstyle
e4e4bf70 Remove package-info from tests, breaks some IDEs
d6651bb0 No longer necessary to synchronize sync events

CraftBukkit Changes:
e82b5477 SPIGOT-5556: Some biome methods use incorrect positions
544ccdc5 Update checkstyle
512ff7a5 Print legacy load reason in debug mode
df371c1b SPIGOT-5554: Clear error message when BossBar is used for not fully joined players
18168500 Update scriptus
6bbb4e73 Clean up CraftBlockData.toString
b1e96bd5 SPIGOT-5551: BlockState.setData fails when used by legacy plugin

Spigot Changes:
b9baf717 Add space before ocean seed output
13394884 Rebuild patches
2020-02-01 15:20:54 +00:00

58 lines
2.5 KiB
Diff

From e55cf10671e8ba7ac7887ad0fcc5325464705e4a Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Sun, 26 Jan 2020 16:30:19 -0600
Subject: [PATCH] Bees get gravity in void. Fixes MC-167279
diff --git a/src/main/java/net/minecraft/server/ControllerMove.java b/src/main/java/net/minecraft/server/ControllerMove.java
index 7e3671dae..a5c4cbb67 100644
--- a/src/main/java/net/minecraft/server/ControllerMove.java
+++ b/src/main/java/net/minecraft/server/ControllerMove.java
@@ -2,7 +2,7 @@ package net.minecraft.server;
public class ControllerMove {
- protected final EntityInsentient a;
+ protected final EntityInsentient a; public EntityInsentient getEntity() { return a; } // Paper - OBFHELPER
protected double b;
protected double c;
protected double d;
diff --git a/src/main/java/net/minecraft/server/ControllerMoveFlying.java b/src/main/java/net/minecraft/server/ControllerMoveFlying.java
index 2b6ac2eeb..0496c0c5d 100644
--- a/src/main/java/net/minecraft/server/ControllerMoveFlying.java
+++ b/src/main/java/net/minecraft/server/ControllerMoveFlying.java
@@ -12,7 +12,7 @@ public class ControllerMoveFlying extends ControllerMove {
}
@Override
- public void a() {
+ public void a() { tick(); } public void tick() { // Paper - OBFHELPER
if (this.h == ControllerMove.Operation.MOVE_TO) {
this.h = ControllerMove.Operation.WAIT;
this.a.setNoGravity(true);
diff --git a/src/main/java/net/minecraft/server/EntityBee.java b/src/main/java/net/minecraft/server/EntityBee.java
index f67d66b9a..6154c4470 100644
--- a/src/main/java/net/minecraft/server/EntityBee.java
+++ b/src/main/java/net/minecraft/server/EntityBee.java
@@ -36,7 +36,17 @@ public class EntityBee extends EntityAnimal implements EntityBird {
public EntityBee(EntityTypes<? extends EntityBee> entitytypes, World world) {
super(entitytypes, world);
- this.moveController = new ControllerMoveFlying(this, 20, true);
+ // Paper start - apply gravity to bees when they get stuck in the void, fixes MC-167279
+ this.moveController = new ControllerMoveFlying(this, 20, true) {
+ @Override
+ public void tick() {
+ if (getEntity().locY() <= 0) {
+ getEntity().setNoGravity(false);
+ }
+ super.tick();
+ }
+ };
+ // Paper end
this.lookController = new EntityBee.j(this);
this.a(PathType.WATER, -1.0F);
this.a(PathType.COCOA, -1.0F);
--
2.25.0