More wooden materials, gui, mixins, registries
This commit is contained in:
parent
6ec2b53edd
commit
720103bd45
97 changed files with 2414 additions and 14 deletions
77
src/main/java/ru/betterend/registry/BlockEntityRegistry.java
Normal file
77
src/main/java/ru/betterend/registry/BlockEntityRegistry.java
Normal file
|
@ -0,0 +1,77 @@
|
|||
package ru.betterend.registry;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
import net.minecraft.block.entity.BlockEntityType;
|
||||
import net.minecraft.item.BlockItem;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.util.registry.Registry;
|
||||
import ru.betterend.BetterEnd;
|
||||
import ru.betterend.blocks.basis.BlockBarrel;
|
||||
import ru.betterend.blocks.basis.BlockChest;
|
||||
import ru.betterend.blocks.basis.BlockSign;
|
||||
import ru.betterend.blocks.entities.EBarrelBlockEntity;
|
||||
import ru.betterend.blocks.entities.EChestBlockEntity;
|
||||
import ru.betterend.blocks.entities.ESignBlockEntity;
|
||||
|
||||
public class BlockEntityRegistry
|
||||
{
|
||||
public static final BlockEntityType<EChestBlockEntity> CHEST = BlockEntityType.Builder.create(EChestBlockEntity::new, getChests()).build(null);
|
||||
public static final BlockEntityType<EBarrelBlockEntity> BARREL = BlockEntityType.Builder.create(EBarrelBlockEntity::new, getBarrels()).build(null);
|
||||
public static final BlockEntityType<ESignBlockEntity> SIGN = BlockEntityType.Builder.create(ESignBlockEntity::new, getSigns()).build(null);
|
||||
|
||||
public static void register() {
|
||||
RegisterBlockEntity("chest", CHEST);
|
||||
RegisterBlockEntity("barrel", BARREL);
|
||||
RegisterBlockEntity("sign", SIGN);
|
||||
}
|
||||
|
||||
public static void RegisterBlockEntity(String name, BlockEntityType<? extends BlockEntity> type) {
|
||||
Registry.register(Registry.BLOCK_ENTITY_TYPE, new Identifier(BetterEnd.MOD_ID, name), type);
|
||||
}
|
||||
|
||||
private static Block[] getChests() {
|
||||
List<Block> result = Lists.newArrayList();
|
||||
ItemRegistry.getModBlocks().forEach((item) -> {
|
||||
if (item instanceof BlockItem) {
|
||||
Block block = ((BlockItem) item).getBlock();
|
||||
if (block instanceof BlockChest) {
|
||||
result.add(block);
|
||||
}
|
||||
}
|
||||
});
|
||||
return result.toArray(new Block[] {});
|
||||
}
|
||||
|
||||
private static Block[] getBarrels()
|
||||
{
|
||||
List<Block> result = Lists.newArrayList();
|
||||
ItemRegistry.getModBlocks().forEach((item) -> {
|
||||
if (item instanceof BlockItem) {
|
||||
Block block = ((BlockItem) item).getBlock();
|
||||
if (block instanceof BlockBarrel) {
|
||||
result.add(block);
|
||||
}
|
||||
}
|
||||
});
|
||||
return result.toArray(new Block[] {});
|
||||
}
|
||||
|
||||
private static Block[] getSigns()
|
||||
{
|
||||
List<Block> result = Lists.newArrayList();
|
||||
ItemRegistry.getModBlocks().forEach((item) -> {
|
||||
if (item instanceof BlockItem) {
|
||||
Block block = ((BlockItem) item).getBlock();
|
||||
if (block instanceof BlockSign) {
|
||||
result.add(block);
|
||||
}
|
||||
}
|
||||
});
|
||||
return result.toArray(new Block[] {});
|
||||
}
|
||||
}
|
|
@ -0,0 +1,15 @@
|
|||
package ru.betterend.registry;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.fabricmc.fabric.api.client.rendereregistry.v1.BlockEntityRendererRegistry;
|
||||
import ru.betterend.blocks.entities.render.EChestBlockEntityRenderer;
|
||||
import ru.betterend.blocks.entities.render.ESignBlockEntityRenderer;
|
||||
|
||||
public class BlockEntityRenderRegistry {
|
||||
@Environment(EnvType.CLIENT)
|
||||
public static void register() {
|
||||
BlockEntityRendererRegistry.INSTANCE.register(BlockEntityRegistry.CHEST, EChestBlockEntityRenderer::new);
|
||||
BlockEntityRendererRegistry.INSTANCE.register(BlockEntityRegistry.SIGN, ESignBlockEntityRenderer::new);
|
||||
}
|
||||
}
|
|
@ -14,6 +14,7 @@ import ru.betterend.blocks.BlockTerrain;
|
|||
import ru.betterend.blocks.EndStoneSmelter;
|
||||
import ru.betterend.blocks.EnderBlock;
|
||||
import ru.betterend.blocks.TerminiteBlock;
|
||||
import ru.betterend.blocks.complex.WoodenMaterial;
|
||||
import ru.betterend.tab.CreativeTab;
|
||||
|
||||
public class BlockRegistry {
|
||||
|
@ -22,6 +23,9 @@ public class BlockRegistry {
|
|||
public static final Block END_MYCELIUM = registerBlock("end_mycelium", new BlockTerrain(MaterialColor.LIGHT_BLUE));
|
||||
public static final Block END_MOSS = registerBlock("end_moss", new BlockTerrain(MaterialColor.CYAN));
|
||||
|
||||
// Wooden Materials //
|
||||
public static final WoodenMaterial MOSSY_GLOWSHROOM = new WoodenMaterial("mossy_glowshroom", MaterialColor.GRAY, MaterialColor.WOOD);
|
||||
|
||||
// Ores //
|
||||
public static final Block ENDER_ORE = registerBlock("ender_ore", new BlockOre(ItemRegistry.ENDER_DUST, 1, 3));
|
||||
|
||||
|
@ -30,7 +34,7 @@ public class BlockRegistry {
|
|||
public static final Block AETERNIUM_BLOCK = registerBlock("aeternium_block", new AeterniumBlock());
|
||||
public static final Block ENDER_BLOCK = registerBlock("ender_block", new EnderBlock());
|
||||
|
||||
// BlockEntities //
|
||||
// Block With Entities //
|
||||
public static final Block END_STONE_SMELTER = registerBlock("end_stone_smelter", new EndStoneSmelter());
|
||||
|
||||
public static void register() {}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue