69 lines
		
	
	
	
		
			2 KiB
			
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
	
		
			2 KiB
			
		
	
	
	
		
			Diff
		
	
	
	
	
	
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 | 
						|
From: TheViperShow <29604693+TheViperShow@users.noreply.github.com>
 | 
						|
Date: Wed, 22 Apr 2020 09:40:23 +0200
 | 
						|
Subject: [PATCH] Add BlockFailedDispenseEvent
 | 
						|
 | 
						|
 | 
						|
diff --git a/src/main/java/io/papermc/paper/event/block/BlockFailedDispenseEvent.java b/src/main/java/io/papermc/paper/event/block/BlockFailedDispenseEvent.java
 | 
						|
new file mode 100644
 | 
						|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
 | 
						|
--- /dev/null
 | 
						|
+++ b/src/main/java/io/papermc/paper/event/block/BlockFailedDispenseEvent.java
 | 
						|
@@ -0,0 +0,0 @@
 | 
						|
+package io.papermc.paper.event.block;
 | 
						|
+
 | 
						|
+import org.bukkit.block.Block;
 | 
						|
+import org.bukkit.event.HandlerList;
 | 
						|
+import org.bukkit.event.block.BlockEvent;
 | 
						|
+import org.jetbrains.annotations.ApiStatus;
 | 
						|
+import org.jspecify.annotations.NullMarked;
 | 
						|
+
 | 
						|
+/**
 | 
						|
+ * Called when a block tries to dispense an item, but its inventory is empty.
 | 
						|
+ */
 | 
						|
+@NullMarked
 | 
						|
+public class BlockFailedDispenseEvent extends BlockEvent {
 | 
						|
+
 | 
						|
+    private static final HandlerList HANDLER_LIST = new HandlerList();
 | 
						|
+
 | 
						|
+    private boolean shouldPlayEffect = true;
 | 
						|
+
 | 
						|
+    @ApiStatus.Internal
 | 
						|
+    public BlockFailedDispenseEvent(final Block theBlock) {
 | 
						|
+        super(theBlock);
 | 
						|
+    }
 | 
						|
+
 | 
						|
+    /**
 | 
						|
+     * @return if the effect should be played
 | 
						|
+     */
 | 
						|
+    public boolean shouldPlayEffect() {
 | 
						|
+        return this.shouldPlayEffect;
 | 
						|
+    }
 | 
						|
+
 | 
						|
+    /**
 | 
						|
+     * Sets if the effect for empty dispensers should be played
 | 
						|
+     *
 | 
						|
+     * @param playEffect if the effect should be played
 | 
						|
+     */
 | 
						|
+    public void shouldPlayEffect(final boolean playEffect) {
 | 
						|
+        this.shouldPlayEffect = playEffect;
 | 
						|
+    }
 | 
						|
+
 | 
						|
+    /**
 | 
						|
+     * @return {@link #shouldPlayEffect()}
 | 
						|
+     */
 | 
						|
+    @Override
 | 
						|
+    public boolean callEvent() {
 | 
						|
+        super.callEvent();
 | 
						|
+        return this.shouldPlayEffect();
 | 
						|
+    }
 | 
						|
+
 | 
						|
+    @Override
 | 
						|
+    public HandlerList getHandlers() {
 | 
						|
+        return HANDLER_LIST;
 | 
						|
+    }
 | 
						|
+
 | 
						|
+    public static HandlerList getHandlerList() {
 | 
						|
+        return HANDLER_LIST;
 | 
						|
+    }
 | 
						|
+}
 |