From 4c5a75dc4e6f828816895fac0f474ff994579558 Mon Sep 17 00:00:00 2001 From: Jake Potrebic Date: Wed, 25 Nov 2020 16:33:42 -0800 Subject: [PATCH] Added PlayerLoomPatternSelectEvent --- .../player/PlayerLoomPatternSelectEvent.java | 77 +++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 paper-api/src/main/java/io/papermc/paper/event/player/PlayerLoomPatternSelectEvent.java diff --git a/paper-api/src/main/java/io/papermc/paper/event/player/PlayerLoomPatternSelectEvent.java b/paper-api/src/main/java/io/papermc/paper/event/player/PlayerLoomPatternSelectEvent.java new file mode 100644 index 0000000000..5d4a334ba9 --- /dev/null +++ b/paper-api/src/main/java/io/papermc/paper/event/player/PlayerLoomPatternSelectEvent.java @@ -0,0 +1,77 @@ +package io.papermc.paper.event.player; + +import org.bukkit.block.banner.PatternType; +import org.bukkit.entity.Player; +import org.bukkit.event.Cancellable; +import org.bukkit.event.HandlerList; +import org.bukkit.event.player.PlayerEvent; +import org.bukkit.inventory.LoomInventory; +import org.jetbrains.annotations.ApiStatus; +import org.jspecify.annotations.NullMarked; + +/** + * Called when a player selects a banner patten in a loom inventory. + */ +@NullMarked +public class PlayerLoomPatternSelectEvent extends PlayerEvent implements Cancellable { + + private static final HandlerList HANDLER_LIST = new HandlerList(); + + private final LoomInventory loomInventory; + private PatternType patternType; + + private boolean cancelled; + + @ApiStatus.Internal + public PlayerLoomPatternSelectEvent(final Player player, final LoomInventory loomInventory, final PatternType patternType) { + super(player); + this.loomInventory = loomInventory; + this.patternType = patternType; + } + + /** + * Gets the loom inventory involved. + * + * @return the loom inventory + */ + public LoomInventory getLoomInventory() { + return this.loomInventory; + } + + /** + * Gets the pattern type selected. + * + * @return the pattern type + */ + public PatternType getPatternType() { + return this.patternType; + } + + /** + * Sets the pattern type selected. + * + * @param patternType the pattern type + */ + public void setPatternType(final PatternType patternType) { + this.patternType = patternType; + } + + @Override + public boolean isCancelled() { + return this.cancelled; + } + + @Override + public void setCancelled(final boolean cancel) { + this.cancelled = cancel; + } + + @Override + public HandlerList getHandlers() { + return HANDLER_LIST; + } + + public static HandlerList getHandlerList() { + return HANDLER_LIST; + } +}