diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/BukkitRecipeManager.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/BukkitRecipeManager.java index 0b018c5aa..b0af3b91c 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/BukkitRecipeManager.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/BukkitRecipeManager.java @@ -174,7 +174,7 @@ public class BukkitRecipeManager extends AbstractRecipeManager { } static { - MIXED_RECIPE_CONVERTORS.put(RecipeTypes.SMITHING_TRANSFORM, (BukkitRecipeConvertor>) (id, recipe) -> { + MIXED_RECIPE_CONVERTORS.put(RecipeSerializers.SMITHING_TRANSFORM, (BukkitRecipeConvertor>) (id, recipe) -> { try { Object nmsRecipe = createMinecraftSmithingTransformRecipe(recipe); return () -> MINECRAFT_RECIPE_ADDER.accept(id, nmsRecipe); @@ -185,7 +185,7 @@ public class BukkitRecipeManager extends AbstractRecipeManager { return null; } }); - MIXED_RECIPE_CONVERTORS.put(RecipeTypes.SMITHING_TRIM, (BukkitRecipeConvertor>) (id, recipe) -> { + MIXED_RECIPE_CONVERTORS.put(RecipeSerializers.SMITHING_TRIM, (BukkitRecipeConvertor>) (id, recipe) -> { try { Object nmsRecipe = createMinecraftSmithingTrimRecipe(recipe); return () -> MINECRAFT_RECIPE_ADDER.accept(id, nmsRecipe); @@ -197,7 +197,7 @@ public class BukkitRecipeManager extends AbstractRecipeManager { } }); // TODO DO NOT USE BUKKIT RECIPE AS BRIDGE IN FUTURE VERSIONS, WE SHOULD DIRECTLY CONSTRUCT THOSE NMS RECIPES - MIXED_RECIPE_CONVERTORS.put(RecipeTypes.SHAPED, (BukkitRecipeConvertor>) (id, recipe) -> { + MIXED_RECIPE_CONVERTORS.put(RecipeSerializers.SHAPED, (BukkitRecipeConvertor>) (id, recipe) -> { ShapedRecipe shapedRecipe = new ShapedRecipe(new NamespacedKey(id.namespace(), id.value()), recipe.result(ItemBuildContext.EMPTY)); if (recipe.group() != null) shapedRecipe.setGroup(Objects.requireNonNull(recipe.group())); if (recipe.category() != null) shapedRecipe.setCategory(CraftingBookCategory.valueOf(Objects.requireNonNull(recipe.category()).name())); @@ -210,7 +210,7 @@ public class BukkitRecipeManager extends AbstractRecipeManager { injectShapedRecipe(id, recipe); }; }); - MIXED_RECIPE_CONVERTORS.put(RecipeTypes.SHAPELESS, (BukkitRecipeConvertor>) (id, recipe) -> { + MIXED_RECIPE_CONVERTORS.put(RecipeSerializers.SHAPELESS, (BukkitRecipeConvertor>) (id, recipe) -> { ShapelessRecipe shapelessRecipe = new ShapelessRecipe(new NamespacedKey(id.namespace(), id.value()), recipe.result(ItemBuildContext.EMPTY)); if (recipe.group() != null) shapelessRecipe.setGroup(Objects.requireNonNull(recipe.group())); if (recipe.category() != null) shapelessRecipe.setCategory(CraftingBookCategory.valueOf(Objects.requireNonNull(recipe.category()).name())); @@ -222,7 +222,7 @@ public class BukkitRecipeManager extends AbstractRecipeManager { injectShapelessRecipe(id, recipe); }; }); - MIXED_RECIPE_CONVERTORS.put(RecipeTypes.SMELTING, (BukkitRecipeConvertor>) (id, recipe) -> { + MIXED_RECIPE_CONVERTORS.put(RecipeSerializers.SMELTING, (BukkitRecipeConvertor>) (id, recipe) -> { FurnaceRecipe furnaceRecipe = new FurnaceRecipe( new NamespacedKey(id.namespace(), id.value()), recipe.result(ItemBuildContext.EMPTY), ingredientToBukkitRecipeChoice(recipe.ingredient()), @@ -235,7 +235,7 @@ public class BukkitRecipeManager extends AbstractRecipeManager { injectCookingRecipe(id, recipe); }; }); - MIXED_RECIPE_CONVERTORS.put(RecipeTypes.SMOKING, (BukkitRecipeConvertor>) (id, recipe) -> { + MIXED_RECIPE_CONVERTORS.put(RecipeSerializers.SMOKING, (BukkitRecipeConvertor>) (id, recipe) -> { SmokingRecipe smokingRecipe = new SmokingRecipe( new NamespacedKey(id.namespace(), id.value()), recipe.result(ItemBuildContext.EMPTY), ingredientToBukkitRecipeChoice(recipe.ingredient()), @@ -248,7 +248,7 @@ public class BukkitRecipeManager extends AbstractRecipeManager { injectCookingRecipe(id, recipe); }; }); - MIXED_RECIPE_CONVERTORS.put(RecipeTypes.BLASTING, (BukkitRecipeConvertor>) (id, recipe) -> { + MIXED_RECIPE_CONVERTORS.put(RecipeSerializers.BLASTING, (BukkitRecipeConvertor>) (id, recipe) -> { BlastingRecipe blastingRecipe = new BlastingRecipe( new NamespacedKey(id.namespace(), id.value()), recipe.result(ItemBuildContext.EMPTY), ingredientToBukkitRecipeChoice(recipe.ingredient()), @@ -261,7 +261,7 @@ public class BukkitRecipeManager extends AbstractRecipeManager { injectCookingRecipe(id, recipe); }; }); - MIXED_RECIPE_CONVERTORS.put(RecipeTypes.CAMPFIRE_COOKING, (BukkitRecipeConvertor>) (id, recipe) -> { + MIXED_RECIPE_CONVERTORS.put(RecipeSerializers.CAMPFIRE_COOKING, (BukkitRecipeConvertor>) (id, recipe) -> { CampfireRecipe campfireRecipe = new CampfireRecipe( new NamespacedKey(id.namespace(), id.value()), recipe.result(ItemBuildContext.EMPTY), ingredientToBukkitRecipeChoice(recipe.ingredient()), @@ -274,7 +274,7 @@ public class BukkitRecipeManager extends AbstractRecipeManager { injectCookingRecipe(id, recipe); }; }); - MIXED_RECIPE_CONVERTORS.put(RecipeTypes.STONECUTTING, (BukkitRecipeConvertor>) (id, recipe) -> { + MIXED_RECIPE_CONVERTORS.put(RecipeSerializers.STONECUTTING, (BukkitRecipeConvertor>) (id, recipe) -> { List itemStacks = new ArrayList<>(); for (UniqueKey item : recipe.ingredient().items()) { itemStacks.add(BukkitItemManager.instance().buildItemStack(item.key(), null)); @@ -304,10 +304,10 @@ public class BukkitRecipeManager extends AbstractRecipeManager { private final BukkitCraftEngine plugin; private final RecipeEventListener recipeEventListener; private final CrafterEventListener crafterEventListener; - // To optimize recipes loading, will return the flag later - private Object stolenFeatureFlagSet; // Some delayed tasks on main thread private final List delayedTasksOnMainThread = new ArrayList<>(); + // To optimize recipes loading, will return the flag later + private Object stolenFeatureFlagSet; public BukkitRecipeManager(BukkitCraftEngine plugin) { instance = this; @@ -431,7 +431,7 @@ public class BukkitRecipeManager extends AbstractRecipeManager { @SuppressWarnings("unchecked") private > BukkitRecipeConvertor findNMSRecipeConvertor(T recipe) { - return (BukkitRecipeConvertor) MIXED_RECIPE_CONVERTORS.get(recipe.type()); + return (BukkitRecipeConvertor) MIXED_RECIPE_CONVERTORS.get(recipe.serializerType()); } @SuppressWarnings("unchecked") diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/CrafterEventListener.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/CrafterEventListener.java index 5b5d2fd37..6fb03e8ec 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/CrafterEventListener.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/CrafterEventListener.java @@ -6,7 +6,7 @@ import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.ItemBuildContext; import net.momirealms.craftengine.core.item.ItemManager; import net.momirealms.craftengine.core.item.recipe.Recipe; -import net.momirealms.craftengine.core.item.recipe.RecipeTypes; +import net.momirealms.craftengine.core.item.recipe.RecipeType; import net.momirealms.craftengine.core.item.recipe.UniqueIdItem; import net.momirealms.craftengine.core.item.recipe.input.CraftingInput; import net.momirealms.craftengine.core.plugin.config.Config; @@ -71,12 +71,7 @@ public class CrafterEventListener implements Listener { return; } - Recipe ceRecipe = this.recipeManager.recipeByInput(RecipeTypes.SHAPELESS, input); - if (ceRecipe != null) { - event.setResult(ceRecipe.assemble(input, ItemBuildContext.EMPTY)); - return; - } - ceRecipe = this.recipeManager.recipeByInput(RecipeTypes.SHAPED, input); + Recipe ceRecipe = this.recipeManager.recipeByInput(RecipeType.CRAFTING, input); if (ceRecipe != null) { event.setResult(ceRecipe.assemble(input, ItemBuildContext.EMPTY)); return; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/RecipeEventListener.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/RecipeEventListener.java index 2eb25c028..ceb1036ee 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/RecipeEventListener.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/item/recipe/RecipeEventListener.java @@ -75,13 +75,13 @@ public class RecipeEventListener implements Listener { if (ItemStackUtils.isEmpty(item)) return; if (ItemStackUtils.isEmpty(fuelStack)) { SingleItemInput input = new SingleItemInput<>(getUniqueIdItem(item)); - Key recipeType; + RecipeType recipeType; if (furnaceInventory.getType() == InventoryType.FURNACE) { - recipeType = RecipeTypes.SMELTING; + recipeType = RecipeType.SMELTING; } else if (furnaceInventory.getType() == InventoryType.BLAST_FURNACE) { - recipeType = RecipeTypes.BLASTING; + recipeType = RecipeType.BLASTING; } else { - recipeType = RecipeTypes.SMOKING; + recipeType = RecipeType.SMOKING; } Recipe ceRecipe = this.recipeManager.recipeByInput(recipeType, input); @@ -352,7 +352,7 @@ public class RecipeEventListener implements Listener { return; } SingleItemInput input = new SingleItemInput<>(getUniqueIdItem(itemStack)); - CustomCampfireRecipe ceRecipe = (CustomCampfireRecipe) this.recipeManager.recipeByInput(RecipeTypes.CAMPFIRE_COOKING, input); + CustomCampfireRecipe ceRecipe = (CustomCampfireRecipe) this.recipeManager.recipeByInput(RecipeType.CAMPFIRE_COOKING, input); if (ceRecipe == null) { event.setCancelled(true); } @@ -377,7 +377,7 @@ public class RecipeEventListener implements Listener { ItemStack itemStack = event.getSource(); SingleItemInput input = new SingleItemInput<>(getUniqueIdItem(itemStack)); - CustomCampfireRecipe ceRecipe = (CustomCampfireRecipe) this.recipeManager.recipeByInput(RecipeTypes.CAMPFIRE_COOKING, input); + CustomCampfireRecipe ceRecipe = (CustomCampfireRecipe) this.recipeManager.recipeByInput(RecipeType.CAMPFIRE_COOKING, input); if (ceRecipe == null) { event.setTotalCookTime(Integer.MAX_VALUE); return; @@ -405,7 +405,7 @@ public class RecipeEventListener implements Listener { ItemStack itemStack = event.getSource(); SingleItemInput input = new SingleItemInput<>(getUniqueIdItem(itemStack)); - CustomCampfireRecipe ceRecipe = (CustomCampfireRecipe) this.recipeManager.recipeByInput(RecipeTypes.CAMPFIRE_COOKING, input); + CustomCampfireRecipe ceRecipe = (CustomCampfireRecipe) this.recipeManager.recipeByInput(RecipeType.CAMPFIRE_COOKING, input); if (ceRecipe == null) { event.setCancelled(true); return; @@ -815,18 +815,8 @@ public class RecipeEventListener implements Listener { Player player = InventoryUtils.getPlayerFromInventoryEvent(event); BukkitServerPlayer serverPlayer = this.plugin.adapt(player); - Key lastRecipe = serverPlayer.lastUsedRecipe(); - Recipe ceRecipe = this.recipeManager.recipeByInput(RecipeTypes.SHAPELESS, input, lastRecipe); - if (ceRecipe != null) { - inventory.setResult(ceRecipe.assemble(input, new ItemBuildContext(serverPlayer, ContextHolder.EMPTY))); - serverPlayer.setLastUsedRecipe(ceRecipe.id()); - if (!ceRecipe.id().equals(recipeId)) { - correctCraftingRecipeUsed(inventory, ceRecipe); - } - return; - } - ceRecipe = this.recipeManager.recipeByInput(RecipeTypes.SHAPED, input, lastRecipe); + Recipe ceRecipe = this.recipeManager.recipeByInput(RecipeType.CRAFTING, input, recipeId); if (ceRecipe != null) { inventory.setResult(ceRecipe.assemble(input, new ItemBuildContext(serverPlayer, ContextHolder.EMPTY))); serverPlayer.setLastUsedRecipe(ceRecipe.id()); @@ -902,7 +892,7 @@ public class RecipeEventListener implements Listener { getUniqueIdItem(inventory.getInputMineral()) ); - Recipe ceRecipe = this.recipeManager.recipeByInput(RecipeTypes.SMITHING_TRIM, input); + Recipe ceRecipe = this.recipeManager.recipeByInput(RecipeType.SMITHING, input, recipeId); if (ceRecipe == null) { event.setResult(null); return; @@ -940,7 +930,7 @@ public class RecipeEventListener implements Listener { getUniqueIdItem(addition) ); - Recipe ceRecipe = this.recipeManager.recipeByInput(RecipeTypes.SMITHING_TRANSFORM, input); + Recipe ceRecipe = this.recipeManager.recipeByInput(RecipeType.SMITHING, input, recipeId); if (ceRecipe == null) { event.setResult(null); return; diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/injector/InjectedCacheCheck.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/injector/InjectedCacheCheck.java index f8fc33654..03ff73844 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/injector/InjectedCacheCheck.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/injector/InjectedCacheCheck.java @@ -1,5 +1,6 @@ package net.momirealms.craftengine.bukkit.plugin.injector; +import net.momirealms.craftengine.core.item.recipe.RecipeType; import net.momirealms.craftengine.core.util.Key; public interface InjectedCacheCheck { @@ -8,9 +9,9 @@ public interface InjectedCacheCheck { void recipeType(Object recipeType); - Key customRecipeType(); + RecipeType customRecipeType(); - void customRecipeType(Key customRecipeType); + void customRecipeType(RecipeType customRecipeType); Object lastRecipe(); diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/injector/RecipeInjector.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/injector/RecipeInjector.java index 8c8babf2e..63ad89c4b 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/injector/RecipeInjector.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/injector/RecipeInjector.java @@ -29,7 +29,7 @@ import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.ItemKeys; import net.momirealms.craftengine.core.item.data.FireworkExplosion; import net.momirealms.craftengine.core.item.recipe.CustomCookingRecipe; -import net.momirealms.craftengine.core.item.recipe.RecipeTypes; +import net.momirealms.craftengine.core.item.recipe.RecipeType; import net.momirealms.craftengine.core.item.recipe.UniqueIdItem; import net.momirealms.craftengine.core.item.recipe.input.SingleItemInput; import net.momirealms.craftengine.core.util.*; @@ -61,7 +61,7 @@ public class RecipeInjector { .defineField("recipeType", Object.class, Visibility.PUBLIC) .method(ElementMatchers.named("recipeType")) .intercept(FieldAccessor.ofField("recipeType")) - .defineField("customRecipeType", Key.class, Visibility.PUBLIC) + .defineField("customRecipeType", RecipeType.class, Visibility.PUBLIC) .method(ElementMatchers.named("customRecipeType")) .intercept(FieldAccessor.ofField("customRecipeType")) .defineField("lastRecipe", Object.class, Visibility.PUBLIC) @@ -158,13 +158,13 @@ public class RecipeInjector { Object recipeType = FastNMS.INSTANCE.field$AbstractFurnaceBlockEntity$recipeType(entity); InjectedCacheCheck injectedChecker = (InjectedCacheCheck) ReflectionUtils.UNSAFE.allocateInstance(clazz$InjectedCacheChecker); if (recipeType == MRecipeTypes.SMELTING) { - injectedChecker.customRecipeType(RecipeTypes.SMELTING); + injectedChecker.customRecipeType(RecipeType.SMELTING); injectedChecker.recipeType(MRecipeTypes.SMELTING); } else if (recipeType == MRecipeTypes.BLASTING) { - injectedChecker.customRecipeType(RecipeTypes.BLASTING); + injectedChecker.customRecipeType(RecipeType.BLASTING); injectedChecker.recipeType(MRecipeTypes.BLASTING); } else if (recipeType == MRecipeTypes.SMOKING) { - injectedChecker.customRecipeType(RecipeTypes.SMOKING); + injectedChecker.customRecipeType(RecipeType.SMOKING); injectedChecker.recipeType(MRecipeTypes.SMOKING); } else { throw new IllegalStateException("RecipeType " + recipeType + " not supported"); @@ -174,7 +174,7 @@ public class RecipeInjector { Object quickCheck = CoreReflections.field$CampfireBlockEntity$quickCheck.get(entity); if (clazz$InjectedCacheChecker.isInstance(quickCheck)) return; // already injected InjectedCacheCheck injectedChecker = (InjectedCacheCheck) ReflectionUtils.UNSAFE.allocateInstance(clazz$InjectedCacheChecker); - injectedChecker.customRecipeType(RecipeTypes.CAMPFIRE_COOKING); + injectedChecker.customRecipeType(RecipeType.CAMPFIRE_COOKING); injectedChecker.recipeType(MRecipeTypes.CAMPFIRE_COOKING); CoreReflections.field$CampfireBlockEntity$quickCheck.set(entity, injectedChecker); } diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/util/InteractUtils.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/util/InteractUtils.java index b9f6c5556..2bbe31a7a 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/util/InteractUtils.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/util/InteractUtils.java @@ -9,7 +9,7 @@ import net.momirealms.craftengine.core.entity.EntityTypeKeys; import net.momirealms.craftengine.core.item.Item; import net.momirealms.craftengine.core.item.ItemKeys; import net.momirealms.craftengine.core.item.behavior.ItemBehavior; -import net.momirealms.craftengine.core.item.recipe.RecipeTypes; +import net.momirealms.craftengine.core.item.recipe.RecipeType; import net.momirealms.craftengine.core.item.recipe.UniqueIdItem; import net.momirealms.craftengine.core.item.recipe.input.SingleItemInput; import net.momirealms.craftengine.core.plugin.CraftEngine; @@ -129,13 +129,13 @@ public class InteractUtils { }); registerInteraction(BlockKeys.SOUL_CAMPFIRE, (player, item, blockState, result) -> { if (!Config.enableRecipeSystem()) return false; - return BukkitRecipeManager.instance().recipeByInput(RecipeTypes.CAMPFIRE_COOKING, new SingleItemInput<>(new UniqueIdItem<>( + return BukkitRecipeManager.instance().recipeByInput(RecipeType.CAMPFIRE_COOKING, new SingleItemInput<>(new UniqueIdItem<>( item.recipeIngredientId(), item ))) != null; }); registerInteraction(BlockKeys.CAMPFIRE, (player, item, blockState, result) -> { if (!Config.enableRecipeSystem()) return false; - return BukkitRecipeManager.instance().recipeByInput(RecipeTypes.CAMPFIRE_COOKING, new SingleItemInput<>(new UniqueIdItem<>( + return BukkitRecipeManager.instance().recipeByInput(RecipeType.CAMPFIRE_COOKING, new SingleItemInput<>(new UniqueIdItem<>( item.recipeIngredientId(), item ))) != null; }); diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/AbstractRecipeManager.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/AbstractRecipeManager.java index b39dbb002..5334d96ae 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/AbstractRecipeManager.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/AbstractRecipeManager.java @@ -22,7 +22,7 @@ import java.util.*; public abstract class AbstractRecipeManager implements RecipeManager { protected final VanillaRecipeReader recipeReader; - protected final Map>> byType = new HashMap<>(); + protected final Map>> byType = new HashMap<>(); protected final Map> byId = new HashMap<>(); protected final Map>> byResult = new HashMap<>(); protected final Map>> byIngredient = new HashMap<>(); @@ -84,7 +84,7 @@ public abstract class AbstractRecipeManager implements RecipeManager { } @Override - public List> recipesByType(Key type) { + public List> recipesByType(RecipeType type) { if (this.isReloading) return List.of(); return this.byType.getOrDefault(type, List.of()); } @@ -103,7 +103,7 @@ public abstract class AbstractRecipeManager implements RecipeManager { @Nullable @Override - public Recipe recipeByInput(Key type, RecipeInput input) { + public Recipe recipeByInput(RecipeType type, RecipeInput input) { if (this.isReloading) return null; List> recipes = this.byType.get(type); if (recipes == null) return null; @@ -117,7 +117,7 @@ public abstract class AbstractRecipeManager implements RecipeManager { @Nullable @Override - public Recipe recipeByInput(Key type, RecipeInput input, Key lastRecipe) { + public Recipe recipeByInput(RecipeType type, RecipeInput input, Key lastRecipe) { if (this.isReloading) return null; if (lastRecipe != null) { Recipe last = this.byId.get(lastRecipe); @@ -164,7 +164,7 @@ public abstract class AbstractRecipeManager implements RecipeManager { if (AbstractRecipeManager.this.byId.containsKey(id)) { throw new LocalizedResourceConfigException("warning.config.recipe.duplicate", path, id); } - Recipe recipe = RecipeTypes.fromMap(id, section); + Recipe recipe = RecipeSerializers.fromMap(id, section); try { registerInternalRecipe(id, recipe); registerPlatformRecipe(id, recipe); diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomBlastingRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomBlastingRecipe.java index 127d5a6b4..2ab483f74 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomBlastingRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomBlastingRecipe.java @@ -16,8 +16,13 @@ public class CustomBlastingRecipe extends CustomCookingRecipe { } @Override - public @NotNull Key type() { - return RecipeTypes.BLASTING; + public @NotNull Key serializerType() { + return RecipeSerializers.BLASTING; + } + + @Override + public RecipeType type() { + return RecipeType.BLASTING; } public static class Factory extends AbstractRecipeFactory { diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomBrewingRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomBrewingRecipe.java index 1b622acfc..012eefc78 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomBrewingRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomBrewingRecipe.java @@ -56,8 +56,13 @@ public class CustomBrewingRecipe implements FixedResultRecipe { } @Override - public @NotNull Key type() { - return RecipeTypes.BREWING; + public @NotNull Key serializerType() { + return RecipeSerializers.BREWING; + } + + @Override + public RecipeType type() { + return RecipeType.BREWING; } @NotNull diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomCampfireRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomCampfireRecipe.java index 38d7e5aff..6f34328fa 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomCampfireRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomCampfireRecipe.java @@ -16,8 +16,13 @@ public class CustomCampfireRecipe extends CustomCookingRecipe { } @Override - public @NotNull Key type() { - return RecipeTypes.CAMPFIRE_COOKING; + public @NotNull Key serializerType() { + return RecipeSerializers.CAMPFIRE_COOKING; + } + + @Override + public RecipeType type() { + return RecipeType.CAMPFIRE_COOKING; } public static class Factory extends AbstractRecipeFactory { diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomCraftingTableRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomCraftingTableRecipe.java index 866a2db07..5d2c241fe 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomCraftingTableRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomCraftingTableRecipe.java @@ -13,4 +13,9 @@ public abstract class CustomCraftingTableRecipe extends AbstractGroupedRecipe public CraftingRecipeCategory category() { return category; } + + @Override + public RecipeType type() { + return RecipeType.CRAFTING; + } } diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomShapedRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomShapedRecipe.java index 2350a975b..274a2e5a8 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomShapedRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomShapedRecipe.java @@ -38,8 +38,8 @@ public class CustomShapedRecipe extends CustomCraftingTableRecipe { } @Override - public @NotNull Key type() { - return RecipeTypes.SHAPED; + public @NotNull Key serializerType() { + return RecipeSerializers.SHAPED; } public Pattern pattern() { diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomShapelessRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomShapelessRecipe.java index 5ff9494e0..aae980768 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomShapelessRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomShapelessRecipe.java @@ -47,8 +47,8 @@ public class CustomShapelessRecipe extends CustomCraftingTableRecipe { } @Override - public @NotNull Key type() { - return RecipeTypes.SHAPELESS; + public @NotNull Key serializerType() { + return RecipeSerializers.SHAPELESS; } public static class Factory extends AbstractRecipeFactory { diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomSmeltingRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomSmeltingRecipe.java index 8d7c2be96..ef0dc9a6c 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomSmeltingRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomSmeltingRecipe.java @@ -16,8 +16,13 @@ public class CustomSmeltingRecipe extends CustomCookingRecipe { } @Override - public @NotNull Key type() { - return RecipeTypes.SMELTING; + public @NotNull Key serializerType() { + return RecipeSerializers.SMELTING; + } + + @Override + public RecipeType type() { + return RecipeType.SMELTING; } public static class Factory extends AbstractRecipeFactory { diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomSmithingTransformRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomSmithingTransformRecipe.java index ae26068cd..80bafeccf 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomSmithingTransformRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomSmithingTransformRecipe.java @@ -78,8 +78,13 @@ public class CustomSmithingTransformRecipe implements FixedResultRecipe { } @Override - public @NotNull Key type() { - return RecipeTypes.SMITHING_TRANSFORM; + public @NotNull Key serializerType() { + return RecipeSerializers.SMITHING_TRANSFORM; + } + + @Override + public RecipeType type() { + return RecipeType.SMITHING; } @Override diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomSmithingTrimRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomSmithingTrimRecipe.java index 993fb1a31..18d1b7062 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomSmithingTrimRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomSmithingTrimRecipe.java @@ -80,8 +80,13 @@ public class CustomSmithingTrimRecipe implements Recipe { } @Override - public @NotNull Key type() { - return RecipeTypes.SMITHING_TRIM; + public @NotNull Key serializerType() { + return RecipeSerializers.SMITHING_TRIM; + } + + @Override + public RecipeType type() { + return RecipeType.SMITHING; } @Override diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomSmokingRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomSmokingRecipe.java index 83939ac29..1ea3590af 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomSmokingRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomSmokingRecipe.java @@ -16,8 +16,13 @@ public class CustomSmokingRecipe extends CustomCookingRecipe { } @Override - public @NotNull Key type() { - return RecipeTypes.SMOKING; + public @NotNull Key serializerType() { + return RecipeSerializers.SMOKING; + } + + @Override + public RecipeType type() { + return RecipeType.SMOKING; } public static class Factory extends AbstractRecipeFactory { diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomStoneCuttingRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomStoneCuttingRecipe.java index 95e91ef77..485dc6b74 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomStoneCuttingRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/CustomStoneCuttingRecipe.java @@ -31,8 +31,13 @@ public class CustomStoneCuttingRecipe extends AbstractGroupedRecipe { } @Override - public @NotNull Key type() { - return RecipeTypes.STONECUTTING; + public @NotNull Key serializerType() { + return RecipeSerializers.STONECUTTING; + } + + @Override + public RecipeType type() { + return RecipeType.STONECUTTING; } public Ingredient ingredient() { diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/Recipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/Recipe.java index a07812c06..2068a735b 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/Recipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/Recipe.java @@ -16,7 +16,9 @@ public interface Recipe { List> ingredientsInUse(); @NotNull - Key type(); + Key serializerType(); + + RecipeType type(); Key id(); } diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/RecipeManager.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/RecipeManager.java index c1fdcdbc3..fbe916176 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/RecipeManager.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/RecipeManager.java @@ -19,15 +19,15 @@ public interface RecipeManager extends Manageable { Optional> recipeById(Key id); - List> recipesByType(Key type); + List> recipesByType(RecipeType type); List> recipeByResult(Key result); List> recipeByIngredient(Key ingredient); @Nullable - Recipe recipeByInput(Key type, RecipeInput input); + Recipe recipeByInput(RecipeType type, RecipeInput input); @Nullable - Recipe recipeByInput(Key type, RecipeInput input, @Nullable Key lastRecipe); + Recipe recipeByInput(RecipeType type, RecipeInput input, @Nullable Key lastRecipe); } diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/RecipeTypes.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/RecipeSerializers.java similarity index 96% rename from core/src/main/java/net/momirealms/craftengine/core/item/recipe/RecipeTypes.java rename to core/src/main/java/net/momirealms/craftengine/core/item/recipe/RecipeSerializers.java index d4b7ee61a..4ba3385db 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/RecipeTypes.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/RecipeSerializers.java @@ -10,7 +10,7 @@ import net.momirealms.craftengine.core.util.ResourceKey; import java.util.Map; -public class RecipeTypes { +public final class RecipeSerializers { public static final Key SHAPED = Key.of("minecraft:shaped"); public static final Key SHAPELESS = Key.of("minecraft:shapeless"); public static final Key SMELTING = Key.of("minecraft:smelting"); @@ -21,7 +21,6 @@ public class RecipeTypes { public static final Key SMITHING_TRANSFORM = Key.of("minecraft:smithing_transform"); public static final Key SMITHING_TRIM = Key.of("minecraft:smithing_trim"); public static final Key BREWING = Key.of("minecraft:brewing"); - public static final Key SPECIAL = Key.of("minecraft:special"); static { register(SHAPED, CustomShapedRecipe.FACTORY); diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/RecipeType.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/RecipeType.java new file mode 100644 index 000000000..1d86dafd7 --- /dev/null +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/RecipeType.java @@ -0,0 +1,22 @@ +package net.momirealms.craftengine.core.item.recipe; + +public enum RecipeType { + CRAFTING("crafting"), + SMELTING("smelting"), + BLASTING("blasting"), + SMOKING("smoking"), + CAMPFIRE_COOKING("campfire_cooking"), + STONECUTTING("stonecutting"), + BREWING("brewing"), + SMITHING("smithing"); + + private final String id; + + RecipeType(String id) { + this.id = id; + } + + public String id() { + return id; + } +} diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaBlastingRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaBlastingRecipe.java index a78b6bb0c..bacbaa854 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaBlastingRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaBlastingRecipe.java @@ -1,7 +1,7 @@ package net.momirealms.craftengine.core.item.recipe.vanilla; import net.momirealms.craftengine.core.item.recipe.CookingRecipeCategory; -import net.momirealms.craftengine.core.item.recipe.RecipeTypes; +import net.momirealms.craftengine.core.item.recipe.RecipeSerializers; import net.momirealms.craftengine.core.util.Key; import java.util.List; @@ -14,6 +14,6 @@ public class VanillaBlastingRecipe extends VanillaCookingRecipe { @Override public Key type() { - return RecipeTypes.BLASTING; + return RecipeSerializers.BLASTING; } } diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaCampfireRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaCampfireRecipe.java index aa12d79db..5a2b1624a 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaCampfireRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaCampfireRecipe.java @@ -1,7 +1,7 @@ package net.momirealms.craftengine.core.item.recipe.vanilla; import net.momirealms.craftengine.core.item.recipe.CookingRecipeCategory; -import net.momirealms.craftengine.core.item.recipe.RecipeTypes; +import net.momirealms.craftengine.core.item.recipe.RecipeSerializers; import net.momirealms.craftengine.core.util.Key; import java.util.List; @@ -14,6 +14,6 @@ public class VanillaCampfireRecipe extends VanillaCookingRecipe { @Override public Key type() { - return RecipeTypes.CAMPFIRE_COOKING; + return RecipeSerializers.CAMPFIRE_COOKING; } } diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaShapedRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaShapedRecipe.java index 753590f5c..bedb18ef2 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaShapedRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaShapedRecipe.java @@ -1,7 +1,7 @@ package net.momirealms.craftengine.core.item.recipe.vanilla; import net.momirealms.craftengine.core.item.recipe.CraftingRecipeCategory; -import net.momirealms.craftengine.core.item.recipe.RecipeTypes; +import net.momirealms.craftengine.core.item.recipe.RecipeSerializers; import net.momirealms.craftengine.core.util.Key; import java.util.List; @@ -31,6 +31,6 @@ public class VanillaShapedRecipe extends VanillaCraftingRecipe { @Override public Key type() { - return RecipeTypes.SHAPED; + return RecipeSerializers.SHAPED; } } diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaShapelessRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaShapelessRecipe.java index 2e06b2988..1c2c912c3 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaShapelessRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaShapelessRecipe.java @@ -1,7 +1,7 @@ package net.momirealms.craftengine.core.item.recipe.vanilla; import net.momirealms.craftengine.core.item.recipe.CraftingRecipeCategory; -import net.momirealms.craftengine.core.item.recipe.RecipeTypes; +import net.momirealms.craftengine.core.item.recipe.RecipeSerializers; import net.momirealms.craftengine.core.util.Key; import java.util.List; @@ -20,6 +20,6 @@ public class VanillaShapelessRecipe extends VanillaCraftingRecipe { @Override public Key type() { - return RecipeTypes.SHAPELESS; + return RecipeSerializers.SHAPELESS; } } diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaSmeltingRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaSmeltingRecipe.java index ebbed4b21..34db78614 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaSmeltingRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaSmeltingRecipe.java @@ -1,7 +1,7 @@ package net.momirealms.craftengine.core.item.recipe.vanilla; import net.momirealms.craftengine.core.item.recipe.CookingRecipeCategory; -import net.momirealms.craftengine.core.item.recipe.RecipeTypes; +import net.momirealms.craftengine.core.item.recipe.RecipeSerializers; import net.momirealms.craftengine.core.util.Key; import java.util.List; @@ -14,6 +14,6 @@ public class VanillaSmeltingRecipe extends VanillaCookingRecipe { @Override public Key type() { - return RecipeTypes.SMELTING; + return RecipeSerializers.SMELTING; } } diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaSmithingTransformRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaSmithingTransformRecipe.java index fef4ffbda..213d352e8 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaSmithingTransformRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaSmithingTransformRecipe.java @@ -1,6 +1,6 @@ package net.momirealms.craftengine.core.item.recipe.vanilla; -import net.momirealms.craftengine.core.item.recipe.RecipeTypes; +import net.momirealms.craftengine.core.item.recipe.RecipeSerializers; import net.momirealms.craftengine.core.util.Key; import java.util.List; @@ -20,7 +20,7 @@ public class VanillaSmithingTransformRecipe implements VanillaRecipe { @Override public Key type() { - return RecipeTypes.SMITHING_TRANSFORM; + return RecipeSerializers.SMITHING_TRANSFORM; } public RecipeResult result() { diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaSmithingTrimRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaSmithingTrimRecipe.java index 4b6bee14d..432b131c2 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaSmithingTrimRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaSmithingTrimRecipe.java @@ -1,6 +1,6 @@ package net.momirealms.craftengine.core.item.recipe.vanilla; -import net.momirealms.craftengine.core.item.recipe.RecipeTypes; +import net.momirealms.craftengine.core.item.recipe.RecipeSerializers; import net.momirealms.craftengine.core.util.Key; import org.jetbrains.annotations.Nullable; @@ -23,7 +23,7 @@ public class VanillaSmithingTrimRecipe implements VanillaRecipe { @Override public Key type() { - return RecipeTypes.SMITHING_TRIM; + return RecipeSerializers.SMITHING_TRIM; } public List base() { diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaSmokingRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaSmokingRecipe.java index 736a3fd5e..fbb262398 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaSmokingRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaSmokingRecipe.java @@ -1,7 +1,7 @@ package net.momirealms.craftengine.core.item.recipe.vanilla; import net.momirealms.craftengine.core.item.recipe.CookingRecipeCategory; -import net.momirealms.craftengine.core.item.recipe.RecipeTypes; +import net.momirealms.craftengine.core.item.recipe.RecipeSerializers; import net.momirealms.craftengine.core.util.Key; import java.util.List; @@ -14,6 +14,6 @@ public class VanillaSmokingRecipe extends VanillaCookingRecipe { @Override public Key type() { - return RecipeTypes.SMOKING; + return RecipeSerializers.SMOKING; } } diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaStoneCuttingRecipe.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaStoneCuttingRecipe.java index 864557c68..6770a90c9 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaStoneCuttingRecipe.java +++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/vanilla/VanillaStoneCuttingRecipe.java @@ -1,6 +1,6 @@ package net.momirealms.craftengine.core.item.recipe.vanilla; -import net.momirealms.craftengine.core.item.recipe.RecipeTypes; +import net.momirealms.craftengine.core.item.recipe.RecipeSerializers; import net.momirealms.craftengine.core.util.Key; import java.util.List; @@ -19,6 +19,6 @@ public class VanillaStoneCuttingRecipe extends VanillaGroupedRecipe { @Override public Key type() { - return RecipeTypes.STONECUTTING; + return RecipeSerializers.STONECUTTING; } } diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/gui/category/ItemBrowserManagerImpl.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/gui/category/ItemBrowserManagerImpl.java index e51058d2f..fd5b95839 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/plugin/gui/category/ItemBrowserManagerImpl.java +++ b/core/src/main/java/net/momirealms/craftengine/core/plugin/gui/category/ItemBrowserManagerImpl.java @@ -392,24 +392,24 @@ public class ItemBrowserManagerImpl implements ItemBrowserManager { if (index >= recipes.size()) return; if (depth > MAX_RECIPE_DEPTH) return; Recipe recipe = recipes.get(index); - Key recipeType = recipe.type(); - if (recipeType == RecipeTypes.SHAPELESS || recipeType == RecipeTypes.SHAPED) { + Key recipeType = recipe.serializerType(); + if (recipeType == RecipeSerializers.SHAPELESS || recipeType == RecipeSerializers.SHAPED) { openCraftingRecipePage(player, (CustomCraftingTableRecipe) recipe, parentGui, recipes, index, depth, canOpenNoRecipePage); return; } - if (recipeType == RecipeTypes.BLASTING || recipeType == RecipeTypes.CAMPFIRE_COOKING || recipeType == RecipeTypes.SMOKING || recipeType == RecipeTypes.SMELTING) { + if (recipeType == RecipeSerializers.BLASTING || recipeType == RecipeSerializers.CAMPFIRE_COOKING || recipeType == RecipeSerializers.SMOKING || recipeType == RecipeSerializers.SMELTING) { openCookingRecipePage(player, (CustomCookingRecipe) recipe, parentGui, recipes, index, depth, canOpenNoRecipePage); return; } - if (recipeType == RecipeTypes.STONECUTTING) { + if (recipeType == RecipeSerializers.STONECUTTING) { openStoneCuttingRecipePage(player, (CustomStoneCuttingRecipe) recipe, parentGui, recipes, index, depth, canOpenNoRecipePage); return; } - if (recipeType == RecipeTypes.SMITHING_TRANSFORM) { + if (recipeType == RecipeSerializers.SMITHING_TRANSFORM) { openSmithingTransformRecipePage(player, (CustomSmithingTransformRecipe) recipe, parentGui, recipes, index, depth, canOpenNoRecipePage); return; } - if (recipeType == RecipeTypes.BREWING) { + if (recipeType == RecipeSerializers.BREWING) { openBrewingRecipePage(player, (CustomBrewingRecipe) recipe, parentGui, recipes, index, depth, canOpenNoRecipePage); return; } @@ -1041,11 +1041,11 @@ public class ItemBrowserManagerImpl implements ItemBrowserManager { })); String title; - if (recipe.type() == RecipeTypes.SMELTING) { + if (recipe.serializerType() == RecipeSerializers.SMELTING) { title = Constants.RECIPE_SMELTING_TITLE; - } else if (recipe.type() == RecipeTypes.BLASTING) { + } else if (recipe.serializerType() == RecipeSerializers.BLASTING) { title = Constants.RECIPE_BLASTING_TITLE; - } else if (recipe.type() == RecipeTypes.CAMPFIRE_COOKING) { + } else if (recipe.serializerType() == RecipeSerializers.CAMPFIRE_COOKING) { title = Constants.RECIPE_CAMPFIRE_TITLE; } else { title = Constants.RECIPE_SMOKING_TITLE; @@ -1154,7 +1154,7 @@ public class ItemBrowserManagerImpl implements ItemBrowserManager { })); char start = 'A'; - if (recipe.type() == RecipeTypes.SHAPED) { + if (recipe.serializerType() == RecipeSerializers.SHAPED) { String[] pattern = ((CustomShapedRecipe) recipe).pattern().pattern(); for (int x = 0; x < 3; x++) { for (int y = 0; y < 3; y++) {