Complex material fixes

This commit is contained in:
paulevsGitch 2021-07-23 15:03:16 +03:00
parent b661aedd60
commit eb18fa63af
6 changed files with 26 additions and 33 deletions

View file

@ -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<String, Block> blocks = Maps.newHashMap();
private final Map<String, Item> 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;
}

View file

@ -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;
}

View file

@ -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) {

View file

@ -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);

View file

@ -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<Block> {
protected BlocksRegistry(CreativeModeTab creativeTab) {
public abstract class BlockRegistry extends BaseRegistry<Block> {
protected BlockRegistry(CreativeModeTab creativeTab) {
super(creativeTab);
}

View file

@ -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<Item> {
public abstract class ItemRegistry extends BaseRegistry<Item> {
protected ItemsRegistry(CreativeModeTab creativeTab) {
protected ItemRegistry(CreativeModeTab creativeTab) {
super(creativeTab);
}