diff --git a/src/main/java/org/betterx/bclib/complexmaterials/ComplexMaterialSet.java b/src/main/java/org/betterx/bclib/complexmaterials/ComplexMaterialSet.java index f6909756..3903a4fb 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/ComplexMaterialSet.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/ComplexMaterialSet.java @@ -1,20 +1,19 @@ package org.betterx.bclib.complexmaterials; import org.betterx.bclib.complexmaterials.entry.MaterialSlot; +import org.betterx.bclib.complexmaterials.entry.SlotMap; import net.minecraft.world.item.Item; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.List; - public abstract class ComplexMaterialSet> extends ComplexMaterial { - List> slots; + SlotMap slots; protected ComplexMaterialSet(String modID, String baseName, String receipGroupPrefix) { super(modID, baseName, receipGroupPrefix); } - protected abstract List> createMaterialSlots(); + protected abstract SlotMap createMaterialSlots(); @Override @@ -22,6 +21,7 @@ public abstract class ComplexMaterialSet> extend this.slots = createMaterialSlots(); for (MaterialSlot slot : slots) { + slot.onInit((M) this); slot.addBlockEntry((M) this, this::addBlockEntry); } for (MaterialSlot slot : slots) { diff --git a/src/main/java/org/betterx/bclib/complexmaterials/WoodenComplexMaterial.java b/src/main/java/org/betterx/bclib/complexmaterials/WoodenComplexMaterial.java index f7d51f0c..cef5fe53 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/WoodenComplexMaterial.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/WoodenComplexMaterial.java @@ -1,7 +1,7 @@ package org.betterx.bclib.complexmaterials; import org.betterx.bclib.BCLib; -import org.betterx.bclib.complexmaterials.entry.MaterialSlot; +import org.betterx.bclib.complexmaterials.entry.SlotMap; import org.betterx.bclib.complexmaterials.set.wood.WoodSlots; import org.betterx.bclib.items.boat.BoatTypeOverride; import org.betterx.worlds.together.tag.v3.TagManager; @@ -14,7 +14,6 @@ import net.minecraft.world.level.material.MapColor; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.fabricmc.fabric.api.registry.FlammableBlockRegistry; -import java.util.List; import java.util.function.Consumer; import org.jetbrains.annotations.Nullable; @@ -97,9 +96,8 @@ public class WoodenComplexMaterial extends ComplexMaterialSet> createMaterialSlots() { - - var list = List.of( + protected SlotMap createMaterialSlots() { + return SlotMap.of( WoodSlots.STRIPPED_LOG, WoodSlots.STRIPPED_BARK, WoodSlots.LOG, @@ -119,12 +117,8 @@ public class WoodenComplexMaterial extends ComplexMaterialSet { @NotNull @@ -18,16 +17,8 @@ public abstract class MaterialSlot { public abstract void addRecipeEntry(M parentMaterial, Consumer adder); public void addItemEntry(M parentMaterial, Consumer adder) { - ItemEntry item = getItemEntry(parentMaterial); - if (item != null) { - adder.accept(item); - } } - @Nullable - protected ItemEntry getItemEntry(M parentMaterial) { - return null; - } public void onInit(M parentMaterial) { } diff --git a/src/main/java/org/betterx/bclib/complexmaterials/entry/SimpleBlockOnlyMaterialSlot.java b/src/main/java/org/betterx/bclib/complexmaterials/entry/SimpleBlockOnlyMaterialSlot.java new file mode 100644 index 00000000..3820d41c --- /dev/null +++ b/src/main/java/org/betterx/bclib/complexmaterials/entry/SimpleBlockOnlyMaterialSlot.java @@ -0,0 +1,60 @@ +package org.betterx.bclib.complexmaterials.entry; + +import org.betterx.bclib.complexmaterials.ComplexMaterial; + +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockBehaviour; + +import java.util.function.BiFunction; +import java.util.function.Supplier; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +public abstract class SimpleBlockOnlyMaterialSlot extends SimpleMaterialSlot { + public SimpleBlockOnlyMaterialSlot(@NotNull String suffix) { + super(suffix); + } + + @Override + @Nullable + protected BlockEntry getBlockEntry(M parentMaterial) { + final BlockEntry entry = new BlockEntry(suffix, false, (c, p) -> this.createBlock(parentMaterial, p)); + modifyBlockEntry(parentMaterial, entry); + return entry; + } + + public static SimpleBlockOnlyMaterialSlot createBlockOnly( + @NotNull String suffix, + BiFunction maker + ) { + return new SimpleBlockOnlyMaterialSlot(suffix) { + @Override + protected @NotNull Block createBlock(ComplexMaterial parentMaterial, BlockBehaviour.Properties settings) { + return maker.apply(parentMaterial, settings); + } + + @Override + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { + + } + }; + } + + public static SimpleBlockOnlyMaterialSlot createBlockOnly( + @NotNull String suffix, + Supplier maker + ) { + return new SimpleBlockOnlyMaterialSlot(suffix) { + @Override + protected @NotNull Block createBlock(ComplexMaterial parentMaterial, BlockBehaviour.Properties settings) { + return maker.get(); + } + + @Override + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { + + } + }; + } +} diff --git a/src/main/java/org/betterx/bclib/complexmaterials/entry/SimpleMaterialSlot.java b/src/main/java/org/betterx/bclib/complexmaterials/entry/SimpleMaterialSlot.java index b464f3b7..c066982d 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/entry/SimpleMaterialSlot.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/entry/SimpleMaterialSlot.java @@ -9,6 +9,7 @@ import net.minecraft.world.level.block.state.BlockBehaviour; import java.util.Objects; import java.util.function.BiFunction; import java.util.function.Consumer; +import java.util.function.Supplier; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,15 +25,14 @@ public abstract class SimpleMaterialSlot extends Mate @Nullable protected BlockEntry getBlockEntry(M parentMaterial) { - var supplier = getBlockSupplier(parentMaterial); - if (supplier != null) { - final BlockEntry entry = new BlockEntry(suffix, supplier); - modifyBlockEntry(parentMaterial, entry); - return entry; - } - return null; + final BlockEntry entry = new BlockEntry(suffix, (c, p) -> this.createBlock(parentMaterial, p)); + modifyBlockEntry(parentMaterial, entry); + return entry; } + @NotNull + protected abstract Block createBlock(M parentMaterial, BlockBehaviour.Properties settings); + protected void modifyBlockEntry(M parentMaterial, @NotNull BlockEntry entry) { } @@ -41,18 +41,28 @@ public abstract class SimpleMaterialSlot extends Mate adder.accept(getRecipeEntry(parentMaterial)); } - @NotNull - protected abstract BiFunction getBlockSupplier(M parentMaterial); - protected @Nullable RecipeEntry getRecipeEntry(M parentMaterial) { - return new RecipeEntry(suffix, this::getRecipeSupplier); + return new RecipeEntry(suffix, this::makeRecipe); } - protected abstract @Nullable void getRecipeSupplier( + protected abstract @Nullable void makeRecipe( ComplexMaterial parentMaterial, ResourceLocation id ); + @Override + public void addItemEntry(M parentMaterial, Consumer adder) { + ItemEntry item = getItemEntry(parentMaterial); + if (item != null) { + adder.accept(item); + } + } + + @Nullable + protected ItemEntry getItemEntry(M parentMaterial) { + return null; + } + @Override public boolean equals(Object o) { if (this == o) return true; @@ -65,4 +75,38 @@ public abstract class SimpleMaterialSlot extends Mate public int hashCode() { return Objects.hash(suffix); } + + public static SimpleMaterialSlot createBlockItem( + @NotNull String suffix, + BiFunction maker + ) { + return new SimpleMaterialSlot(suffix) { + @Override + protected @NotNull Block createBlock(ComplexMaterial parentMaterial, BlockBehaviour.Properties settings) { + return maker.apply(parentMaterial, settings); + } + + @Override + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { + + } + }; + } + + public static SimpleMaterialSlot createBlockItem( + @NotNull String suffix, + Supplier maker + ) { + return new SimpleMaterialSlot(suffix) { + @Override + protected @NotNull Block createBlock(ComplexMaterial parentMaterial, BlockBehaviour.Properties settings) { + return maker.get(); + } + + @Override + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { + + } + }; + } } diff --git a/src/main/java/org/betterx/bclib/complexmaterials/entry/SlotMap.java b/src/main/java/org/betterx/bclib/complexmaterials/entry/SlotMap.java new file mode 100644 index 00000000..0876b143 --- /dev/null +++ b/src/main/java/org/betterx/bclib/complexmaterials/entry/SlotMap.java @@ -0,0 +1,49 @@ +package org.betterx.bclib.complexmaterials.entry; + +import org.betterx.bclib.complexmaterials.ComplexMaterialSet; + +import java.util.Iterator; +import java.util.LinkedHashMap; +import java.util.Map; +import org.jetbrains.annotations.NotNull; + +public class SlotMap>> implements Iterable> { + private final Map> map; + + public SlotMap() { + this.map = new LinkedHashMap<>(); + } + + public static >> SlotMap of(MaterialSlot... slots) { + final SlotMap map = new SlotMap<>(); + for (MaterialSlot slot : slots) { + map.add(slot); + } + return map; + } + + public SlotMap replace(MaterialSlot slot) { + return add(slot); + } + + public SlotMap add(MaterialSlot slot) { + map.put(slot.suffix, slot); + return this; + } + + public SlotMap remove(MaterialSlot slot) { + map.remove(slot.suffix); + return this; + } + + public SlotMap remove(String slot) { + map.remove(slot); + return this; + } + + @NotNull + @Override + public Iterator> iterator() { + return map.values().iterator(); + } +} diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/AbstractSaplingSlot.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/AbstractSaplingSlot.java new file mode 100644 index 00000000..4905497d --- /dev/null +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/AbstractSaplingSlot.java @@ -0,0 +1,61 @@ +package org.betterx.bclib.complexmaterials.set.wood; + +import org.betterx.bclib.complexmaterials.ComplexMaterial; +import org.betterx.bclib.complexmaterials.WoodenComplexMaterial; +import org.betterx.bclib.complexmaterials.entry.BlockEntry; +import org.betterx.bclib.complexmaterials.entry.SimpleMaterialSlot; + +import net.minecraft.resources.ResourceLocation; +import net.minecraft.tags.BlockTags; +import net.minecraft.tags.ItemTags; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockBehaviour; + +import java.util.function.BiFunction; +import java.util.function.Supplier; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +public abstract class AbstractSaplingSlot extends SimpleMaterialSlot { + protected static final String SAPLING_SUFFIX = "sapling"; + + protected AbstractSaplingSlot() { + super(SAPLING_SUFFIX); + } + + @Override + protected void modifyBlockEntry(WoodenComplexMaterial parentMaterial, @NotNull BlockEntry entry) { + entry + .setBlockTags(BlockTags.SAPLINGS) + .setItemTags(ItemTags.SAPLINGS); + } + + @Override + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { + + } + + public static AbstractSaplingSlot create(BiFunction maker) { + return new AbstractSaplingSlot() { + @Override + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, + BlockBehaviour.Properties settings + ) { + return maker.apply(parentMaterial, settings); + } + }; + } + + public static AbstractSaplingSlot create(Supplier maker) { + return new AbstractSaplingSlot() { + @Override + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, + BlockBehaviour.Properties settings + ) { + return maker.get(); + } + }; + } +} diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Bark.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Bark.java index 98b8c647..40dae7f6 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Bark.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Bark.java @@ -14,7 +14,6 @@ import net.minecraft.tags.ItemTags; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,12 +23,12 @@ public class Bark extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (complexMaterial, settings) -> new StripableBarkBlock( + return new StripableBarkBlock( parentMaterial.woodColor, - complexMaterial.getBlock(WoodSlots.STRIPPED_BARK) + parentMaterial.getBlock(WoodSlots.STRIPPED_BARK) ); } @@ -50,7 +49,7 @@ public class Bark extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial material, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial material, ResourceLocation id) { BCLRecipeBuilder .crafting(id, material.getBlock(suffix)) .setShape("##", "##") diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Barrel.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Barrel.java index e48c7958..f9e06a6a 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Barrel.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Barrel.java @@ -14,7 +14,6 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,10 +23,10 @@ public class Barrel extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (complexMaterial, settings) -> new BaseBarrelBlock(complexMaterial.getBlock(WoodSlots.PLANKS)); + return new BaseBarrelBlock(parentMaterial.getBlock(WoodSlots.PLANKS)); } @Override @@ -37,7 +36,7 @@ public class Barrel extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { BCLRecipeBuilder .crafting(id, parentMaterial.getBlock(suffix)) .setShape("#S#", "# #", "#S#") diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Boat.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Boat.java index c11ff56d..012060d9 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Boat.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Boat.java @@ -9,10 +9,10 @@ import org.betterx.bclib.recipes.BCLRecipeBuilder; import net.minecraft.data.recipes.RecipeCategory; import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.item.Item; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import java.util.function.Consumer; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -27,12 +27,11 @@ public class Boat extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (a, b) -> { - return null; - }; + //this should never get called + return null; } @Override @@ -41,18 +40,22 @@ public class Boat extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { - BCLRecipeBuilder - .crafting(id, parentMaterial.getBlock(suffix)) - .setShape("# #", "###") - .addMaterial('#', parentMaterial.getBlock(WoodSlots.PLANKS)) - .setGroup("boat") - .setCategory(RecipeCategory.TRANSPORTATION) - .build(); + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { + makeBoatRecipe(id, parentMaterial.getBlock(WoodSlots.PLANKS), parentMaterial.getItem(suffix)); } @Override public void onInit(WoodenComplexMaterial parentMaterial) { parentMaterial.initBoatType(); } + + public static void makeBoatRecipe(ResourceLocation id, Block planks, Item boat) { + BCLRecipeBuilder + .crafting(id, boat) + .setShape("# #", "###") + .addMaterial('#', planks) + .setGroup("boat") + .setCategory(RecipeCategory.TRANSPORTATION) + .build(); + } } diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Bookshelf.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Bookshelf.java index e8c6a703..bb45c7fb 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Bookshelf.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Bookshelf.java @@ -14,7 +14,6 @@ import net.minecraft.world.item.Items; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,10 +23,10 @@ public class Bookshelf extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (cmx, settings) -> new BaseBookshelfBlock(cmx.getBlock(WoodSlots.PLANKS)); + return new BaseBookshelfBlock(parentMaterial.getBlock(WoodSlots.PLANKS)); } @Override @@ -36,7 +35,7 @@ public class Bookshelf extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { BCLRecipeBuilder .crafting(id, parentMaterial.getBlock(suffix)) .setShape("###", "PPP", "###") diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Button.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Button.java index 43a03532..9869c239 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Button.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Button.java @@ -14,7 +14,6 @@ import net.minecraft.tags.ItemTags; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,11 +23,11 @@ public class Button extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (complexMaterial, settings) -> new BaseWoodenButtonBlock( - complexMaterial.getBlock(WoodSlots.PLANKS), + return new BaseWoodenButtonBlock( + parentMaterial.getBlock(WoodSlots.PLANKS), parentMaterial.woodType.setType() ); } @@ -40,7 +39,7 @@ public class Button extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { BCLRecipeBuilder .crafting(id, parentMaterial.getBlock(suffix)) .shapeless() diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Chest.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Chest.java index 195818bc..c240d30d 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Chest.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Chest.java @@ -14,7 +14,6 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,10 +23,10 @@ public class Chest extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (complexMaterial, settings) -> new BaseChestBlock(complexMaterial.getBlock(WoodSlots.PLANKS)); + return new BaseChestBlock(parentMaterial.getBlock(WoodSlots.PLANKS)); } @Override @@ -37,7 +36,7 @@ public class Chest extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { BCLRecipeBuilder .crafting(id, parentMaterial.getBlock(suffix)) .setShape("###", "# #", "###") diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/ChestBoat.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/ChestBoat.java index e039fd94..c7135830 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/ChestBoat.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/ChestBoat.java @@ -12,10 +12,10 @@ import net.minecraft.data.recipes.RecipeCategory; import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.ItemTags; import net.minecraft.tags.TagKey; +import net.minecraft.world.item.Item; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import java.util.function.Consumer; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -30,12 +30,11 @@ public class ChestBoat extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (a, b) -> { - return null; - }; + //this should never get called + return null; } @Override @@ -47,18 +46,23 @@ public class ChestBoat extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { - BCLRecipeBuilder.crafting(id, parentMaterial.getBlock(suffix)) - .shapeless() - .addMaterial('C', CommonItemTags.CHEST) - .addMaterial('#', parentMaterial.getBlock(WoodSlots.BOAT)) - .setGroup("chest_boat") - .setCategory(RecipeCategory.TRANSPORTATION) - .build(); + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { + makeChestBoatRecipe(id, parentMaterial.getItem(WoodSlots.BOAT), parentMaterial.getItem(WoodSlots.CHEST_BOAT)); } @Override public void onInit(WoodenComplexMaterial parentMaterial) { parentMaterial.initBoatType(); } + + public static void makeChestBoatRecipe(ResourceLocation id, Item boat, Item chestBoat) { + BCLRecipeBuilder + .crafting(id, chestBoat) + .shapeless() + .addMaterial('C', CommonItemTags.CHEST) + .addMaterial('#', boat) + .setGroup("chest_boat") + .setCategory(RecipeCategory.TRANSPORTATION) + .build(); + } } diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Composter.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Composter.java index 4c6225c1..830f18ee 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Composter.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Composter.java @@ -13,7 +13,6 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -23,10 +22,10 @@ public class Composter extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (complexMaterial, settings) -> new BaseComposterBlock(complexMaterial.getBlock(WoodSlots.PLANKS)); + return new BaseComposterBlock(parentMaterial.getBlock(WoodSlots.PLANKS)); } @Override @@ -35,7 +34,7 @@ public class Composter extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { BCLRecipeBuilder.crafting(id, parentMaterial.getBlock(suffix)) .setShape("# #", "# #", "###") .addMaterial('#', parentMaterial.getBlock(WoodSlots.SLAB)) diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/CraftingTable.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/CraftingTable.java index 6fbefd94..9ca68fad 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/CraftingTable.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/CraftingTable.java @@ -14,7 +14,6 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,10 +23,10 @@ public class CraftingTable extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (cmx, settings) -> new BaseCraftingTableBlock(cmx.getBlock(WoodSlots.PLANKS)); + return new BaseCraftingTableBlock(parentMaterial.getBlock(WoodSlots.PLANKS)); } @Override @@ -37,7 +36,7 @@ public class CraftingTable extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { BCLRecipeBuilder .crafting(id, parentMaterial.getBlock(suffix)) .setShape("##", "##") diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Door.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Door.java index 444ad585..31c41bac 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Door.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Door.java @@ -14,7 +14,6 @@ import net.minecraft.tags.ItemTags; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,11 +23,11 @@ public class Door extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (complexMaterial, settings) -> new BaseDoorBlock( - complexMaterial.getBlock(WoodSlots.PLANKS), + return new BaseDoorBlock( + parentMaterial.getBlock(WoodSlots.PLANKS), parentMaterial.woodType.setType() ); } @@ -40,7 +39,7 @@ public class Door extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { BCLRecipeBuilder .crafting(id, parentMaterial.getBlock(suffix)) .setOutputCount(3) diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Fence.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Fence.java index 1ce62d58..7518f032 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Fence.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Fence.java @@ -15,7 +15,6 @@ import net.minecraft.world.item.Items; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -25,10 +24,10 @@ public class Fence extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (complexMaterial, settings) -> new BaseFenceBlock(complexMaterial.getBlock(WoodSlots.PLANKS)); + return new BaseFenceBlock(parentMaterial.getBlock(WoodSlots.PLANKS)); } @Override @@ -38,7 +37,7 @@ public class Fence extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { BCLRecipeBuilder .crafting(id, parentMaterial.getBlock(suffix)) .setOutputCount(3) diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Gate.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Gate.java index 3ff9eb7a..585c5fa3 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Gate.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Gate.java @@ -14,7 +14,6 @@ import net.minecraft.world.item.Items; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,11 +23,11 @@ public class Gate extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (complexMaterial, settings) -> new BaseGateBlock( - complexMaterial.getBlock(WoodSlots.PLANKS), + return new BaseGateBlock( + parentMaterial.getBlock(WoodSlots.PLANKS), parentMaterial.woodType.type() ); } @@ -39,7 +38,7 @@ public class Gate extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { BCLRecipeBuilder.crafting(id, parentMaterial.getBlock(suffix)) .setShape("I#I", "I#I") .addMaterial('#', parentMaterial.getBlock(WoodSlots.PLANKS)) diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Ladder.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Ladder.java index 90a2c30f..a2e170ed 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Ladder.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Ladder.java @@ -14,7 +14,6 @@ import net.minecraft.world.item.Items; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,10 +23,10 @@ public class Ladder extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (complexMaterial, settings) -> new BaseLadderBlock(complexMaterial.getBlock(WoodSlots.PLANKS)); + return new BaseLadderBlock(parentMaterial.getBlock(WoodSlots.PLANKS)); } @Override @@ -36,7 +35,7 @@ public class Ladder extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { BCLRecipeBuilder .crafting(id, parentMaterial.getBlock(suffix)) .setOutputCount(3) diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Log.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Log.java index e11e41a7..27111aa5 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Log.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Log.java @@ -14,7 +14,6 @@ import net.minecraft.tags.ItemTags; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,12 +23,12 @@ public class Log extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (complexMaterial, settings) -> new BaseStripableLogBlock( + return new BaseStripableLogBlock( parentMaterial.woodColor, - complexMaterial.getBlock(WoodSlots.STRIPPED_LOG) + parentMaterial.getBlock(WoodSlots.STRIPPED_LOG) ); } @@ -49,7 +48,7 @@ public class Log extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial material, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial material, ResourceLocation id) { BCLRecipeBuilder .crafting(id, material.getBlock(suffix)) .setShape("##", "##") diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Planks.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Planks.java index e57136ec..140e4331 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Planks.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Planks.java @@ -14,7 +14,6 @@ import net.minecraft.tags.ItemTags; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,10 +23,10 @@ public class Planks extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (complexMaterial, settings) -> new BaseBlock(settings); + return new BaseBlock(settings); } @Override @@ -38,7 +37,7 @@ public class Planks extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { BCLRecipeBuilder.crafting(id, parentMaterial.getBlock(suffix)) .setOutputCount(4) .shapeless() diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/PressurePlate.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/PressurePlate.java index d922488a..88576f99 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/PressurePlate.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/PressurePlate.java @@ -14,7 +14,6 @@ import net.minecraft.tags.ItemTags; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,11 +23,11 @@ public class PressurePlate extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (complexMaterial, settings) -> new WoodenPressurePlateBlock( - complexMaterial.getBlock(WoodSlots.PLANKS), + return new WoodenPressurePlateBlock( + parentMaterial.getBlock(WoodSlots.PLANKS), parentMaterial.woodType.setType() ); } @@ -40,7 +39,7 @@ public class PressurePlate extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { BCLRecipeBuilder .crafting(id, parentMaterial.getBlock(suffix)) .setShape("##") diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Slab.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Slab.java index 4b455ad6..8fcf70fd 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Slab.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Slab.java @@ -14,7 +14,6 @@ import net.minecraft.tags.ItemTags; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,10 +23,10 @@ public class Slab extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (complexMaterial, settings) -> new BaseSlabBlock(complexMaterial.getBlock(WoodSlots.PLANKS), false); + return new BaseSlabBlock(parentMaterial.getBlock(WoodSlots.PLANKS), false); } @Override @@ -37,7 +36,7 @@ public class Slab extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { BCLRecipeBuilder .crafting(id, parentMaterial.getBlock(suffix)) .setOutputCount(6) diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Stairs.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Stairs.java index f497dfc4..d3b5d58d 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Stairs.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Stairs.java @@ -14,7 +14,6 @@ import net.minecraft.tags.ItemTags; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,10 +23,10 @@ public class Stairs extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (complexMaterial, settings) -> new BaseStairsBlock(complexMaterial.getBlock(WoodSlots.PLANKS), false); + return new BaseStairsBlock(parentMaterial.getBlock(WoodSlots.PLANKS), false); } @Override @@ -37,7 +36,7 @@ public class Stairs extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { BCLRecipeBuilder .crafting(id, parentMaterial.getBlock(suffix)) .setOutputCount(4) diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/StrippedBark.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/StrippedBark.java index 4738d81e..d3621486 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/StrippedBark.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/StrippedBark.java @@ -14,7 +14,6 @@ import net.minecraft.tags.ItemTags; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,10 +23,10 @@ public class StrippedBark extends SimpleMaterialSlot { } @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (complexMaterial, settings) -> new BaseBarkBlock(settings); + return new BaseBarkBlock(settings); } @Override @@ -46,7 +45,7 @@ public class StrippedBark extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial material, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial material, ResourceLocation id) { BCLRecipeBuilder .crafting(id, material.getBlock(suffix)) .setShape("##", "##") diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/StrippedLog.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/StrippedLog.java index 1e42c14b..5dcd0d76 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/StrippedLog.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/StrippedLog.java @@ -14,7 +14,6 @@ import net.minecraft.tags.ItemTags; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,9 +23,10 @@ public class StrippedLog extends SimpleMaterialSlot { } @Override - @NotNull - protected BiFunction getBlockSupplier(WoodenComplexMaterial parentMaterial) { - return (complexMaterial, settings) -> new BaseRotatedPillarBlock(settings); + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings + ) { + return new BaseRotatedPillarBlock(settings); } @Override @@ -45,7 +45,7 @@ public class StrippedLog extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial material, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial material, ResourceLocation id) { BCLRecipeBuilder .crafting(id, material.getBlock(suffix)) .setShape("##", "##") diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Trapdoor.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Trapdoor.java index 19fac5d3..24bab06a 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Trapdoor.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/Trapdoor.java @@ -14,7 +14,6 @@ import net.minecraft.tags.ItemTags; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockBehaviour; -import java.util.function.BiFunction; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -23,12 +22,11 @@ public class Trapdoor extends SimpleMaterialSlot { super("trapdoor"); } - @Override - protected @NotNull BiFunction getBlockSupplier( - WoodenComplexMaterial parentMaterial + protected @NotNull Block createBlock( + WoodenComplexMaterial parentMaterial, BlockBehaviour.Properties settings ) { - return (complexMaterial, settings) -> new BaseTrapdoorBlock( - complexMaterial.getBlock(WoodSlots.PLANKS), + return new BaseTrapdoorBlock( + parentMaterial.getBlock(WoodSlots.PLANKS), parentMaterial.woodType.setType() ); } @@ -40,7 +38,7 @@ public class Trapdoor extends SimpleMaterialSlot { } @Override - protected @Nullable void getRecipeSupplier(ComplexMaterial parentMaterial, ResourceLocation id) { + protected @Nullable void makeRecipe(ComplexMaterial parentMaterial, ResourceLocation id) { BCLRecipeBuilder.crafting(id, parentMaterial.getBlock(suffix)) .setOutputCount(2) .setShape("###", "###") diff --git a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/WoodSlots.java b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/WoodSlots.java index 115276be..f9aba280 100644 --- a/src/main/java/org/betterx/bclib/complexmaterials/set/wood/WoodSlots.java +++ b/src/main/java/org/betterx/bclib/complexmaterials/set/wood/WoodSlots.java @@ -19,7 +19,6 @@ public class WoodSlots { public static final MaterialSlot DOOR = new Door(); public static final MaterialSlot LADDER = new Ladder(); public static final Sign SIGN = new Sign(); - public static final String WALL_SIGN = Sign.WALL_SUFFFIX; public static final MaterialSlot CHEST = new Chest(); public static final MaterialSlot BARREL = new Barrel(); public static final MaterialSlot CRAFTING_TABLE = new CraftingTable(); @@ -27,6 +26,9 @@ public class WoodSlots { public static final MaterialSlot COMPOSTER = new Composter(); public static final MaterialSlot BOAT = new Boat(); public static final MaterialSlot CHEST_BOAT = new ChestBoat(); + + public static final String WALL_SIGN = Sign.WALL_SUFFFIX; + public static final String SAPLING = AbstractSaplingSlot.SAPLING_SUFFIX; }