From 696ef4ad7f4271fef0ceaad2848a95818b7dff7a Mon Sep 17 00:00:00 2001 From: Gabriel Tofvesson Date: Sat, 24 Apr 2021 02:11:17 +0200 Subject: [PATCH] Implement /sort event trigger --- .../invtweaks/listener/SortListener.java | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 src/dev/w1zzrd/invtweaks/listener/SortListener.java diff --git a/src/dev/w1zzrd/invtweaks/listener/SortListener.java b/src/dev/w1zzrd/invtweaks/listener/SortListener.java new file mode 100644 index 0000000..18c92ff --- /dev/null +++ b/src/dev/w1zzrd/invtweaks/listener/SortListener.java @@ -0,0 +1,30 @@ +package dev.w1zzrd.invtweaks.listener; + +import dev.w1zzrd.logging.LoggerFactory; +import org.bukkit.Material; +import org.bukkit.block.Chest; +import org.bukkit.block.ShulkerBox; +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.player.PlayerInteractEvent; +import org.bukkit.inventory.PlayerInventory; + +import java.util.logging.Logger; + +public class SortListener implements Listener { + + private static final Logger logger = LoggerFactory.getLogger(SortListener.class); + + @EventHandler + public void onPlayerInteractEvent(final PlayerInteractEvent event) { + final PlayerInventory playerInventory = event.getPlayer().getInventory(); + + + if (event.hasBlock() && + (event.getClickedBlock().getState() instanceof Chest || event.getClickedBlock().getState() instanceof ShulkerBox) && + event.getPlayer().isSneaking() && + playerInventory.getItemInMainHand().getType().name().endsWith("_SWORD") + ) + event.getPlayer().performCommand("sort"); + } +}