#495: Expose ItemStack and hand used in PlayerShearEntityEvent

By: Parker Hawke <hawkeboyz2@hotmail.com>
This commit is contained in:
Bukkit/Spigot 2020-05-02 17:48:02 +10:00
parent 4d40a4b485
commit 01b8968e4b

View file

@ -1,9 +1,12 @@
package org.bukkit.event.player;
import org.bukkit.Material;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.event.Cancellable;
import org.bukkit.event.HandlerList;
import org.bukkit.inventory.EquipmentSlot;
import org.bukkit.inventory.ItemStack;
import org.jetbrains.annotations.NotNull;
/**
@ -13,11 +16,19 @@ public class PlayerShearEntityEvent extends PlayerEvent implements Cancellable {
private static final HandlerList handlers = new HandlerList();
private boolean cancel;
private final Entity what;
private final ItemStack item;
private final EquipmentSlot hand;
public PlayerShearEntityEvent(@NotNull final Player who, @NotNull final Entity what) {
public PlayerShearEntityEvent(@NotNull Player who, @NotNull Entity what, @NotNull ItemStack item, @NotNull EquipmentSlot hand) {
super(who);
this.cancel = false;
this.what = what;
this.item = item;
this.hand = hand;
}
@Deprecated
public PlayerShearEntityEvent(@NotNull final Player who, @NotNull final Entity what) {
this(who, what, new ItemStack(Material.SHEARS), EquipmentSlot.HAND);
}
@Override
@ -40,6 +51,26 @@ public class PlayerShearEntityEvent extends PlayerEvent implements Cancellable {
return what;
}
/**
* Gets the item used to shear the entity.
*
* @return the shears
*/
@NotNull
public ItemStack getItem() {
return item.clone();
}
/**
* Gets the hand used to shear the entity.
*
* @return the hand
*/
@NotNull
public EquipmentSlot getHand() {
return hand;
}
@NotNull
@Override
public HandlerList getHandlers() {