From 5c192d9e19dde22016fdf07b3f0e818342befd4c Mon Sep 17 00:00:00 2001 From: pjht Date: Fri, 9 Feb 2018 17:45:51 -0600 Subject: [PATCH] Add block with custom model --- .../pjht/ssspcore/block/BlockPedestal.java | 24 +++++ .../com/pjht/ssspcore/block/ModBlocks.java | 8 +- .../assets/ssspcore/blockstates/pedestal.json | 12 +++ .../resources/assets/ssspcore/lang/en_us.lang | 1 + .../ssspcore/models/block/pedestal.json | 91 +++++++++++++++++++ 5 files changed, 134 insertions(+), 2 deletions(-) create mode 100644 src/main/java/com/pjht/ssspcore/block/BlockPedestal.java create mode 100644 src/main/resources/assets/ssspcore/blockstates/pedestal.json create mode 100644 src/main/resources/assets/ssspcore/models/block/pedestal.json diff --git a/src/main/java/com/pjht/ssspcore/block/BlockPedestal.java b/src/main/java/com/pjht/ssspcore/block/BlockPedestal.java new file mode 100644 index 0000000..c6cc439 --- /dev/null +++ b/src/main/java/com/pjht/ssspcore/block/BlockPedestal.java @@ -0,0 +1,24 @@ +package com.pjht.ssspcore.block; + +import net.minecraft.block.material.Material; +import net.minecraft.block.state.IBlockState; + +public class BlockPedestal extends BlockBase { + + public BlockPedestal() { + super(Material.ROCK, "pedestal"); + } + + @Override + @Deprecated + public boolean isOpaqueCube(IBlockState state) { + return false; + } + + @Override + @Deprecated + public boolean isFullCube(IBlockState state) { + return false; + } + +} \ No newline at end of file diff --git a/src/main/java/com/pjht/ssspcore/block/ModBlocks.java b/src/main/java/com/pjht/ssspcore/block/ModBlocks.java index 2f3f7cd..2383bb9 100644 --- a/src/main/java/com/pjht/ssspcore/block/ModBlocks.java +++ b/src/main/java/com/pjht/ssspcore/block/ModBlocks.java @@ -6,20 +6,24 @@ import net.minecraftforge.registries.IForgeRegistry; public class ModBlocks { public static BlockOre oreCopper = new BlockOre("ore_copper","oreCopper"); + public static BlockPedestal pedestal = new BlockPedestal(); public static void register(IForgeRegistry registry) { registry.registerAll( - oreCopper + oreCopper, + pedestal ); } public static void registerItemBlocks(IForgeRegistry registry) { registry.registerAll( - oreCopper.createItemBlock() + oreCopper.createItemBlock(), + pedestal.createItemBlock() ); } public static void registerItemModels() { oreCopper.registerItemModel(Item.getItemFromBlock(oreCopper)); + pedestal.registerItemModel(Item.getItemFromBlock(pedestal)); } } diff --git a/src/main/resources/assets/ssspcore/blockstates/pedestal.json b/src/main/resources/assets/ssspcore/blockstates/pedestal.json new file mode 100644 index 0000000..fe4da8b --- /dev/null +++ b/src/main/resources/assets/ssspcore/blockstates/pedestal.json @@ -0,0 +1,12 @@ +{ + "forge_marker": 1, + "variants": { + "normal": { + "model": "ssspcore:pedestal" + }, + "inventory": { + "model": "ssspcore:pedestal", + "transform": "forge:default-block" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/ssspcore/lang/en_us.lang b/src/main/resources/assets/ssspcore/lang/en_us.lang index 0525990..baf9fe5 100644 --- a/src/main/resources/assets/ssspcore/lang/en_us.lang +++ b/src/main/resources/assets/ssspcore/lang/en_us.lang @@ -3,6 +3,7 @@ item.ingot_copper.name=Copper Ingot # Blocks tile.ore_copper.name=Copper Ore +tile.pedestal.name=Pedestal #Creative Tabs itemGroup.ssspcore=SSSP Core \ No newline at end of file diff --git a/src/main/resources/assets/ssspcore/models/block/pedestal.json b/src/main/resources/assets/ssspcore/models/block/pedestal.json new file mode 100644 index 0000000..c82f599 --- /dev/null +++ b/src/main/resources/assets/ssspcore/models/block/pedestal.json @@ -0,0 +1,91 @@ +{ + "textures": { + "pedestal": "blocks/stonebrick", + "particle": "blocks/stonebrick" + }, + "elements": [ + { + "from": [3, 0, 3], + "to": [13, 11, 13], + "faces": { + "down": { + "uv": [0, 0, 10, 10], + "texture": "#pedestal", + "cullface": "down" + }, + "north": { + "uv": [0, 0, 10, 11], + "texture": "#pedestal" + }, + "south": { + "uv": [0, 0, 10, 11], + "texture": "#pedestal" + }, + "west": { + "uv": [0, 0, 10, 11], + "texture": "#pedestal" + }, + "east": { + "uv": [0, 0, 10, 11], + "texture": "#pedestal" + } + } + }, + { + "from": [2, 11, 2], + "to": [14, 12, 14], + "faces": { + "down": { + "uv": [0, 0, 12, 12], + "texture": "#pedestal" + }, + "north": { + "uv": [0, 0, 12, 1], + "texture": "#pedestal" + }, + "south": { + "uv": [0, 0, 12, 1], + "texture": "#pedestal" + }, + "west": { + "uv": [0, 0, 12, 1], + "texture": "#pedestal" + }, + "east": { + "uv": [0, 0, 12, 1], + "texture": "#pedestal" + } + } + }, + { + "from": [1, 12, 1], + "to": [15, 13, 15], + "faces": { + "down": { + "uv": [0, 0, 14, 14], + "texture": "#pedestal" + }, + "up": { + "uv": [0, 0, 14, 14], + "texture": "#pedestal" + }, + "north": { + "uv": [0, 0, 14, 1], + "texture": "#pedestal" + }, + "south": { + "uv": [0, 0, 14, 1], + "texture": "#pedestal" + }, + "west": { + "uv": [0, 0, 14, 1], + "texture": "#pedestal" + }, + "east": { + "uv": [0, 0, 14, 1], + "texture": "#pedestal" + } + } + } + ] +} \ No newline at end of file