From dc477811ed56c9fab5b31c7bd785f8ec8e06f0bd Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 18 Mar 2016 14:27:53 -0400 Subject: [PATCH] Fix Furnace cook time bug If the server lags out and skips multiple ticks, Furnace cooking behavior would not cook in the expected amount of time as the cook time was not decremented correctly. This patch ensures that furnaces cook to the correct wall time expectation. --- .../0088-Fix-Furnace-cook-time-bug.patch | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 Spigot-Server-Patches/0088-Fix-Furnace-cook-time-bug.patch diff --git a/Spigot-Server-Patches/0088-Fix-Furnace-cook-time-bug.patch b/Spigot-Server-Patches/0088-Fix-Furnace-cook-time-bug.patch new file mode 100644 index 000000000..717fed299 --- /dev/null +++ b/Spigot-Server-Patches/0088-Fix-Furnace-cook-time-bug.patch @@ -0,0 +1,26 @@ +From 6872ee5a6ad3b144059d292e75a427bd30b102dc Mon Sep 17 00:00:00 2001 +From: Aikar +Date: Fri, 18 Mar 2016 14:24:53 -0400 +Subject: [PATCH] Fix Furnace cook time bug + +If the server lags out and skips multiple ticks, Furnace cooking behavior would not +cook in the expected amount of time as the cook time was not decremented correctly. + +This patch ensures that furnaces cook to the correct wall time expectation. + +diff --git a/src/main/java/net/minecraft/server/TileEntityFurnace.java b/src/main/java/net/minecraft/server/TileEntityFurnace.java +index 1b17ca6..c242a7a 100644 +--- a/src/main/java/net/minecraft/server/TileEntityFurnace.java ++++ b/src/main/java/net/minecraft/server/TileEntityFurnace.java +@@ -164,7 +164,7 @@ public class TileEntityFurnace extends TileEntityContainer implements ITickable, + this.cookTime += elapsedTicks; + if (this.cookTime >= this.cookTimeTotal) { + this.cookTime = 0; +- this.cookTimeTotal = this.a(this.items[0]); ++ this.cookTimeTotal -= this.a(this.items[0]); // Paper - Fix Furnace cook time bug + this.burn(); + flag1 = true; + } +-- +2.7.3 +