From cc8cb0bb4c15395cd079313c3d233edbb0c310c9 Mon Sep 17 00:00:00 2001 From: Sotr Date: Mon, 18 Mar 2019 19:06:16 +0800 Subject: [PATCH] Upstream Paper --- .../net/minecraft/server/AxisAlignedBB.java | 12 ++++++------ src/main/java/net/minecraft/server/Entity.java | 17 ----------------- .../java/net/minecraft/server/PlayerList.java | 1 + .../block/CraftBlockEntityState.java | 6 +----- 4 files changed, 8 insertions(+), 28 deletions(-) diff --git a/src/main/java/net/minecraft/server/AxisAlignedBB.java b/src/main/java/net/minecraft/server/AxisAlignedBB.java index d6a5c7407..dad1ff737 100644 --- a/src/main/java/net/minecraft/server/AxisAlignedBB.java +++ b/src/main/java/net/minecraft/server/AxisAlignedBB.java @@ -5,12 +5,12 @@ import javax.annotation.Nullable; public class AxisAlignedBB { - public final double minX; public double getMinX() { return this.minX; } // Paper - OBFHELPER - public final double minY; public double getMinY() { return this.minY; } // Paper - OBFHELPER - public final double minZ; public double getMinZ() { return this.minZ; } // Paper - OBFHELPER - public final double maxX; public double getMaxX() { return this.maxX; } // Paper - OBFHELPER - public final double maxY; public double getMaxY() { return this.maxY; } // Paper - OBFHELPER - public final double maxZ; public double getMaxZ() { return this.maxZ; } // Paper - OBFHELPER + public final double minX; + public final double minY; + public final double minZ; + public final double maxX; + public final double maxY; + public final double maxZ; public AxisAlignedBB(double d0, double d1, double d2, double d3, double d4, double d5) { this.minX = Math.min(d0, d3); diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java index 88298680f..5aa26d9ee 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -1675,12 +1675,6 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke if (spawnedViaMobSpawner) { nbttagcompound.setBoolean("Paper.FromMobSpawner", true); } - // Paper start - MC-2025 fix - Save entity AABB and load it, floating point issues recalculating AABB can result in wobble - AxisAlignedBB boundingBox = this.getBoundingBox(); - nbttagcompound.set("Paper.AAAB", this.createList( - boundingBox.getMinX(), boundingBox.getMinY(), boundingBox.getMinZ(), - boundingBox.getMaxX(), boundingBox.getMaxY(), boundingBox.getMaxZ() - )); // Paper end return nbttagcompound; } catch (Throwable throwable) { @@ -1770,16 +1764,6 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke if (this.aD()) { this.setPosition(this.locX, this.locY, this.locZ); } - // Paper start - MC-2025 fix - Save entity AABB and load it, floating point issues recalculating AABB can result in wobble - // Placement is important, always after the setPosition call above - if (nbttagcompound.hasKey("Paper.AABB")) { - NBTTagList savedBB = nbttagcompound.getList("Paper.AABB", 6); - this.setBoundingBox(new AxisAlignedBB( - savedBB.getDoubleAt(0), savedBB.getDoubleAt(1), savedBB.getDoubleAt(2), - savedBB.getDoubleAt(3), savedBB.getDoubleAt(4), savedBB.getDoubleAt(5) - )); - } - // Paper end // CraftBukkit start if (this instanceof EntityLiving) { @@ -2857,7 +2841,6 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return this.boundingBox; } - public void setBoundingBox(AxisAlignedBB axisAlignedBB) { this.a(axisAlignedBB); } // Paper - OBFHELPER public void a(AxisAlignedBB axisalignedbb) { // CraftBukkit start - block invalid bounding boxes double minX = axisalignedbb.minX, diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java index 408c382d2..b1630137e 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -1329,6 +1329,7 @@ public abstract class PlayerList { } public void setHasWhitelist(boolean flag) { + new com.destroystokyo.paper.event.server.WhitelistToggleEvent(flag).callEvent(); this.whitelist.setEnabled(flag); // Paper } diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java index 2b78fff9f..082a1b6e2 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java @@ -131,11 +131,7 @@ public class CraftBlockEntityState extends CraftBlockState TileEntity tile = getTileEntityFromWorld(); if (isApplicable(tile)) { - // Paper start - if (!snapshotDisabled) { - applyTo(tileEntityClass.cast(tile)); - } - // Paper end + applyTo(tileEntityClass.cast(tile)); tile.update(); } }