diff --git a/src/main/java/net/parsell/cherry/CherryClient.java b/src/main/java/net/parsell/cherry/CherryClient.java new file mode 100644 index 0000000..562b7a9 --- /dev/null +++ b/src/main/java/net/parsell/cherry/CherryClient.java @@ -0,0 +1,15 @@ +package net.parsell.cherry; + +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.rendereregistry.v1.BlockEntityRendererRegistry; +import net.minecraft.client.render.block.entity.SignBlockEntityRenderer; +import net.parsell.cherry.core.CherryBlocks; + +public class CherryClient implements ClientModInitializer { + @Override + public void onInitializeClient(){ + System.out.println("Cherry Client Initilizating..."); + BlockEntityRendererRegistry.INSTANCE.register(CherryBlocks.CHERRYSIGN_ENTITY, SignBlockEntityRenderer::new); + System.out.println("Sign entity registered without error"); + } +} \ No newline at end of file diff --git a/src/main/java/net/parsell/cherry/core/CherryBlocks.java b/src/main/java/net/parsell/cherry/core/CherryBlocks.java index 098fa45..4076bbb 100644 --- a/src/main/java/net/parsell/cherry/core/CherryBlocks.java +++ b/src/main/java/net/parsell/cherry/core/CherryBlocks.java @@ -47,6 +47,7 @@ public class CherryBlocks { public static final Block CHERRYBUTTON = registerButton("cherry_button", FabricBlockSettings.copyOf(Blocks.OAK_BUTTON), 5, 20); //TODO: recipe, loot tables, tags (as required) public static final Block CHERRYPRESSUREPLATE = registerPressurePlate("cherry_pressure_plate", PressurePlateBlock.ActivationRule.EVERYTHING, FabricBlockSettings.copyOf(Blocks.OAK_PRESSURE_PLATE), 5, 20); //TODO: recipe, loot tables, tags (as required) public static final Block CHERRYSIGN = registerSign("cherry_sign", SignType.OAK, FabricBlockSettings.copyOf(Blocks.OAK_SIGN), 5, 20); // TODO: recipe, loot tables + public static final BlockEntityType CHERRYSIGN_ENTITY = BlockEntityType.Builder.create(SignBlockEntity::new, CHERRYSIGN).build(null); private static Block registerBlock(String blockID, FabricBlockSettings settings, int burnChance, int burnSpread) { Block block = new Block(settings); @@ -86,7 +87,6 @@ public class CherryBlocks { private static Block registerSign(String blockID, SignType type, FabricBlockSettings settings, int burnChance, int burnSpread) { Block block = new SignBlock(settings, type); Registry.register(Registry.BLOCK, new Identifier("cherry", blockID), block); - Registry.register(Registry.BLOCK_ENTITY_TYPE, new Identifier("cherry", blockID), BlockEntityType.Builder.create(SignBlockEntity::new, block).build(null)); FlammableBlockRegistry.getDefaultInstance().add(block, burnChance, burnSpread); return block; } @@ -154,5 +154,10 @@ public class CherryBlocks { // Register unique logs AxeItemAccessor.setStrippedLogs(STRIPPABLE_BLOCKS.build()); + System.out.println(CHERRYSIGN_ENTITY.toString()); + if(!(CHERRYSIGN_ENTITY == null)) + Registry.register(Registry.BLOCK_ENTITY_TYPE, new Identifier("cherry", "cherry_sign"), CHERRYSIGN_ENTITY); + else + System.out.println("cherry:cherry_sign entity is null"); } } \ No newline at end of file diff --git a/src/main/resources/assets/cherry/textures/entity/signs/cherry.png b/src/main/resources/assets/cherry/textures/entity/signs/cherry.png new file mode 100644 index 0000000..e0f2368 Binary files /dev/null and b/src/main/resources/assets/cherry/textures/entity/signs/cherry.png differ diff --git a/src/main/resources/assets/cherry/textures/entity/signs/oak.png b/src/main/resources/assets/cherry/textures/entity/signs/oak.png new file mode 100644 index 0000000..3835f7a Binary files /dev/null and b/src/main/resources/assets/cherry/textures/entity/signs/oak.png differ diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index e4d9da6..9c90ed2 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -18,6 +18,9 @@ "environment": "*", "entrypoints": { + "client": [ + "net.parsell.cherry.CherryClient" + ], "main": [ "net.parsell.cherry.Cherry" ]