diff --git a/plugin/src/main/java/net/momirealms/customcrops/bukkit/config/BukkitConfigManager.java b/plugin/src/main/java/net/momirealms/customcrops/bukkit/config/BukkitConfigManager.java index 5cf3e44..3a971b9 100644 --- a/plugin/src/main/java/net/momirealms/customcrops/bukkit/config/BukkitConfigManager.java +++ b/plugin/src/main/java/net/momirealms/customcrops/bukkit/config/BukkitConfigManager.java @@ -42,6 +42,9 @@ import net.momirealms.customcrops.common.locale.TranslationManager; import net.momirealms.customcrops.common.plugin.CustomCropsProperties; import net.momirealms.customcrops.common.util.ListUtils; import org.bukkit.Material; +import org.bukkit.NamespacedKey; +import org.bukkit.Registry; +import org.bukkit.inventory.ItemStack; import java.io.File; import java.io.FileInputStream; @@ -178,6 +181,10 @@ public class BukkitConfigManager extends ConfigManager { try { return Material.valueOf(it.toUpperCase(Locale.ENGLISH)); } catch (IllegalArgumentException e) { + Material material = Registry.MATERIAL.get(new NamespacedKey("minecraft", it.toLowerCase(Locale.ENGLISH))); + if (material != null) { + return material; + } plugin.getPluginLogger().warn("No enum constant exists", e); return Material.AIR; } diff --git a/plugin/src/main/java/net/momirealms/customcrops/bukkit/item/BukkitItemManager.java b/plugin/src/main/java/net/momirealms/customcrops/bukkit/item/BukkitItemManager.java index 138dd8b..e6698c2 100644 --- a/plugin/src/main/java/net/momirealms/customcrops/bukkit/item/BukkitItemManager.java +++ b/plugin/src/main/java/net/momirealms/customcrops/bukkit/item/BukkitItemManager.java @@ -38,9 +38,8 @@ import net.momirealms.customcrops.api.util.EventUtils; import net.momirealms.customcrops.api.util.LocationUtils; import net.momirealms.customcrops.api.util.PluginUtils; import net.momirealms.customcrops.common.item.Item; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; +import org.bukkit.*; +import org.bukkit.Registry; import org.bukkit.block.Block; import org.bukkit.block.BlockFace; import org.bukkit.entity.Entity; @@ -347,6 +346,10 @@ public class BukkitItemManager extends AbstractItemManager { try { return new ItemStack(Material.valueOf(id.toUpperCase(Locale.ENGLISH))); } catch (IllegalArgumentException e) { + Material material = Registry.MATERIAL.get(new NamespacedKey("minecraft", id.toLowerCase(Locale.ENGLISH))); + if (material != null) { + return new ItemStack(material); + } plugin.getPluginLogger().warn("Item " + id + " not exists", e); return new ItemStack(Material.PAPER); }