diff --git a/src/main/java/io/github/thebusybiscuit/slimefun4/implementation/items/electric/gadgets/MultiTool.java b/src/main/java/io/github/thebusybiscuit/slimefun4/implementation/items/electric/gadgets/MultiTool.java index b9cd1696b..4335c01b2 100644 --- a/src/main/java/io/github/thebusybiscuit/slimefun4/implementation/items/electric/gadgets/MultiTool.java +++ b/src/main/java/io/github/thebusybiscuit/slimefun4/implementation/items/electric/gadgets/MultiTool.java @@ -6,6 +6,8 @@ import java.util.List; import java.util.Map; import java.util.UUID; +import io.github.thebusybiscuit.slimefun4.implementation.SlimefunItems; +import io.github.thebusybiscuit.slimefun4.utils.SlimefunUtils; import org.bukkit.ChatColor; import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; @@ -67,8 +69,11 @@ public class MultiTool extends SlimefunItem implements Rechargeable { int index = selectedMode.getOrDefault(p.getUniqueId(), 0); if (!p.isSneaking()) { + SlimefunItem sfItem = modes.get(index).getItem(); + if (sfItem.getID().equals(SlimefunItems.STAFF_WIND.getItemId()) && (SlimefunUtils.isItemSimilar(p.getInventory().getItemInMainHand(), SlimefunItems.STAFF_WIND, false, false) || SlimefunUtils.isItemSimilar(p.getInventory().getItemInOffHand(), SlimefunItems.STAFF_WIND, false, false))) { + return; + } if (removeItemCharge(item, COST)) { - SlimefunItem sfItem = modes.get(index).getItem(); if (sfItem != null) { sfItem.callItemHandler(ItemUseHandler.class, handler -> handler.onRightClick(e)); diff --git a/src/main/java/io/github/thebusybiscuit/slimefun4/implementation/items/magical/WindStaff.java b/src/main/java/io/github/thebusybiscuit/slimefun4/implementation/items/magical/WindStaff.java index e71c52952..180d973a1 100644 --- a/src/main/java/io/github/thebusybiscuit/slimefun4/implementation/items/magical/WindStaff.java +++ b/src/main/java/io/github/thebusybiscuit/slimefun4/implementation/items/magical/WindStaff.java @@ -1,5 +1,7 @@ package io.github.thebusybiscuit.slimefun4.implementation.items.magical; +import io.github.thebusybiscuit.slimefun4.implementation.SlimefunItems; +import io.github.thebusybiscuit.slimefun4.utils.SlimefunUtils; import org.bukkit.Bukkit; import org.bukkit.Effect; import org.bukkit.GameMode; @@ -28,7 +30,7 @@ public class WindStaff extends SimpleSlimefunItem { Player p = e.getPlayer(); if (p.getFoodLevel() >= 2) { - if (p.getInventory().getItemInMainHand().getType() != Material.SHEARS && p.getInventory().getItemInOffHand().getType() != Material.SHEARS && p.getGameMode() != GameMode.CREATIVE) { + if ((SlimefunUtils.isItemSimilar(p.getInventory().getItemInMainHand(), SlimefunItems.STAFF_WIND, false, false) || SlimefunUtils.isItemSimilar(p.getInventory().getItemInOffHand(), SlimefunItems.STAFF_WIND, false, false)) && p.getGameMode() != GameMode.CREATIVE) { FoodLevelChangeEvent event = new FoodLevelChangeEvent(p, p.getFoodLevel() - 2); Bukkit.getPluginManager().callEvent(event);