From c2f18ccc45dbfd5dd935ad45fed95f46978de5ee Mon Sep 17 00:00:00 2001 From: BillyGalbreath <BillyGalbreath@users.noreply.github.com> Date: Sun, 26 Jan 2020 17:59:43 -0600 Subject: [PATCH] Fix #2906 - Bees get gravity in void - Fixes MC-167279 (#2912) --- ...get-gravity-in-void.-Fixes-MC-167279.patch | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 Spigot-Server-Patches/Bees-get-gravity-in-void.-Fixes-MC-167279.patch diff --git a/Spigot-Server-Patches/Bees-get-gravity-in-void.-Fixes-MC-167279.patch b/Spigot-Server-Patches/Bees-get-gravity-in-void.-Fixes-MC-167279.patch new file mode 100644 index 0000000000..0b81f22875 --- /dev/null +++ b/Spigot-Server-Patches/Bees-get-gravity-in-void.-Fixes-MC-167279.patch @@ -0,0 +1,56 @@ +From 0000000000000000000000000000000000000000 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 +@@ -0,0 +0,0 @@ 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 +@@ -0,0 +0,0 @@ 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 +@@ -0,0 +0,0 @@ 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); +-- \ No newline at end of file