diff --git a/api/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java b/api/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java index dd40d009a..21ad8888c 100644 --- a/api/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java +++ b/api/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java @@ -73,7 +73,7 @@ public class InventoryCloseEvent extends InventoryEvent { * @return Player who is involved in this event */ @NotNull - public final HumanEntity getWhoClicked() { // Akarin + public final HumanEntity getPlayer() { return transaction.getPlayer(); } diff --git a/api/src/main/java/org/bukkit/event/inventory/InventoryCreativeEvent.java b/api/src/main/java/org/bukkit/event/inventory/InventoryCreativeEvent.java index bc1e13b76..bef9a4149 100644 --- a/api/src/main/java/org/bukkit/event/inventory/InventoryCreativeEvent.java +++ b/api/src/main/java/org/bukkit/event/inventory/InventoryCreativeEvent.java @@ -1,17 +1,25 @@ package org.bukkit.event.inventory; +import org.bukkit.entity.Player; import org.bukkit.event.inventory.InventoryType.SlotType; import org.bukkit.inventory.InventoryView; import org.bukkit.inventory.ItemStack; import org.jetbrains.annotations.NotNull; +import io.akarin.server.api.event.PlayerAttachedEvent; + /** * This event is called when a player in creative mode puts down or picks up * an item in their inventory / hotbar and when they drop items from their * Inventory while in creative mode. */ -public class InventoryCreativeEvent extends InventoryClickEvent { +public class InventoryCreativeEvent extends InventoryClickEvent implements PlayerAttachedEvent { // Akarin private ItemStack item; + // Akarin start + @NotNull + @Override + public Player getPlayer() { return (Player) transaction.getPlayer(); } + // Akarin end public InventoryCreativeEvent(@NotNull InventoryView what, @NotNull SlotType type, int slot, @NotNull ItemStack newItem) { super(what, type, slot, ClickType.CREATIVE, InventoryAction.PLACE_ALL); diff --git a/api/src/main/java/org/bukkit/event/inventory/InventoryEvent.java b/api/src/main/java/org/bukkit/event/inventory/InventoryEvent.java index 8fc0a8d45..49de73a72 100644 --- a/api/src/main/java/org/bukkit/event/inventory/InventoryEvent.java +++ b/api/src/main/java/org/bukkit/event/inventory/InventoryEvent.java @@ -6,30 +6,25 @@ import java.util.List; import org.bukkit.event.HandlerList; import org.bukkit.World; import org.bukkit.entity.HumanEntity; -import org.bukkit.entity.Player; import org.bukkit.event.Event; import org.bukkit.inventory.Inventory; import org.bukkit.inventory.InventoryView; import org.jetbrains.annotations.NotNull; -import io.akarin.server.api.event.PlayerAttachedEvent; import io.akarin.server.api.event.WorldAttachedEvent; /** * Represents a player related inventory event */ -public class InventoryEvent extends Event implements PlayerAttachedEvent, WorldAttachedEvent { +public class InventoryEvent extends Event implements WorldAttachedEvent { // Akarin private static final HandlerList handlers = new HandlerList(); protected InventoryView transaction; // Akarin start @NotNull @Override - public Player getPlayer() { return (Player) transaction.getPlayer(); } // Akarin + public World getWorld() { return transaction.getPlayer().getWorld(); } @NotNull - @Override - public World getWorld() { return transaction.getPlayer().getWorld(); } // Akarin - @NotNull - public HumanEntity getWhoClicked() { return transaction.getPlayer(); } // Akarin + public HumanEntity getWhoClicked() { return transaction.getPlayer(); } // Akarin end public InventoryEvent(@NotNull InventoryView transaction) { diff --git a/api/src/main/java/org/bukkit/event/inventory/InventoryInteractEvent.java b/api/src/main/java/org/bukkit/event/inventory/InventoryInteractEvent.java index 3b1d14365..d3cf4bb09 100644 --- a/api/src/main/java/org/bukkit/event/inventory/InventoryInteractEvent.java +++ b/api/src/main/java/org/bukkit/event/inventory/InventoryInteractEvent.java @@ -1,16 +1,24 @@ package org.bukkit.event.inventory; import org.bukkit.entity.HumanEntity; +import org.bukkit.entity.Player; import org.bukkit.event.Cancellable; import org.bukkit.inventory.InventoryView; import org.jetbrains.annotations.NotNull; +import io.akarin.server.api.event.PlayerAttachedEvent; + /** * An abstract base class for events that describe an interaction between a * HumanEntity and the contents of an Inventory. */ -public abstract class InventoryInteractEvent extends InventoryEvent implements Cancellable { +public abstract class InventoryInteractEvent extends InventoryEvent implements Cancellable, PlayerAttachedEvent { // Akarin private Result result = Result.DEFAULT; + // Akarin start + @NotNull + @Override + public Player getPlayer() { return (Player) transaction.getPlayer(); } + // Akarin end public InventoryInteractEvent(@NotNull InventoryView transaction) { super(transaction); diff --git a/api/src/main/java/org/bukkit/event/inventory/InventoryOpenEvent.java b/api/src/main/java/org/bukkit/event/inventory/InventoryOpenEvent.java index 06f3a5128..331a1bd73 100644 --- a/api/src/main/java/org/bukkit/event/inventory/InventoryOpenEvent.java +++ b/api/src/main/java/org/bukkit/event/inventory/InventoryOpenEvent.java @@ -24,7 +24,7 @@ public class InventoryOpenEvent extends InventoryEvent implements Cancellable { * @return Player who is involved in this event */ @NotNull - public final HumanEntity getWhoClicked() { // Akarin + public final HumanEntity getPlayer() { return transaction.getPlayer(); } diff --git a/api/src/main/java/org/bukkit/event/inventory/PrepareAnvilEvent.java b/api/src/main/java/org/bukkit/event/inventory/PrepareAnvilEvent.java index 77109a07f..3ef9bc269 100644 --- a/api/src/main/java/org/bukkit/event/inventory/PrepareAnvilEvent.java +++ b/api/src/main/java/org/bukkit/event/inventory/PrepareAnvilEvent.java @@ -1,5 +1,6 @@ package org.bukkit.event.inventory; +import org.bukkit.entity.Player; import org.bukkit.event.HandlerList; import org.bukkit.inventory.AnvilInventory; import org.bukkit.inventory.InventoryView; @@ -7,13 +8,20 @@ import org.bukkit.inventory.ItemStack; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import io.akarin.server.api.event.PlayerAttachedEvent; + /** * Called when an item is put in a slot for repair by an anvil. */ -public class PrepareAnvilEvent extends InventoryEvent { +public class PrepareAnvilEvent extends InventoryEvent implements PlayerAttachedEvent { // Akarin private static final HandlerList handlers = new HandlerList(); private ItemStack result; + // Akarin start + @NotNull + @Override + public Player getPlayer() { return (Player) transaction.getPlayer(); } + // Akarin end public PrepareAnvilEvent(@NotNull InventoryView inventory, @Nullable ItemStack result) { super(inventory); diff --git a/api/src/main/java/org/bukkit/event/inventory/PrepareItemCraftEvent.java b/api/src/main/java/org/bukkit/event/inventory/PrepareItemCraftEvent.java index efd29d198..ba76f6596 100644 --- a/api/src/main/java/org/bukkit/event/inventory/PrepareItemCraftEvent.java +++ b/api/src/main/java/org/bukkit/event/inventory/PrepareItemCraftEvent.java @@ -1,5 +1,6 @@ package org.bukkit.event.inventory; +import org.bukkit.entity.Player; import org.bukkit.event.HandlerList; import org.bukkit.inventory.CraftingInventory; import org.bukkit.inventory.InventoryView; @@ -7,10 +8,17 @@ import org.bukkit.inventory.Recipe; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -public class PrepareItemCraftEvent extends InventoryEvent { +import io.akarin.server.api.event.PlayerAttachedEvent; + +public class PrepareItemCraftEvent extends InventoryEvent implements PlayerAttachedEvent { // Akarin private static final HandlerList handlers = new HandlerList(); private boolean repair; private CraftingInventory matrix; + // Akarin start + @NotNull + @Override + public Player getPlayer() { return (Player) transaction.getPlayer(); } + // Akarin end public PrepareItemCraftEvent(@NotNull CraftingInventory what, @NotNull InventoryView view, boolean isRepair) { super(view);