Add PrepareResultEvent / PrepareGrindstoneEvent
Adds a new event for all crafting stations that generate a result slot item Anvil, Grindstone and Smithing now extend this event Grindstone is a backwards compat from a previous PrepareGrindstoneEvent
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
package com.destroystokyo.paper.event.inventory;
|
||||
|
||||
import org.bukkit.Warning;
|
||||
import org.bukkit.inventory.GrindstoneInventory;
|
||||
import org.bukkit.inventory.InventoryView;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* Called when an item is put in a slot for grinding in a Grindstone
|
||||
*
|
||||
* @deprecated use {@link org.bukkit.event.inventory.PrepareGrindstoneEvent}
|
||||
*/
|
||||
@Deprecated(since = "1.16.1")
|
||||
@Warning
|
||||
public class PrepareGrindstoneEvent extends PrepareResultEvent {
|
||||
|
||||
@ApiStatus.Internal
|
||||
public PrepareGrindstoneEvent(@NotNull InventoryView inventory, @Nullable ItemStack result) {
|
||||
super(inventory, result);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public GrindstoneInventory getInventory() {
|
||||
return (GrindstoneInventory) super.getInventory();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
package com.destroystokyo.paper.event.inventory;
|
||||
|
||||
import org.bukkit.event.inventory.PrepareInventoryResultEvent;
|
||||
import org.bukkit.inventory.InventoryView;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jspecify.annotations.NullMarked;
|
||||
import org.jspecify.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* Called when an item is put in an inventory containing a result slot
|
||||
*/
|
||||
@NullMarked
|
||||
public class PrepareResultEvent extends PrepareInventoryResultEvent {
|
||||
|
||||
// HandlerList on PrepareInventoryResultEvent to ensure api compat
|
||||
|
||||
@ApiStatus.Internal
|
||||
public PrepareResultEvent(final InventoryView inventory, final @Nullable ItemStack result) {
|
||||
super(inventory, result);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get result item, may be {@code null}.
|
||||
*
|
||||
* @return result item
|
||||
*/
|
||||
@Override
|
||||
public @Nullable ItemStack getResult() {
|
||||
return super.getResult();
|
||||
}
|
||||
|
||||
/**
|
||||
* Set result item, may be {@code null}.
|
||||
*
|
||||
* @param result result item
|
||||
*/
|
||||
@Override
|
||||
public void setResult(final @Nullable ItemStack result) {
|
||||
super.setResult(result);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user