diff --git a/src/main/java/io/github/thebusybiscuit/slimefun4/utils/SlimefunUtils.java b/src/main/java/io/github/thebusybiscuit/slimefun4/utils/SlimefunUtils.java index 1776139c9f..bbd5e1abc5 100644 --- a/src/main/java/io/github/thebusybiscuit/slimefun4/utils/SlimefunUtils.java +++ b/src/main/java/io/github/thebusybiscuit/slimefun4/utils/SlimefunUtils.java @@ -396,8 +396,20 @@ private static boolean equalsItemMeta(ItemMeta itemMeta, ItemMeta sfitemMeta, bo } } - if (itemMeta instanceof PotionMeta && sfitemMeta instanceof PotionMeta) { - return ((PotionMeta) itemMeta).getBasePotionType().equals(((PotionMeta) sfitemMeta).getBasePotionType()); + if (itemMeta instanceof PotionMeta potionMeta && sfitemMeta instanceof PotionMeta sfPotionMeta) { + if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_20_5)) { + if (!potionMeta.hasBasePotionType() && !sfPotionMeta.hasBasePotionType()) { + return true; + } + + return potionMeta.hasBasePotionType() + && sfPotionMeta.hasBasePotionType() + && potionMeta.getBasePotionType().equals(sfPotionMeta.getBasePotionType()); + } else if (Slimefun.getMinecraftVersion().isMinecraftVersion(20, 2)) { + return potionMeta.getBasePotionType().equals(sfPotionMeta.getBasePotionType()); + } else { + return potionMeta.getBasePotionData().equals(sfPotionMeta.getBasePotionData()); + } } return true; }