aboutsummaryrefslogtreecommitdiffhomepage
path: root/Spigot-Server-Patches/0074-Fix-Furnace-cook-time-bug.patch
blob: d1c9d2d67a3846325f1200632b48aed17d63a788 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
From 57b6cb61523faf718c89c3ae42d5d0d6050c9d74 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
index 2f1f3edf5..e230d1608 100644
--- a/src/main/java/net/minecraft/server/TileEntityFurnace.java
+++ b/src/main/java/net/minecraft/server/TileEntityFurnace.java
@@ -165,7 +165,7 @@ public class TileEntityFurnace extends TileEntityContainer implements ITickable,
         if (this.isBurning() && this.canBurn()) {
             this.cookTime += elapsedTicks;
             if (this.cookTime >= this.cookTimeTotal) {
-                this.cookTime = 0;
+                this.cookTime -= this.cookTimeTotal; // Paper
                 this.cookTimeTotal = this.a((ItemStack) this.items.get(0));
                 this.burn();
                 flag1 = true;
-- 
2.12.0.windows.1