94 lines
		
	
	
	
		
			2.7 KiB
			
		
	
	
	
		
			Diff
		
	
	
	
	
	
		
		
			
		
	
	
			94 lines
		
	
	
	
		
			2.7 KiB
			
		
	
	
	
		
			Diff
		
	
	
	
	
	
| 
								 | 
							
								From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
							 | 
						||
| 
								 | 
							
								From: Aikar <aikar@aikar.co>
							 | 
						||
| 
								 | 
							
								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 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
							 | 
						||
| 
								 | 
							
								--- a/src/main/java/com/destroystokyo/paper/event/entity/WitchThrowPotionEvent.java
							 | 
						||
| 
								 | 
							
								+++ b/src/main/java/com/destroystokyo/paper/event/entity/WitchThrowPotionEvent.java
							 | 
						||
| 
								 | 
							
								@@ -0,0 +0,0 @@
							 | 
						||
| 
								 | 
							
								 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
							 |