c50fc3a026
Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 8d818032 PR-723: Add Furnace#getRecipesUsed d7b5a313 PR-726: Add Particle dataTypes to javadocs 72fe8b71 PR-724: Add PDC to World CraftBukkit Changes: c0326c28 PR-1009: Add Furnace#getRecipesUsed cc5ddd79 PR-1010: Add PDC to World 6a54e5d3 PR-1012: Always save as skull owner and not as internal data Spigot Changes: 699290cd Rebuild patches
62 lines
2.6 KiB
Diff
62 lines
2.6 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Tassu <git@tassu.me>
|
|
Date: Thu, 13 Sep 2018 08:45:01 +0300
|
|
Subject: [PATCH] Implement furnace cook speed multiplier API
|
|
|
|
Signed-off-by: Tassu <git@tassu.me>
|
|
|
|
diff --git a/src/main/java/org/bukkit/block/Furnace.java b/src/main/java/org/bukkit/block/Furnace.java
|
|
index ac3b24c5c99eeb1435d785efade728dd40947da5..dbdf3dbe9517b09a7965cf9d65cae1edd87af67d 100644
|
|
--- a/src/main/java/org/bukkit/block/Furnace.java
|
|
+++ b/src/main/java/org/bukkit/block/Furnace.java
|
|
@@ -74,6 +74,26 @@ public interface Furnace extends Container {
|
|
@NotNull
|
|
public Map<CookingRecipe<?>, Integer> getRecipesUsed();
|
|
|
|
+ // Paper start
|
|
+ /**
|
|
+ * Gets the cook speed multiplier that this {@link Furnace} will cook
|
|
+ * compared to vanilla.
|
|
+ *
|
|
+ * @return the multiplier, a value between 0 and 200
|
|
+ */
|
|
+ public double getCookSpeedMultiplier();
|
|
+
|
|
+ /**
|
|
+ * Sets the speed multiplier that this {@link Furnace} will cook
|
|
+ * compared to vanilla.
|
|
+ *
|
|
+ * @param multiplier the multiplier to set, a value between 0 and 200
|
|
+ * @throws IllegalArgumentException if value is less than 0
|
|
+ * @throws IllegalArgumentException if value is more than 200
|
|
+ */
|
|
+ public void setCookSpeedMultiplier(double multiplier);
|
|
+ // Paper end
|
|
+
|
|
@NotNull
|
|
@Override
|
|
public FurnaceInventory getInventory();
|
|
diff --git a/src/main/java/org/bukkit/event/inventory/FurnaceStartSmeltEvent.java b/src/main/java/org/bukkit/event/inventory/FurnaceStartSmeltEvent.java
|
|
index 533a33dbd4c4c3c07fe759206dc288efec5cd531..f13f1b4daa99fb86b60acc94d0406dcd8cb4d98b 100644
|
|
--- a/src/main/java/org/bukkit/event/inventory/FurnaceStartSmeltEvent.java
|
|
+++ b/src/main/java/org/bukkit/event/inventory/FurnaceStartSmeltEvent.java
|
|
@@ -13,11 +13,18 @@ public class FurnaceStartSmeltEvent extends BlockEvent {
|
|
private final CookingRecipe<?> recipe;
|
|
private int totalCookTime;
|
|
|
|
+ @Deprecated // Paper - furnace cook speed multiplier
|
|
public FurnaceStartSmeltEvent(@NotNull final Block furnace, @NotNull ItemStack source, @NotNull final CookingRecipe<?> recipe) {
|
|
+ // Paper start - furnace cook speed multiplier
|
|
+ this(furnace, source, recipe, recipe.getCookingTime());
|
|
+ }
|
|
+
|
|
+ public FurnaceStartSmeltEvent(@NotNull final Block furnace, @NotNull ItemStack source, @NotNull CookingRecipe<?> recipe, int cookingTime) {
|
|
+ // Paper end
|
|
super(furnace);
|
|
this.source = source;
|
|
this.recipe = recipe;
|
|
- this.totalCookTime = recipe.getCookingTime();
|
|
+ this.totalCookTime = cookingTime; // Paper - furnace cook speed multiplier
|
|
}
|
|
|
|
/**
|