mirror of
https://github.com/PaperMC/Paper.git
synced 2025-01-16 14:33:09 +01:00
Implement furnace cook speed multiplier API
Signed-off-by: Tassu <git@tassu.me>
This commit is contained in:
parent
6a9c8c348b
commit
6d98fbc47d
2 changed files with 28 additions and 1 deletions
|
@ -74,6 +74,26 @@ public interface Furnace extends Container {
|
||||||
@NotNull
|
@NotNull
|
||||||
public Map<CookingRecipe<?>, Integer> getRecipesUsed();
|
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
|
@NotNull
|
||||||
@Override
|
@Override
|
||||||
public FurnaceInventory getInventory();
|
public FurnaceInventory getInventory();
|
||||||
|
|
|
@ -18,10 +18,17 @@ public class FurnaceStartSmeltEvent extends InventoryBlockStartEvent {
|
||||||
private final CookingRecipe<?> recipe;
|
private final CookingRecipe<?> recipe;
|
||||||
private int totalCookTime;
|
private int totalCookTime;
|
||||||
|
|
||||||
|
@Deprecated // Paper - furnace cook speed multiplier
|
||||||
public FurnaceStartSmeltEvent(@NotNull final Block furnace, @NotNull ItemStack source, @NotNull final CookingRecipe<?> recipe) {
|
public FurnaceStartSmeltEvent(@NotNull final Block furnace, @NotNull ItemStack source, @NotNull final CookingRecipe<?> recipe) {
|
||||||
|
// Paper start
|
||||||
|
this(furnace, source, recipe, recipe.getCookingTime());
|
||||||
|
}
|
||||||
|
|
||||||
|
public FurnaceStartSmeltEvent(final @NotNull Block furnace, final @NotNull ItemStack source, final @NotNull CookingRecipe<?> recipe, final int cookingTime) {
|
||||||
|
// Paper end
|
||||||
super(furnace, source);
|
super(furnace, source);
|
||||||
this.recipe = recipe;
|
this.recipe = recipe;
|
||||||
this.totalCookTime = recipe.getCookingTime();
|
this.totalCookTime = cookingTime; // Paper - furnace cook speed multiplier
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in a new issue