From eb18fa63afd1343a082da3931ebc69a17ba4e58b Mon Sep 17 00:00:00 2001 From: paulevsGitch Date: Fri, 23 Jul 2021 15:03:16 +0300 Subject: [PATCH] Complex material fixes --- .../complexmaterials/ComplexMaterial.java | 32 ++++++++----------- .../complexmaterials/WoodenMaterial.java | 11 +++---- .../complexmaterials/entry/BlockEntry.java | 4 +-- .../complexmaterials/entry/ItemEntry.java | 4 +-- ...BlocksRegistry.java => BlockRegistry.java} | 4 +-- .../{ItemsRegistry.java => ItemRegistry.java} | 4 +-- 6 files changed, 26 insertions(+), 33 deletions(-) rename src/main/java/ru/bclib/registry/{BlocksRegistry.java => BlockRegistry.java} (91%) rename src/main/java/ru/bclib/registry/{ItemsRegistry.java => ItemRegistry.java} (97%) diff --git a/src/main/java/ru/bclib/complexmaterials/ComplexMaterial.java b/src/main/java/ru/bclib/complexmaterials/ComplexMaterial.java index 0830f3c8..49bc71f4 100644 --- a/src/main/java/ru/bclib/complexmaterials/ComplexMaterial.java +++ b/src/main/java/ru/bclib/complexmaterials/ComplexMaterial.java @@ -11,8 +11,8 @@ import org.jetbrains.annotations.Nullable; import ru.bclib.complexmaterials.entry.BlockEntry; import ru.bclib.complexmaterials.entry.ItemEntry; import ru.bclib.config.PathConfig; -import ru.bclib.registry.BlocksRegistry; -import ru.bclib.registry.ItemsRegistry; +import ru.bclib.registry.BlockRegistry; +import ru.bclib.registry.ItemRegistry; import java.util.Collection; import java.util.List; @@ -30,17 +30,10 @@ public abstract class ComplexMaterial { private final Map blocks = Maps.newHashMap(); private final Map items = Maps.newHashMap(); - private final BlocksRegistry blocksRegistry; - private final ItemsRegistry itemsRegistry; - private final PathConfig recipeConfig; - private final String baseName; private final String modID; - public ComplexMaterial(String modID, String baseName, BlocksRegistry blocksRegistry, ItemsRegistry itemsRegistry, PathConfig recipeConfig) { - this.blocksRegistry = blocksRegistry; - this.itemsRegistry = itemsRegistry; - this.recipeConfig = recipeConfig; + public ComplexMaterial(String modID, String baseName) { this.baseName = baseName; this.modID = modID; MATERIALS.add(this); @@ -49,6 +42,9 @@ public abstract class ComplexMaterial { public void init() { initTags(); + final BlockRegistry blocksRegistry = getBlockRegistry(); + final ItemRegistry itemsRegistry = getItemRegistry(); + final PathConfig recipeConfig = getRecipeConfig(); final FabricBlockSettings blockSettings = getBlockSettings(); final FabricItemSettings itemSettings = getItemSettings(itemsRegistry); initDefault(blockSettings, itemSettings); @@ -67,6 +63,12 @@ public abstract class ComplexMaterial { initFlammable(); } + protected abstract BlockRegistry getBlockRegistry(); + + protected abstract ItemRegistry getItemRegistry(); + + protected abstract PathConfig getRecipeConfig(); + protected abstract void initDefault(FabricBlockSettings blockSettings, FabricItemSettings itemSettings); protected void initTags() {} @@ -105,7 +107,7 @@ public abstract class ComplexMaterial { protected abstract FabricBlockSettings getBlockSettings(); - protected FabricItemSettings getItemSettings(ItemsRegistry registry) { + protected FabricItemSettings getItemSettings(ItemRegistry registry) { return registry.makeItemSettings(); } @@ -127,14 +129,6 @@ public abstract class ComplexMaterial { return result; } - public BlocksRegistry getBlocksRegistry() { - return blocksRegistry; - } - - public ItemsRegistry getItemsRegistry() { - return itemsRegistry; - } - public String getBaseName() { return baseName; } diff --git a/src/main/java/ru/bclib/complexmaterials/WoodenMaterial.java b/src/main/java/ru/bclib/complexmaterials/WoodenMaterial.java index e56a5ce0..0d0f74e1 100644 --- a/src/main/java/ru/bclib/complexmaterials/WoodenMaterial.java +++ b/src/main/java/ru/bclib/complexmaterials/WoodenMaterial.java @@ -27,7 +27,6 @@ import ru.bclib.blocks.BaseRotatedPillarBlock; import ru.bclib.blocks.BaseSignBlock; import ru.bclib.blocks.BaseSlabBlock; import ru.bclib.blocks.BaseStairsBlock; -import ru.bclib.blocks.BaseStripableLogBlock; import ru.bclib.blocks.BaseTrapdoorBlock; import ru.bclib.blocks.BaseWoodenButtonBlock; import ru.bclib.blocks.StripableBarkBlock; @@ -35,15 +34,15 @@ import ru.bclib.blocks.WoodenPressurePlateBlock; import ru.bclib.complexmaterials.entry.BlockEntry; import ru.bclib.config.PathConfig; import ru.bclib.recipes.GridRecipe; -import ru.bclib.registry.BlocksRegistry; -import ru.bclib.registry.ItemsRegistry; +import ru.bclib.registry.BlockRegistry; +import ru.bclib.registry.ItemRegistry; -public class WoodenMaterial extends ComplexMaterial { +public abstract class WoodenMaterial extends ComplexMaterial { public final MaterialColor planksColor; public final MaterialColor woodColor; - public WoodenMaterial(String modID, String baseName, MaterialColor woodColor, MaterialColor planksColor, BlocksRegistry blocksRegistry, ItemsRegistry itemsRegistry, PathConfig recipeConfig) { - super(modID, baseName, blocksRegistry, itemsRegistry, recipeConfig); + public WoodenMaterial(String modID, String baseName, MaterialColor woodColor, MaterialColor planksColor) { + super(modID, baseName); this.planksColor = planksColor; this.woodColor = woodColor; } diff --git a/src/main/java/ru/bclib/complexmaterials/entry/BlockEntry.java b/src/main/java/ru/bclib/complexmaterials/entry/BlockEntry.java index b892c1ab..edda7b8a 100644 --- a/src/main/java/ru/bclib/complexmaterials/entry/BlockEntry.java +++ b/src/main/java/ru/bclib/complexmaterials/entry/BlockEntry.java @@ -7,7 +7,7 @@ import net.minecraft.world.item.Item; import net.minecraft.world.level.block.Block; import ru.bclib.api.TagAPI; import ru.bclib.complexmaterials.ComplexMaterial; -import ru.bclib.registry.BlocksRegistry; +import ru.bclib.registry.BlockRegistry; import java.util.function.BiFunction; @@ -38,7 +38,7 @@ public class BlockEntry extends ComplexMaterialEntry { return this; } - public Block init(ComplexMaterial material, FabricBlockSettings blockSettings, BlocksRegistry registry) { + public Block init(ComplexMaterial material, FabricBlockSettings blockSettings, BlockRegistry registry) { ResourceLocation location = getLocation(material.getModID(), material.getBaseName()); Block block = initFunction.apply(material, blockSettings); if (hasItem) { diff --git a/src/main/java/ru/bclib/complexmaterials/entry/ItemEntry.java b/src/main/java/ru/bclib/complexmaterials/entry/ItemEntry.java index 9377d9c9..a9be883b 100644 --- a/src/main/java/ru/bclib/complexmaterials/entry/ItemEntry.java +++ b/src/main/java/ru/bclib/complexmaterials/entry/ItemEntry.java @@ -6,7 +6,7 @@ import net.minecraft.tags.Tag; import net.minecraft.world.item.Item; import ru.bclib.api.TagAPI; import ru.bclib.complexmaterials.ComplexMaterial; -import ru.bclib.registry.ItemsRegistry; +import ru.bclib.registry.ItemRegistry; import java.util.function.BiFunction; @@ -25,7 +25,7 @@ public class ItemEntry extends ComplexMaterialEntry { return this; } - public Item init(ComplexMaterial material, FabricItemSettings itemSettings, ItemsRegistry registry) { + public Item init(ComplexMaterial material, FabricItemSettings itemSettings, ItemRegistry registry) { ResourceLocation location = getLocation(material.getModID(), material.getBaseName()); Item item = initFunction.apply(material, itemSettings); registry.register(location, item); diff --git a/src/main/java/ru/bclib/registry/BlocksRegistry.java b/src/main/java/ru/bclib/registry/BlockRegistry.java similarity index 91% rename from src/main/java/ru/bclib/registry/BlocksRegistry.java rename to src/main/java/ru/bclib/registry/BlockRegistry.java index 4521b94a..80ee433b 100644 --- a/src/main/java/ru/bclib/registry/BlocksRegistry.java +++ b/src/main/java/ru/bclib/registry/BlockRegistry.java @@ -9,8 +9,8 @@ import net.minecraft.world.item.Item; import net.minecraft.world.level.block.Block; import ru.bclib.interfaces.CustomItemProvider; -public abstract class BlocksRegistry extends BaseRegistry { - protected BlocksRegistry(CreativeModeTab creativeTab) { +public abstract class BlockRegistry extends BaseRegistry { + protected BlockRegistry(CreativeModeTab creativeTab) { super(creativeTab); } diff --git a/src/main/java/ru/bclib/registry/ItemsRegistry.java b/src/main/java/ru/bclib/registry/ItemRegistry.java similarity index 97% rename from src/main/java/ru/bclib/registry/ItemsRegistry.java rename to src/main/java/ru/bclib/registry/ItemRegistry.java index dde6333b..d2bc980a 100644 --- a/src/main/java/ru/bclib/registry/ItemsRegistry.java +++ b/src/main/java/ru/bclib/registry/ItemRegistry.java @@ -29,9 +29,9 @@ import ru.bclib.items.tool.BaseHoeItem; import ru.bclib.items.tool.BasePickaxeItem; import ru.bclib.api.TagAPI; -public abstract class ItemsRegistry extends BaseRegistry { +public abstract class ItemRegistry extends BaseRegistry { - protected ItemsRegistry(CreativeModeTab creativeTab) { + protected ItemRegistry(CreativeModeTab creativeTab) { super(creativeTab); }