diff --git a/src/java/mmm/deco/DFence.java b/src/java/mmm/deco/DFence.java new file mode 100644 index 0000000..90ec1a4 --- /dev/null +++ b/src/java/mmm/deco/DFence.java @@ -0,0 +1,19 @@ +package mmm.deco; + + +import mmm.utils.URegistry; + + + +public class DFence +{ + public final DFenceBlock BLOCK; + + + public DFence( DWoodType woodType ) + { + this.BLOCK = new DFenceBlock( woodType ); + URegistry.addBlock( this.BLOCK ); + } + +} diff --git a/src/java/mmm/deco/DFenceBlock.java b/src/java/mmm/deco/DFenceBlock.java new file mode 100644 index 0000000..3a49df4 --- /dev/null +++ b/src/java/mmm/deco/DFenceBlock.java @@ -0,0 +1,45 @@ +package mmm.deco; + + +import mmm.utils.I_URecipeRegistrar; +import mmm.utils.URegistry; +import net.minecraft.block.BlockFence; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.init.Items; +import net.minecraft.item.ItemStack; +import net.minecraftforge.fml.common.registry.GameRegistry; + + + +public class DFenceBlock + extends BlockFence + implements I_URecipeRegistrar +{ + + private DWoodType woodType; + + + public DFenceBlock( DWoodType woodType ) + { + super( Material.WOOD , woodType.getMapColor( ) ); + this.woodType = woodType; + this.setHardness( 2.f ); + this.setResistance( 5.f ); + this.setSoundType( SoundType.WOOD ); + this.setHarvestLevel( "axe" , 0 ); + URegistry.setIdentifiers( this , "deco" , "fence" , woodType.getSuffix( ) ); + } + + + @Override + public void registerRecipes( ) + { + GameRegistry.addShapedRecipe( new ItemStack( this ) , // + "PSP" , // + "PSP" , // + 'P' , this.woodType.getPlanksBlock( ) , // + 'S' , Items.STICK ); + } + +} diff --git a/src/java/mmm/deco/DFences.java b/src/java/mmm/deco/DFences.java new file mode 100644 index 0000000..dc81871 --- /dev/null +++ b/src/java/mmm/deco/DFences.java @@ -0,0 +1,16 @@ +package mmm.deco; + + +public class DFences +{ + public final DFence BAMBOO; + public final DFence HEVEA; + + + DFences( ) + { + this.BAMBOO = new DFence( DWoodType.BAMBOO ); + this.HEVEA = new DFence( DWoodType.HEVEA ); + } + +} diff --git a/src/java/mmm/deco/DecorativeBlocks.java b/src/java/mmm/deco/DecorativeBlocks.java index a83579a..2206685 100644 --- a/src/java/mmm/deco/DecorativeBlocks.java +++ b/src/java/mmm/deco/DecorativeBlocks.java @@ -48,6 +48,8 @@ public class DecorativeBlocks public static final DThrone THRONE_HEVEA; public static final DThrone THRONE_BAMBOO; + public static final DFences FENCE; + static { final BlockStone.EnumType granite = BlockStone.EnumType.GRANITE_SMOOTH; final BlockStone.EnumType diorite = BlockStone.EnumType.DIORITE_SMOOTH; @@ -96,6 +98,8 @@ public class DecorativeBlocks THRONE_ACACIA = new DThrone( DWoodType.ACACIA ); THRONE_HEVEA = new DThrone( DWoodType.HEVEA); THRONE_BAMBOO = new DThrone( DWoodType.BAMBOO ); + + FENCE = new DFences( ); } diff --git a/src/resources/assets/mmm/blockstates/deco/fence/bamboo.json b/src/resources/assets/mmm/blockstates/deco/fence/bamboo.json new file mode 100644 index 0000000..be0022c --- /dev/null +++ b/src/resources/assets/mmm/blockstates/deco/fence/bamboo.json @@ -0,0 +1,17 @@ +{ + "multipart": [ + { "apply": { "model": "mmm:deco/fence/bamboo/post" }}, + { "when": { "north": "true" }, + "apply": { "model": "mmm:deco/fence/bamboo/side", "uvlock": true } + }, + { "when": { "east": "true" }, + "apply": { "model": "mmm:deco/fence/bamboo/side", "y": 90, "uvlock": true } + }, + { "when": { "south": "true" }, + "apply": { "model": "mmm:deco/fence/bamboo/side", "y": 180, "uvlock": true } + }, + { "when": { "west": "true" }, + "apply": { "model": "mmm:deco/fence/bamboo/side", "y": 270, "uvlock": true } + } + ] +} \ No newline at end of file diff --git a/src/resources/assets/mmm/blockstates/deco/fence/hevea.json b/src/resources/assets/mmm/blockstates/deco/fence/hevea.json new file mode 100644 index 0000000..d3b38f7 --- /dev/null +++ b/src/resources/assets/mmm/blockstates/deco/fence/hevea.json @@ -0,0 +1,17 @@ +{ + "multipart": [ + { "apply": { "model": "mmm:deco/fence/hevea/post" }}, + { "when": { "north": "true" }, + "apply": { "model": "mmm:deco/fence/hevea/side", "uvlock": true } + }, + { "when": { "east": "true" }, + "apply": { "model": "mmm:deco/fence/hevea/side", "y": 90, "uvlock": true } + }, + { "when": { "south": "true" }, + "apply": { "model": "mmm:deco/fence/hevea/side", "y": 180, "uvlock": true } + }, + { "when": { "west": "true" }, + "apply": { "model": "mmm:deco/fence/hevea/side", "y": 270, "uvlock": true } + } + ] +} \ No newline at end of file diff --git a/src/resources/assets/mmm/lang/en_US.lang b/src/resources/assets/mmm/lang/en_US.lang index c85d7ca..649515a 100644 --- a/src/resources/assets/mmm/lang/en_US.lang +++ b/src/resources/assets/mmm/lang/en_US.lang @@ -292,3 +292,5 @@ tile.mmm.deco.throne.hevea.silver.name=Hevea Throne (Silver) tile.mmm.deco.throne.hevea.white.name=Hevea Throne (White) tile.mmm.deco.throne.hevea.yellow.name=Hevea Throne (Yellow) +tile.mmm.deco.fence.hevea.name=Hevea Fence +tile.mmm.deco.fence.bamboo.name=Bamboo Fence diff --git a/src/resources/assets/mmm/models/block/deco/fence/bamboo/post.json b/src/resources/assets/mmm/models/block/deco/fence/bamboo/post.json new file mode 100644 index 0000000..4035040 --- /dev/null +++ b/src/resources/assets/mmm/models/block/deco/fence/bamboo/post.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/fence_post", + "textures": { + "texture": "mmm:blocks/materials/planks/bamboo" + } +} \ No newline at end of file diff --git a/src/resources/assets/mmm/models/block/deco/fence/bamboo/side.json b/src/resources/assets/mmm/models/block/deco/fence/bamboo/side.json new file mode 100644 index 0000000..e8712fa --- /dev/null +++ b/src/resources/assets/mmm/models/block/deco/fence/bamboo/side.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_side", + "textures": { + "texture": "mmm:blocks/materials/planks/bamboo" + } +} \ No newline at end of file diff --git a/src/resources/assets/mmm/models/block/deco/fence/hevea/post.json b/src/resources/assets/mmm/models/block/deco/fence/hevea/post.json new file mode 100644 index 0000000..262d988 --- /dev/null +++ b/src/resources/assets/mmm/models/block/deco/fence/hevea/post.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/fence_post", + "textures": { + "texture": "mmm:blocks/materials/planks/hevea" + } +} \ No newline at end of file diff --git a/src/resources/assets/mmm/models/block/deco/fence/hevea/side.json b/src/resources/assets/mmm/models/block/deco/fence/hevea/side.json new file mode 100644 index 0000000..a3b34c9 --- /dev/null +++ b/src/resources/assets/mmm/models/block/deco/fence/hevea/side.json @@ -0,0 +1,6 @@ +{ + "parent": "block/fence_side", + "textures": { + "texture": "mmm:blocks/materials/planks/hevea" + } +} \ No newline at end of file diff --git a/src/resources/assets/mmm/models/item/deco/fence/bamboo.json b/src/resources/assets/mmm/models/item/deco/fence/bamboo.json new file mode 100644 index 0000000..7b92455 --- /dev/null +++ b/src/resources/assets/mmm/models/item/deco/fence/bamboo.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/fence_inventory", + "textures": { + "texture": "mmm:blocks/materials/planks/bamboo" + } +} diff --git a/src/resources/assets/mmm/models/item/deco/fence/hevea.json b/src/resources/assets/mmm/models/item/deco/fence/hevea.json new file mode 100644 index 0000000..595e057 --- /dev/null +++ b/src/resources/assets/mmm/models/item/deco/fence/hevea.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/fence_inventory", + "textures": { + "texture": "mmm:blocks/materials/planks/hevea" + } +}