diff options
Diffstat (limited to 'Spigot-API-Patches-Unmapped/0101-WitchThrowPotionEvent.patch')
-rw-r--r-- | Spigot-API-Patches-Unmapped/0101-WitchThrowPotionEvent.patch | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/Spigot-API-Patches-Unmapped/0101-WitchThrowPotionEvent.patch b/Spigot-API-Patches-Unmapped/0101-WitchThrowPotionEvent.patch new file mode 100644 index 0000000000..a5dfe42f35 --- /dev/null +++ b/Spigot-API-Patches-Unmapped/0101-WitchThrowPotionEvent.patch @@ -0,0 +1,93 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Aikar <[email protected]> +Date: Wed, 16 May 2018 20:39:09 -0400 +Subject: [PATCH] WitchThrowPotionEvent + +Fired when a witch throws a potion at a player + +diff --git a/src/main/java/com/destroystokyo/paper/event/entity/WitchThrowPotionEvent.java b/src/main/java/com/destroystokyo/paper/event/entity/WitchThrowPotionEvent.java +index 6ef6367b67261c2b653a97322b9703a9409b3499..688a596aa2b925651a92bf092e1ef4d77a47258c 100644 +--- a/src/main/java/com/destroystokyo/paper/event/entity/WitchThrowPotionEvent.java ++++ b/src/main/java/com/destroystokyo/paper/event/entity/WitchThrowPotionEvent.java +@@ -1,29 +1,77 @@ + package com.destroystokyo.paper.event.entity; + ++import org.bukkit.entity.LivingEntity; ++import org.bukkit.entity.Witch; + import org.bukkit.event.Cancellable; +-import org.bukkit.event.Event; + import org.bukkit.event.HandlerList; ++import org.bukkit.event.entity.EntityEvent; ++import org.bukkit.inventory.ItemStack; ++import org.jetbrains.annotations.NotNull; ++import org.jetbrains.annotations.Nullable; + +-public class WitchThrowPotionEvent extends Event implements Cancellable { +- public WitchThrowPotionEvent() { ++/** ++ * Fired when a witch throws a potion at a player ++ */ ++public class WitchThrowPotionEvent extends EntityEvent implements Cancellable { ++ @NotNull private final LivingEntity target; ++ @Nullable private ItemStack potion; ++ ++ public WitchThrowPotionEvent(@NotNull Witch witch, @NotNull LivingEntity target, @Nullable ItemStack potion) { ++ super(witch); ++ this.target = target; ++ this.potion = potion; + } + ++ @NotNull ++ @Override ++ public Witch getEntity() { ++ return (Witch) super.getEntity(); ++ } ++ ++ /** ++ * @return The target of the potion ++ */ ++ @NotNull ++ public LivingEntity getTarget() { ++ return target; ++ } ++ ++ /** ++ * @return The potion the witch will throw at a player ++ */ ++ @Nullable ++ public ItemStack getPotion() { ++ return potion; ++ } ++ ++ /** ++ * Sets the potion to be thrown at a player ++ * @param potion The potion ++ */ ++ public void setPotion(@Nullable ItemStack potion) { ++ this.potion = potion != null ? potion.clone() : null; ++ } + + private static final HandlerList handlers = new HandlerList(); + ++ @NotNull + public HandlerList getHandlers() { + return handlers; + } + ++ @NotNull + public static HandlerList getHandlerList() { + return handlers; + } + + private boolean cancelled = false; + ++ /** ++ * @return Event was cancelled or potion was null ++ */ + @Override + public boolean isCancelled() { +- return cancelled; ++ return cancelled || potion == null; + } + + @Override |