geforkt von Mirrors/Paper
89d51d5f29
Because this exploit has been widely known for years and has not been fixed by Mojang, we decided that it was worth allowing people to toggle it on/off due to how easy it is to make it configurable. It should be noted that this decision does not promise all future exploits will be configurable.
37 Zeilen
1.9 KiB
Diff
37 Zeilen
1.9 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: lukas <lukasalt98@gmail.com>
|
|
Date: Sun, 27 Dec 2020 16:47:00 +0100
|
|
Subject: [PATCH] Cache burn durations
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java
|
|
index 9801b777bc6ab7de91d82b29a142459292ee8605..8f7029e602300f68b3c8411caa2d9e0b1e8be62e 100644
|
|
--- a/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java
|
|
+++ b/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java
|
|
@@ -134,7 +134,13 @@ public abstract class AbstractFurnaceBlockEntity extends BaseContainerBlockEntit
|
|
this.recipeType = recipeType; // Paper - cook speed multiplier API
|
|
}
|
|
|
|
+ private static Map<Item, Integer> cachedBurnDurations = null; // Paper - cache burn durations
|
|
public static Map<Item, Integer> getFuel() {
|
|
+ // Paper start - cache burn durations
|
|
+ if(cachedBurnDurations != null) {
|
|
+ return cachedBurnDurations;
|
|
+ }
|
|
+ // Paper end - cache burn durations
|
|
Map<Item, Integer> map = Maps.newLinkedHashMap();
|
|
|
|
AbstractFurnaceBlockEntity.add(map, (ItemLike) Items.LAVA_BUCKET, 20000);
|
|
@@ -196,7 +202,10 @@ public abstract class AbstractFurnaceBlockEntity extends BaseContainerBlockEntit
|
|
AbstractFurnaceBlockEntity.add(map, (ItemLike) Blocks.AZALEA, 100);
|
|
AbstractFurnaceBlockEntity.add(map, (ItemLike) Blocks.FLOWERING_AZALEA, 100);
|
|
AbstractFurnaceBlockEntity.add(map, (ItemLike) Blocks.MANGROVE_ROOTS, 300);
|
|
- return map;
|
|
+ // Paper start - cache burn durations
|
|
+ cachedBurnDurations = com.google.common.collect.ImmutableMap.copyOf(map);
|
|
+ return cachedBurnDurations;
|
|
+ // Paper end - cache burn durations
|
|
}
|
|
|
|
// CraftBukkit start - add fields and methods
|