Mirror von
https://github.com/PaperMC/Paper.git
synchronisiert 2024-12-15 19:10:09 +01:00
96d5e6ca48
Currently includes generated key holder classes for types used in the Registry Modification API
112 Zeilen
3.9 KiB
Diff
112 Zeilen
3.9 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: LordKorea <lk97798@posteo.net>
|
|
Date: Mon, 11 May 2020 22:38:10 -0400
|
|
Subject: [PATCH] Add and implement PlayerRecipeBookClickEvent
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/event/player/PlayerRecipeBookClickEvent.java b/src/main/java/com/destroystokyo/paper/event/player/PlayerRecipeBookClickEvent.java
|
|
new file mode 100644
|
|
index 0000000000000000000000000000000000000000..7fa937d339ee98ad308deebb523fead6522eb262
|
|
--- /dev/null
|
|
+++ b/src/main/java/com/destroystokyo/paper/event/player/PlayerRecipeBookClickEvent.java
|
|
@@ -0,0 +1,84 @@
|
|
+package com.destroystokyo.paper.event.player;
|
|
+
|
|
+import org.bukkit.NamespacedKey;
|
|
+import org.bukkit.entity.Player;
|
|
+import org.bukkit.event.Cancellable;
|
|
+import org.bukkit.event.HandlerList;
|
|
+import org.bukkit.event.player.PlayerEvent;
|
|
+import org.jetbrains.annotations.NotNull;
|
|
+
|
|
+/**
|
|
+ * Called when a player clicks a recipe in the recipe book
|
|
+ */
|
|
+public class PlayerRecipeBookClickEvent extends PlayerEvent implements Cancellable {
|
|
+ private static final HandlerList handlers = new HandlerList();
|
|
+ private boolean cancel = false;
|
|
+ @NotNull private NamespacedKey recipe;
|
|
+ private boolean makeAll;
|
|
+
|
|
+ public PlayerRecipeBookClickEvent(@NotNull Player player, @NotNull NamespacedKey recipe, boolean makeAll) {
|
|
+ super(player);
|
|
+ this.recipe = recipe;
|
|
+ this.makeAll = makeAll;
|
|
+ }
|
|
+
|
|
+ /**
|
|
+ * Gets the namespaced key of the recipe that was clicked by the player
|
|
+ *
|
|
+ * @return The namespaced key of the recipe
|
|
+ */
|
|
+ @NotNull
|
|
+ public NamespacedKey getRecipe() {
|
|
+ return recipe;
|
|
+ }
|
|
+
|
|
+ /**
|
|
+ * Changes what recipe is requested. This sets the requested recipe to the recipe with the given key
|
|
+ *
|
|
+ * @param recipe The key of the recipe that should be requested
|
|
+ */
|
|
+ public void setRecipe(@NotNull NamespacedKey recipe) {
|
|
+ this.recipe = recipe;
|
|
+ }
|
|
+
|
|
+ /**
|
|
+ * Gets a boolean which indicates whether or not the player requested to make the maximum amount of results. This is
|
|
+ * true if shift is pressed while the recipe is clicked in the recipe book
|
|
+ *
|
|
+ * @return {@code true} if shift is pressed while the recipe is clicked
|
|
+ */
|
|
+ public boolean isMakeAll() {
|
|
+ return makeAll;
|
|
+ }
|
|
+
|
|
+ /**
|
|
+ * Sets whether or not the maximum amount of results should be made. If this is true, the request is handled as if
|
|
+ * the player had pressed shift while clicking on the recipe
|
|
+ *
|
|
+ * @param makeAll {@code true} if the request should attempt to make the maximum amount of results
|
|
+ */
|
|
+ public void setMakeAll(boolean makeAll) {
|
|
+ this.makeAll = makeAll;
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ public boolean isCancelled() {
|
|
+ return cancel;
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ public void setCancelled(boolean cancel) {
|
|
+ this.cancel = cancel;
|
|
+ }
|
|
+
|
|
+ @NotNull
|
|
+ @Override
|
|
+ public HandlerList getHandlers() {
|
|
+ return handlers;
|
|
+ }
|
|
+
|
|
+ @NotNull
|
|
+ public static HandlerList getHandlerList() {
|
|
+ return handlers;
|
|
+ }
|
|
+}
|
|
diff --git a/src/main/java/org/bukkit/event/player/PlayerRecipeBookClickEvent.java b/src/main/java/org/bukkit/event/player/PlayerRecipeBookClickEvent.java
|
|
index eb8623184f69e213196558b077bd0004f08832af..a843f7347308a15b9fba4a3676f60bafafd83a66 100644
|
|
--- a/src/main/java/org/bukkit/event/player/PlayerRecipeBookClickEvent.java
|
|
+++ b/src/main/java/org/bukkit/event/player/PlayerRecipeBookClickEvent.java
|
|
@@ -9,7 +9,10 @@ import org.jetbrains.annotations.NotNull;
|
|
|
|
/**
|
|
* Called when a player clicks a recipe in the recipe book.
|
|
+ * @deprecated use {@link com.destroystokyo.paper.event.player.PlayerRecipeBookClickEvent}
|
|
*/
|
|
+@Deprecated(forRemoval = true) // Paper
|
|
+@org.bukkit.Warning(false) // Paper
|
|
public class PlayerRecipeBookClickEvent extends PlayerEvent {
|
|
|
|
private static final HandlerList handlers = new HandlerList();
|