Complex material init changes

This commit is contained in:
paulevsGitch 2021-07-23 17:26:02 +03:00
parent eb18fa63af
commit 806992759a
8 changed files with 4 additions and 38 deletions

View file

@ -1,21 +1,13 @@
package ru.bclib.client;
import net.fabricmc.api.ClientModInitializer;
import net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.core.Registry;
import ru.bclib.api.ModIntegrationAPI;
import ru.bclib.api.PostInitAPI;
import ru.bclib.client.render.BCLRenderLayer;
import ru.bclib.complexmaterials.ComplexMaterial;
import ru.bclib.interfaces.PostInitable;
import ru.bclib.interfaces.RenderLayerProvider;
import ru.bclib.registry.BaseBlockEntityRenders;
public class BCLibClient implements ClientModInitializer {
@Override
public void onInitializeClient() {
ComplexMaterial.getAllMaterials().forEach(material -> material.init());
ModIntegrationAPI.registerAll();
BaseBlockEntityRenders.register();
PostInitAPI.postInit(true);

View file

@ -39,12 +39,9 @@ public abstract class ComplexMaterial {
MATERIALS.add(this);
}
public void init() {
public ComplexMaterial init(BlockRegistry blocksRegistry, ItemRegistry itemsRegistry, PathConfig recipeConfig) {
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);
@ -61,14 +58,9 @@ public abstract class ComplexMaterial {
initRecipes(recipeConfig);
initFlammable();
return this;
}
protected abstract BlockRegistry getBlockRegistry();
protected abstract ItemRegistry getItemRegistry();
protected abstract PathConfig getRecipeConfig();
protected abstract void initDefault(FabricBlockSettings blockSettings, FabricItemSettings itemSettings);
protected void initTags() {}

View file

@ -34,10 +34,8 @@ 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.BlockRegistry;
import ru.bclib.registry.ItemRegistry;
public abstract class WoodenMaterial extends ComplexMaterial {
public class WoodenMaterial extends ComplexMaterial {
public final MaterialColor planksColor;
public final MaterialColor woodColor;

View file

@ -1,28 +1,22 @@
package ru.bclib.mixin.client;
import com.mojang.blaze3d.systems.RenderSystem;
import net.minecraft.client.Camera;
import net.minecraft.client.multiplayer.ClientLevel;
import net.minecraft.client.renderer.FogRenderer;
import net.minecraft.core.BlockPos.MutableBlockPos;
import net.minecraft.util.Mth;
import net.minecraft.world.effect.MobEffectInstance;
import net.minecraft.world.effect.MobEffects;
import net.minecraft.world.entity.Entity;
import net.minecraft.world.entity.LivingEntity;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.biome.Biome;
import net.minecraft.world.level.material.FogType;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
import ru.bclib.api.BiomeAPI;
import ru.bclib.client.render.CustomBackgroundRenderer;
import ru.bclib.util.BackgroundInfo;
import ru.bclib.util.MHelper;
import ru.bclib.world.biomes.BCLBiome;
@Mixin(FogRenderer.class)
public class BackgroundRendererMixin {

View file

@ -5,7 +5,6 @@ import net.minecraft.resources.ResourceKey;
import net.minecraft.server.MinecraftServer;
import net.minecraft.server.ServerResources;
import net.minecraft.server.level.ServerLevel;
import net.minecraft.server.level.progress.ChunkProgressListener;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.storage.LevelResource;
import net.minecraft.world.level.storage.LevelStorageSource;
@ -15,7 +14,6 @@ import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.ModifyArg;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
import ru.bclib.api.BiomeAPI;

View file

@ -15,13 +15,9 @@ import net.minecraft.world.level.storage.WritableLevelData;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.ModifyArg;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
import ru.bclib.api.BiomeAPI;
import ru.bclib.api.WorldDataAPI;
import ru.bclib.api.datafixer.DataFixerAPI;
import java.io.File;
import java.util.List;
import java.util.concurrent.Executor;
import java.util.function.Supplier;

View file

@ -20,6 +20,7 @@ import net.minecraft.world.item.SpawnEggItem;
import net.minecraft.world.item.SwordItem;
import net.minecraft.world.item.TieredItem;
import net.minecraft.world.level.block.DispenserBlock;
import ru.bclib.api.TagAPI;
import ru.bclib.items.BaseDiscItem;
import ru.bclib.items.BaseDrinkItem;
import ru.bclib.items.BaseSpawnEggItem;
@ -27,7 +28,6 @@ import ru.bclib.items.ModelProviderItem;
import ru.bclib.items.tool.BaseAxeItem;
import ru.bclib.items.tool.BaseHoeItem;
import ru.bclib.items.tool.BasePickaxeItem;
import ru.bclib.api.TagAPI;
public abstract class ItemRegistry extends BaseRegistry<Item> {

View file

@ -1,16 +1,12 @@
package ru.bclib.server;
import net.fabricmc.api.DedicatedServerModInitializer;
import net.minecraft.core.Registry;
import ru.bclib.api.ModIntegrationAPI;
import ru.bclib.api.PostInitAPI;
import ru.bclib.complexmaterials.ComplexMaterial;
import ru.bclib.interfaces.PostInitable;
public class BCLibServer implements DedicatedServerModInitializer {
@Override
public void onInitializeServer() {
ComplexMaterial.getAllMaterials().forEach(material -> material.init());
ModIntegrationAPI.registerAll();
PostInitAPI.postInit(false);
}