928bcc8d3a
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: 09943450 Update SnakeYAML version 5515734f SPIGOT-7162: Incorrect description for Entity#getVehicle javadoc 6f82b381 PR-788: Add getHand() to all relevant events CraftBukkit Changes: aaf484f6f SPIGOT-7163: CraftMerchantRecipe doesn't copy demand and specialPrice from BukkitMerchantRecipe 5329dd6fd PR-1107: Add getHand() to all relevant events 93061706e SPIGOT-7045: Ocelots never spawn with babies with spawn reason OCELOT_BABY
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
|
|
}
|
|
|
|
/**
|