papermc/Spigot-Server-Patches/0083-Fix-Furnace-cook-time-bug.patch

27 lines
1.2 KiB
Diff
Raw Normal View History

2016-06-09 03:57:14 +00:00
From 066074bd90e51a8b89d86a9b977e71fde716545a Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
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
2016-06-09 03:57:14 +00:00
index fd6c246..db235c3 100644
--- a/src/main/java/net/minecraft/server/TileEntityFurnace.java
+++ b/src/main/java/net/minecraft/server/TileEntityFurnace.java
2016-06-09 03:57:14 +00:00
@@ -172,7 +172,7 @@ public class TileEntityFurnace extends TileEntityContainer implements ITickable,
2016-03-19 02:32:31 +00:00
if (this.isBurning() && this.canBurn()) {
this.cookTime += elapsedTicks;
if (this.cookTime >= this.cookTimeTotal) {
2016-03-19 02:32:31 +00:00
- this.cookTime = 0;
+ this.cookTime -= this.a(this.items[0]); // Paper
this.cookTimeTotal = this.a(this.items[0]);
this.burn();
flag1 = true;
--
2016-06-09 03:57:14 +00:00
2.8.3