mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-11 09:23:42 +01:00
4e958e229f
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com> Co-authored-by: zml <zml@stellardrift.ca> Co-authored-by: Mariell Hoversholm <proximyst@proximyst.com>
55 lines
2.7 KiB
Diff
55 lines
2.7 KiB
Diff
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 558523817e98711cca6d1671af98df6f8c5f0b07..8f9fb058c11ba5c2e887df048025284cd834ffe9 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 final 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 2778cb9069ef3ba4049a9a3dc7c788cd50f98c28..2b1db4bf21f7341dbdf27673e123936d9eaa7f95 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 882c430f645a1addb24f83bc5f592cbe19daade8..c14e07f3c3017e5a5355b1770b94ee4dcc8cc017 100644
|
|
--- a/src/main/java/net/minecraft/server/EntityBee.java
|
|
+++ b/src/main/java/net/minecraft/server/EntityBee.java
|
|
@@ -37,7 +37,17 @@ public class EntityBee extends EntityAnimal implements IEntityAngerable, EntityB
|
|
|
|
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.DANGER_FIRE, -1.0F);
|
|
this.a(PathType.WATER, -1.0F);
|