From a6156de8ffa40688d89925f3b4cfc49c256cccd6 Mon Sep 17 00:00:00 2001 From: Auxilor Date: Wed, 20 Jan 2021 11:40:16 +0000 Subject: [PATCH] Fixed crystal crafting --- .../java/com/willfp/ecoarmor/sets/util/ArmorUtils.java | 8 ++++++-- .../willfp/ecoarmor/upgrades/crystal/UpgradeCrystal.java | 7 ++++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/eco-core/core-plugin/src/main/java/com/willfp/ecoarmor/sets/util/ArmorUtils.java b/eco-core/core-plugin/src/main/java/com/willfp/ecoarmor/sets/util/ArmorUtils.java index 035c7ab..0fca0ca 100644 --- a/eco-core/core-plugin/src/main/java/com/willfp/ecoarmor/sets/util/ArmorUtils.java +++ b/eco-core/core-plugin/src/main/java/com/willfp/ecoarmor/sets/util/ArmorUtils.java @@ -140,6 +140,10 @@ public class ArmorUtils { */ @Nullable public static String getCrystalTier(@NotNull final ItemStack itemStack) { + if (itemStack == null) { + return null; + } + ItemMeta meta = itemStack.getItemMeta(); if (meta == null) { @@ -287,10 +291,10 @@ public class ArmorUtils { } /** - * Get if item is advanced. + * Get the set from a shard. * * @param itemStack The item to check. - * @return If advanced. + * @return The set, or null if not a shard. */ @Nullable public static ArmorSet getShardSet(@NotNull final ItemStack itemStack) { diff --git a/eco-core/core-plugin/src/main/java/com/willfp/ecoarmor/upgrades/crystal/UpgradeCrystal.java b/eco-core/core-plugin/src/main/java/com/willfp/ecoarmor/upgrades/crystal/UpgradeCrystal.java index 1d9bc22..6393b65 100644 --- a/eco-core/core-plugin/src/main/java/com/willfp/ecoarmor/upgrades/crystal/UpgradeCrystal.java +++ b/eco-core/core-plugin/src/main/java/com/willfp/ecoarmor/upgrades/crystal/UpgradeCrystal.java @@ -103,7 +103,12 @@ public class UpgradeCrystal { List recipeStrings = EcoArmorConfigs.TIERS.getStrings(tier + ".crystal-recipe"); - RecipePartUtils.registerLookup("ecoarmor:upgrade_crystal_" + tier, s -> new ComplexRecipePart(test -> Objects.equals(tier, ArmorUtils.getCrystalTier(test)), out)); + RecipePartUtils.registerLookup("ecoarmor:upgrade_crystal_" + tier, s -> new ComplexRecipePart(test -> { + if (ArmorUtils.getCrystalTier(test) == null) { + return false; + } + return Objects.equals(tier, ArmorUtils.getCrystalTier(test)); + }, out)); for (int i = 0; i < 9; i++) { builder.setRecipePart(i, RecipePartUtils.lookup(recipeStrings.get(i)));