mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-28 07:20:24 +01:00
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:
parent
6c89cc29e4
commit
48046af5ef
6 changed files with 84 additions and 36 deletions
|
@ -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);
|
||||||
|
}
|
||||||
|
}
|
|
@ -10,9 +10,9 @@ import org.jetbrains.annotations.Nullable;
|
||||||
/**
|
/**
|
||||||
* Called when an item is put in a slot for repair by an anvil.
|
* Called when an item is put in a slot for repair by an anvil.
|
||||||
*/
|
*/
|
||||||
public class PrepareAnvilEvent extends PrepareInventoryResultEvent {
|
public class PrepareAnvilEvent extends com.destroystokyo.paper.event.inventory.PrepareResultEvent {
|
||||||
|
|
||||||
private static final HandlerList handlers = new HandlerList();
|
// Paper - move HandlerList to PrepareInventoryResultEvent
|
||||||
|
|
||||||
public PrepareAnvilEvent(@NotNull AnvilView inventory, @Nullable ItemStack result) {
|
public PrepareAnvilEvent(@NotNull AnvilView inventory, @Nullable ItemStack result) {
|
||||||
super(inventory, result);
|
super(inventory, result);
|
||||||
|
@ -44,14 +44,5 @@ public class PrepareAnvilEvent extends PrepareInventoryResultEvent {
|
||||||
return (AnvilView) super.getView();
|
return (AnvilView) super.getView();
|
||||||
}
|
}
|
||||||
|
|
||||||
@NotNull
|
// Paper - move HandlerList to PrepareInventoryResultEvent
|
||||||
@Override
|
|
||||||
public HandlerList getHandlers() {
|
|
||||||
return handlers;
|
|
||||||
}
|
|
||||||
|
|
||||||
@NotNull
|
|
||||||
public static HandlerList getHandlerList() {
|
|
||||||
return handlers;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,9 +10,9 @@ import org.jetbrains.annotations.Nullable;
|
||||||
/**
|
/**
|
||||||
* Called when an item is put in a slot for repair or unenchanting in a grindstone.
|
* Called when an item is put in a slot for repair or unenchanting in a grindstone.
|
||||||
*/
|
*/
|
||||||
public class PrepareGrindstoneEvent extends PrepareInventoryResultEvent {
|
public class PrepareGrindstoneEvent extends com.destroystokyo.paper.event.inventory.PrepareGrindstoneEvent { // Paper
|
||||||
|
|
||||||
private static final HandlerList handlers = new HandlerList();
|
// Paper - move HandlerList to PrepareInventoryResultEvent
|
||||||
|
|
||||||
public PrepareGrindstoneEvent(@NotNull InventoryView inventory, @Nullable ItemStack result) {
|
public PrepareGrindstoneEvent(@NotNull InventoryView inventory, @Nullable ItemStack result) {
|
||||||
super(inventory, result);
|
super(inventory, result);
|
||||||
|
@ -24,14 +24,5 @@ public class PrepareGrindstoneEvent extends PrepareInventoryResultEvent {
|
||||||
return (GrindstoneInventory) super.getInventory();
|
return (GrindstoneInventory) super.getInventory();
|
||||||
}
|
}
|
||||||
|
|
||||||
@NotNull
|
// Paper - move HandlerList to PrepareInventoryResultEvent
|
||||||
@Override
|
|
||||||
public HandlerList getHandlers() {
|
|
||||||
return handlers;
|
|
||||||
}
|
|
||||||
|
|
||||||
@NotNull
|
|
||||||
public static HandlerList getHandlerList() {
|
|
||||||
return handlers;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,7 +8,9 @@ import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Called when an item is put in a slot and the result is calculated.
|
* Called when an item is put in a slot and the result is calculated.
|
||||||
|
* @deprecated use {@link com.destroystokyo.paper.event.inventory.PrepareResultEvent}
|
||||||
*/
|
*/
|
||||||
|
@Deprecated @org.bukkit.Warning(false) // Paper
|
||||||
public class PrepareInventoryResultEvent extends InventoryEvent {
|
public class PrepareInventoryResultEvent extends InventoryEvent {
|
||||||
|
|
||||||
private static final HandlerList handlers = new HandlerList();
|
private static final HandlerList handlers = new HandlerList();
|
||||||
|
|
|
@ -10,9 +10,9 @@ import org.jetbrains.annotations.Nullable;
|
||||||
/**
|
/**
|
||||||
* Called when an item is put in a slot for upgrade by a Smithing Table.
|
* Called when an item is put in a slot for upgrade by a Smithing Table.
|
||||||
*/
|
*/
|
||||||
public class PrepareSmithingEvent extends PrepareInventoryResultEvent {
|
public class PrepareSmithingEvent extends com.destroystokyo.paper.event.inventory.PrepareResultEvent {
|
||||||
|
|
||||||
private static final HandlerList handlers = new HandlerList();
|
// Paper - move HandlerList ot PrepareInventoryResultEvent
|
||||||
|
|
||||||
public PrepareSmithingEvent(@NotNull InventoryView inventory, @Nullable ItemStack result) {
|
public PrepareSmithingEvent(@NotNull InventoryView inventory, @Nullable ItemStack result) {
|
||||||
super(inventory, result);
|
super(inventory, result);
|
||||||
|
@ -24,14 +24,5 @@ public class PrepareSmithingEvent extends PrepareInventoryResultEvent {
|
||||||
return (SmithingInventory) super.getInventory();
|
return (SmithingInventory) super.getInventory();
|
||||||
}
|
}
|
||||||
|
|
||||||
@NotNull
|
// Paper - move HandlerList to PrepareInventoryResultEvent
|
||||||
@Override
|
|
||||||
public HandlerList getHandlers() {
|
|
||||||
return handlers;
|
|
||||||
}
|
|
||||||
|
|
||||||
@NotNull
|
|
||||||
public static HandlerList getHandlerList() {
|
|
||||||
return handlers;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue