diff --git a/changelog.txt b/changelog.txt index 66e75c69..01b8e3a6 100644 --- a/changelog.txt +++ b/changelog.txt @@ -2,6 +2,7 @@ Version 2.1.0-59 ------------------------------------------------------ - Added the Living Armour Upgrade, Nocturnal Prowess, which gives night vision in dark areas and increases damage while the area is dark. +- Added a LOT of dungeon blocks. I mean a lot. ------------------------------------------------------ Version 2.0.4-58 diff --git a/src/main/java/WayofTime/bloodmagic/api/Constants.java b/src/main/java/WayofTime/bloodmagic/api/Constants.java index fe76fff9..f614aef6 100644 --- a/src/main/java/WayofTime/bloodmagic/api/Constants.java +++ b/src/main/java/WayofTime/bloodmagic/api/Constants.java @@ -296,6 +296,10 @@ public class Constants DEMON_BRICK_2("BlockDemonBricks2"), DEMON_BLOCK_EXTRA("BlockDemonExtra"), DEMON_PILLAR_1("BlockPillar1"), + DEMON_PILLAR_2("BlockPillar2"), + DEMON_PILLAR_CAP_1("BlockPillarCap1"), + DEMON_PILLAR_CAP_2("BlockPillarCap2"), + DEMON_PILLAR_CAP_3("BlockPillarCap3"), DEMON_LIGHT("BlockDemonLight"); @Getter diff --git a/src/main/java/WayofTime/bloodmagic/block/BlockDemonPillar.java b/src/main/java/WayofTime/bloodmagic/block/BlockDemonPillarBase.java similarity index 84% rename from src/main/java/WayofTime/bloodmagic/block/BlockDemonPillar.java rename to src/main/java/WayofTime/bloodmagic/block/BlockDemonPillarBase.java index 6661e51b..c87a2244 100644 --- a/src/main/java/WayofTime/bloodmagic/block/BlockDemonPillar.java +++ b/src/main/java/WayofTime/bloodmagic/block/BlockDemonPillarBase.java @@ -15,13 +15,14 @@ import WayofTime.bloodmagic.api.Constants; import WayofTime.bloodmagic.block.base.BlockStringPillar; import WayofTime.bloodmagic.client.IVariantProvider; -public class BlockDemonPillar extends BlockStringPillar implements IVariantProvider +public class BlockDemonPillarBase extends BlockStringPillar implements IVariantProvider { - public static final String[] names = new String[] { "raw", "corrosive", "destructive", "vengeful", "steadfast" }; + public final String[] names; - public BlockDemonPillar(String baseName, Material materialIn) + public BlockDemonPillarBase(String baseName, Material materialIn, String[] names) { super(materialIn, names); + this.names = names; setUnlocalizedName(Constants.Mod.MODID + "." + baseName + "."); setCreativeTab(BloodMagic.tabBloodMagic); diff --git a/src/main/java/WayofTime/bloodmagic/block/BlockDemonPillarCapBase.java b/src/main/java/WayofTime/bloodmagic/block/BlockDemonPillarCapBase.java new file mode 100644 index 00000000..40f579c0 --- /dev/null +++ b/src/main/java/WayofTime/bloodmagic/block/BlockDemonPillarCapBase.java @@ -0,0 +1,52 @@ +package WayofTime.bloodmagic.block; + +import java.util.ArrayList; +import java.util.List; + +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.util.EnumFacing; + +import org.apache.commons.lang3.tuple.ImmutablePair; +import org.apache.commons.lang3.tuple.Pair; + +import WayofTime.bloodmagic.BloodMagic; +import WayofTime.bloodmagic.api.Constants; +import WayofTime.bloodmagic.block.base.BlockStringPillarCap; +import WayofTime.bloodmagic.client.IVariantProvider; + +public class BlockDemonPillarCapBase extends BlockStringPillarCap implements IVariantProvider +{ + public final String[] names; + + public BlockDemonPillarCapBase(String baseName, Material materialIn, String[] names) + { + super(materialIn, names); + this.names = names; + + setUnlocalizedName(Constants.Mod.MODID + "." + baseName + "."); + setCreativeTab(BloodMagic.tabBloodMagic); + setHardness(2.0F); + setResistance(5.0F); + setSoundType(SoundType.STONE); + setHarvestLevel("pickaxe", 2); + } + + @Override + public List> getVariants() + { + List> ret = new ArrayList>(); + + //This is done to make the ItemBlocks have the proper model + + for (int i = 0; i < EnumFacing.values().length; i++) + { + for (int j = 0; j < names.length; j++) + { + ret.add(new ImmutablePair(i * 2 + j, "facing=" + EnumFacing.values()[i] + ",type=" + names[j])); + } + } + + return ret; + } +} \ No newline at end of file diff --git a/src/main/java/WayofTime/bloodmagic/block/base/BlockStringPillar.java b/src/main/java/WayofTime/bloodmagic/block/base/BlockStringPillar.java index 837404c9..a0c67ab8 100644 --- a/src/main/java/WayofTime/bloodmagic/block/base/BlockStringPillar.java +++ b/src/main/java/WayofTime/bloodmagic/block/base/BlockStringPillar.java @@ -114,12 +114,6 @@ public class BlockStringPillar extends BlockString this.setDefaultState(getExtendedBlockState().withProperty(this.getUnlistedStringProp(), this.getValues().get(0)).withProperty(this.getStringProp(), this.getValues().get(0)).withProperty(BlockRotatedPillar.AXIS, EnumFacing.Axis.Y)); } -// @Override -// protected BlockStateContainer createBlockState() -// { -// return new BlockStateContainer(this, new IProperty[] { this.getStringProp(), BlockRotatedPillar.AXIS }); -// } - @Override protected BlockStateContainer createRealBlockState() { diff --git a/src/main/java/WayofTime/bloodmagic/block/base/BlockStringPillarCap.java b/src/main/java/WayofTime/bloodmagic/block/base/BlockStringPillarCap.java new file mode 100644 index 00000000..502f4e1b --- /dev/null +++ b/src/main/java/WayofTime/bloodmagic/block/base/BlockStringPillarCap.java @@ -0,0 +1,100 @@ +package WayofTime.bloodmagic.block.base; + +import net.minecraft.block.material.Material; +import net.minecraft.block.properties.IProperty; +import net.minecraft.block.properties.PropertyDirection; +import net.minecraft.block.state.BlockStateContainer; +import net.minecraft.block.state.IBlockState; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumFacing; +import net.minecraft.util.Mirror; +import net.minecraft.util.Rotation; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.World; +import net.minecraftforge.common.property.ExtendedBlockState; +import net.minecraftforge.common.property.IUnlistedProperty; + +public class BlockStringPillarCap extends BlockString +{ + public static final PropertyDirection FACING = PropertyDirection.create("facing"); + + public BlockStringPillarCap(Material material, String[] values, String propName) + { + super(material, values, propName); + } + + public BlockStringPillarCap(Material material, String[] values) + { + this(material, values, "type"); + } + + @Override + public IBlockState getStateFromMeta(int meta) + { + IBlockState iblockstate = getBlockState().getBaseState().withProperty(this.getStringProp(), this.getValues().get(meta % 2)); + + int index = meta / 2; + EnumFacing facing = EnumFacing.getFront(index); + iblockstate = iblockstate.withProperty(FACING, facing); + + return iblockstate; + } + + @Override + public int getMetaFromState(IBlockState state) + { + int i = 0; + i = this.getValues().indexOf(String.valueOf(state.getValue(this.getStringProp()))); + + EnumFacing facing = (EnumFacing) state.getValue(FACING); + int index = facing.getIndex(); + i = i + 2 * index; + + return i; + } + + @Override + public IBlockState withRotation(IBlockState state, Rotation rot) + { + return state.withProperty(FACING, rot.rotate((EnumFacing) state.getValue(FACING))); + } + + @Override + public IBlockState withMirror(IBlockState state, Mirror mirrorIn) + { + return state.withRotation(mirrorIn.toRotation((EnumFacing) state.getValue(FACING))); + } + + @Override + protected void setupStates() + { + this.setDefaultState(getExtendedBlockState().withProperty(this.getUnlistedStringProp(), this.getValues().get(0)).withProperty(this.getStringProp(), this.getValues().get(0)).withProperty(FACING, EnumFacing.UP)); + } + + @Override + protected BlockStateContainer createRealBlockState() + { + return new ExtendedBlockState(this, new IProperty[] { this.getStringProp(), FACING }, new IUnlistedProperty[] { this.getUnlistedStringProp() }); + } + + @Override + protected ItemStack createStackedBlock(IBlockState state) + { + return new ItemStack(Item.getItemFromBlock(this), 1, this.getValues().indexOf(String.valueOf(state.getValue(this.getStringProp())))); + } + + @Override + public IBlockState onBlockPlaced(World worldIn, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer) + { + System.out.println("Facing: " + facing); + return super.onBlockPlaced(worldIn, pos, facing, hitX, hitY, hitZ, meta, placer).withProperty(FACING, facing); + } + + @Override + public int damageDropped(IBlockState state) + { + return this.getValues().indexOf(String.valueOf(state.getValue(this.getStringProp()))); + } +} diff --git a/src/main/java/WayofTime/bloodmagic/item/block/ItemBlockDemonPillarBase.java b/src/main/java/WayofTime/bloodmagic/item/block/ItemBlockDemonPillarBase.java index 41a2e80d..b920ad0a 100644 --- a/src/main/java/WayofTime/bloodmagic/item/block/ItemBlockDemonPillarBase.java +++ b/src/main/java/WayofTime/bloodmagic/item/block/ItemBlockDemonPillarBase.java @@ -1,30 +1,29 @@ package WayofTime.bloodmagic.item.block; -import net.minecraft.block.Block; import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemStack; -import WayofTime.bloodmagic.block.BlockDemonPillar; +import WayofTime.bloodmagic.block.BlockDemonPillarBase; public class ItemBlockDemonPillarBase extends ItemBlock { -// public final BlockDemonBase demonBlock; + public final BlockDemonPillarBase demonBlock; - public ItemBlockDemonPillarBase(Block block) + public ItemBlockDemonPillarBase(BlockDemonPillarBase block) { super(block); setHasSubtypes(true); -// demonBlock = block; + demonBlock = block; } @Override public String getUnlocalizedName(ItemStack stack) { - return super.getUnlocalizedName(stack) + BlockDemonPillar.names[stack.getItemDamage() % BlockDemonPillar.names.length]; + return super.getUnlocalizedName(stack) + demonBlock.names[stack.getItemDamage() % demonBlock.names.length]; } @Override public int getMetadata(int meta) { - return meta % BlockDemonPillar.names.length; + return meta % demonBlock.names.length; } } \ No newline at end of file diff --git a/src/main/java/WayofTime/bloodmagic/item/block/ItemBlockDemonPillarCapBase.java b/src/main/java/WayofTime/bloodmagic/item/block/ItemBlockDemonPillarCapBase.java new file mode 100644 index 00000000..5d36b00d --- /dev/null +++ b/src/main/java/WayofTime/bloodmagic/item/block/ItemBlockDemonPillarCapBase.java @@ -0,0 +1,29 @@ +package WayofTime.bloodmagic.item.block; + +import net.minecraft.item.ItemBlock; +import net.minecraft.item.ItemStack; +import WayofTime.bloodmagic.block.BlockDemonPillarCapBase; + +public class ItemBlockDemonPillarCapBase extends ItemBlock +{ + public final BlockDemonPillarCapBase demonBlock; + + public ItemBlockDemonPillarCapBase(BlockDemonPillarCapBase block) + { + super(block); + setHasSubtypes(true); + demonBlock = block; + } + + @Override + public String getUnlocalizedName(ItemStack stack) + { + return super.getUnlocalizedName(stack) + demonBlock.names[stack.getItemDamage() % demonBlock.names.length]; + } + + @Override + public int getMetadata(int meta) + { + return meta % demonBlock.names.length; + } +} \ No newline at end of file diff --git a/src/main/java/WayofTime/bloodmagic/registry/ModBlocks.java b/src/main/java/WayofTime/bloodmagic/registry/ModBlocks.java index 2a1e3d26..57c92c51 100644 --- a/src/main/java/WayofTime/bloodmagic/registry/ModBlocks.java +++ b/src/main/java/WayofTime/bloodmagic/registry/ModBlocks.java @@ -24,7 +24,8 @@ import WayofTime.bloodmagic.block.BlockDemonCrucible; import WayofTime.bloodmagic.block.BlockDemonCrystal; import WayofTime.bloodmagic.block.BlockDemonCrystallizer; import WayofTime.bloodmagic.block.BlockDemonLight; -import WayofTime.bloodmagic.block.BlockDemonPillar; +import WayofTime.bloodmagic.block.BlockDemonPillarBase; +import WayofTime.bloodmagic.block.BlockDemonPillarCapBase; import WayofTime.bloodmagic.block.BlockDemonPylon; import WayofTime.bloodmagic.block.BlockDimensionalPortal; import WayofTime.bloodmagic.block.BlockIncenseAltar; @@ -51,6 +52,7 @@ import WayofTime.bloodmagic.item.block.ItemBlockDemonBase; import WayofTime.bloodmagic.item.block.ItemBlockDemonCrystal; import WayofTime.bloodmagic.item.block.ItemBlockDemonLight; import WayofTime.bloodmagic.item.block.ItemBlockDemonPillarBase; +import WayofTime.bloodmagic.item.block.ItemBlockDemonPillarCapBase; import WayofTime.bloodmagic.item.block.ItemBlockMimic; import WayofTime.bloodmagic.item.block.ItemBlockPath; import WayofTime.bloodmagic.item.block.ItemBlockPedestal; @@ -124,6 +126,11 @@ public class ModBlocks public static Block demonBrick2; public static Block demonExtras; public static Block demonPillar1; + public static Block demonPillar2; + + public static Block demonPillarCap1; + public static Block demonPillarCap2; + public static Block demonPillarCap3; public static Block demonLight; @@ -168,7 +175,11 @@ public class ModBlocks demonBrick2 = registerBlock(new ItemBlockDemonBase(new BlockDemonBase("bricks2", new String[] { "smallbrick_raw", "smallbrick_corrosive", "smallbrick_destructive", "smallbrick_vengeful", "smallbrick_steadfast", "tile_raw", "tile_corrosive", "tile_destructive", "tile_vengeful", "tile_steadfast", "tilespecial_raw", "tilespecial_corrosive", "tilespecial_destructive", "tilespecial_vengeful", "tilespecial_steadfast" })), Constants.BloodMagicBlock.DEMON_BRICK_2.getRegName()); demonExtras = registerBlock(new ItemBlockDemonBase(new BlockDemonBase("extras", new String[] { "stone_raw", "stone_corrosive", "stone_destructive", "stone_vengeful", "stone_steadfast", "polished_raw", "polished_corrosive", "polished_destructive", "polished_vengeful", "polished_steadfast", "metal_raw", "metal_corrosive", "metal_destructive", "metal_vengeful", "metal_steadfast" })), Constants.BloodMagicBlock.DEMON_BLOCK_EXTRA.getRegName()); - demonPillar1 = registerBlock(new ItemBlockDemonPillarBase(new BlockDemonPillar("pillar1", Material.ROCK)), "BlockPillar1"); + demonPillar1 = registerBlock(new ItemBlockDemonPillarBase(new BlockDemonPillarBase("pillar1", Material.ROCK, new String[] { "raw", "corrosive", "destructive", "vengeful", "steadfast" })), Constants.BloodMagicBlock.DEMON_PILLAR_1.getRegName()); + demonPillar2 = registerBlock(new ItemBlockDemonPillarBase(new BlockDemonPillarBase("pillar2", Material.ROCK, new String[] { "raw", "corrosive", "destructive", "vengeful", "steadfast" })), Constants.BloodMagicBlock.DEMON_PILLAR_2.getRegName()); + demonPillarCap1 = registerBlock(new ItemBlockDemonPillarCapBase(new BlockDemonPillarCapBase("pillarCap1", Material.ROCK, new String[] { "raw", "corrosive" })), Constants.BloodMagicBlock.DEMON_PILLAR_CAP_1.getRegName()); + demonPillarCap2 = registerBlock(new ItemBlockDemonPillarCapBase(new BlockDemonPillarCapBase("pillarCap2", Material.ROCK, new String[] { "destructive", "vengeful" })), Constants.BloodMagicBlock.DEMON_PILLAR_CAP_2.getRegName()); + demonPillarCap3 = registerBlock(new ItemBlockDemonPillarCapBase(new BlockDemonPillarCapBase("pillarCap3", Material.ROCK, new String[] { "steadfast" })), Constants.BloodMagicBlock.DEMON_PILLAR_CAP_3.getRegName()); // testSpellBlock = registerBlock(new BlockTestSpellBlock()); demonLight = registerBlock(new ItemBlockDemonLight(new BlockDemonLight()), Constants.BloodMagicBlock.DEMON_LIGHT.getRegName()); diff --git a/src/main/resources/assets/bloodmagic/blockstates/BlockPillar1.json b/src/main/resources/assets/bloodmagic/blockstates/BlockPillar1.json index 78b9dd0d..c32dd8ac 100644 --- a/src/main/resources/assets/bloodmagic/blockstates/BlockPillar1.json +++ b/src/main/resources/assets/bloodmagic/blockstates/BlockPillar1.json @@ -1,76 +1,58 @@ { "forge_marker": 1, "defaults": { - "model": "minecraft:cube_bottom_top", + "model": "minecraft:cube", "textures": { - "bottom": "bloodmagic:blocks/dungeon/dungeon_pillarheart", - "top": "bloodmagic:blocks/dungeon/dungeon_pillarheart", - "side": "bloodmagic:blocks/dungeon/dungeon_pillar" + "end": "bloodmagic:blocks/dungeon/dungeon_pillarheart", + "side": "bloodmagic:blocks/dungeon/dungeon_pillar", + "particle": "#end" } }, "variants": { + "axis": { + "x": { + "model": "bloodmagic:BlockPillarX" + }, + "y": { + "model": "minecraft:cube_bottom_top", + "textures": { + "top": "#end", + "bottom": "#end" + } + }, + "z": { + "model": "bloodmagic:BlockPillarZ" + } + }, "type": { "raw": { }, "corrosive": { "textures": { - "bottom": "bloodmagic:blocks/dungeon/dungeon_pillarheart_c", - "top": "bloodmagic:blocks/dungeon/dungeon_pillarheart_c", + "end": "bloodmagic:blocks/dungeon/dungeon_pillarheart_c", "side": "bloodmagic:blocks/dungeon/dungeon_pillar_c" } }, "destructive": { "textures": { - "bottom": "bloodmagic:blocks/dungeon/dungeon_pillarheart_d", - "top": "bloodmagic:blocks/dungeon/dungeon_pillarheart_d", + "end": "bloodmagic:blocks/dungeon/dungeon_pillarheart_d", "side": "bloodmagic:blocks/dungeon/dungeon_pillar_d" } }, "vengeful": { "textures": { - "bottom": "bloodmagic:blocks/dungeon/dungeon_pillarheart_v", - "top": "bloodmagic:blocks/dungeon/dungeon_pillarheart_v", + "end": "bloodmagic:blocks/dungeon/dungeon_pillarheart_v", "side": "bloodmagic:blocks/dungeon/dungeon_pillar_v" } }, "steadfast": { "textures": { - "bottom": "bloodmagic:blocks/dungeon/dungeon_pillarheart_s", - "top": "bloodmagic:blocks/dungeon/dungeon_pillarheart_s", + "end": "bloodmagic:blocks/dungeon/dungeon_pillarheart_s", "side": "bloodmagic:blocks/dungeon/dungeon_pillar_s" } } }, - "axis": { - "x": { - "transform": { - "rotation": {"z": -90} - } - }, - "y": { - - }, - "z": { - "transform": { - "rotation": {"x": 90} - } - } - }, - "inventory": [{ - "variants": { - "raw": { - - }, - "corrosive": { - "textures": { - "bottom": "bloodmagic:blocks/dungeon/dungeon_pillarheart_c", - "top": "bloodmagic:blocks/dungeon/dungeon_pillarheart_c", - "side": "bloodmagic:blocks/dungeon/dungeon_pillar_c" - } - } - } - }] + "inventory": [{ }] } - } \ No newline at end of file diff --git a/src/main/resources/assets/bloodmagic/blockstates/BlockPillar2.json b/src/main/resources/assets/bloodmagic/blockstates/BlockPillar2.json new file mode 100644 index 00000000..9285da20 --- /dev/null +++ b/src/main/resources/assets/bloodmagic/blockstates/BlockPillar2.json @@ -0,0 +1,58 @@ +{ + "forge_marker": 1, + "defaults": { + "model": "minecraft:cube", + "textures": { + "end": "bloodmagic:blocks/dungeon/dungeon_pillarheart", + "side": "bloodmagic:blocks/dungeon/dungeon_pillarspecial", + "particle": "#end" + } + }, + "variants": { + "axis": { + "x": { + "model": "bloodmagic:BlockPillarX" + }, + "y": { + "model": "minecraft:cube_bottom_top", + "textures": { + "top": "#end", + "bottom": "#end" + } + }, + "z": { + "model": "bloodmagic:BlockPillarZ" + } + }, + "type": { + "raw": { + + }, + "corrosive": { + "textures": { + "end": "bloodmagic:blocks/dungeon/dungeon_pillarheart_c", + "side": "bloodmagic:blocks/dungeon/dungeon_pillarspecial_c" + } + }, + "destructive": { + "textures": { + "end": "bloodmagic:blocks/dungeon/dungeon_pillarheart_d", + "side": "bloodmagic:blocks/dungeon/dungeon_pillarspecial_d" + } + }, + "vengeful": { + "textures": { + "end": "bloodmagic:blocks/dungeon/dungeon_pillarheart_v", + "side": "bloodmagic:blocks/dungeon/dungeon_pillarspecial_v" + } + }, + "steadfast": { + "textures": { + "end": "bloodmagic:blocks/dungeon/dungeon_pillarheart_s", + "side": "bloodmagic:blocks/dungeon/dungeon_pillarspecial_s" + } + } + }, + "inventory": [{ }] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/bloodmagic/blockstates/BlockPillarCap1.json b/src/main/resources/assets/bloodmagic/blockstates/BlockPillarCap1.json new file mode 100644 index 00000000..01b3ebae --- /dev/null +++ b/src/main/resources/assets/bloodmagic/blockstates/BlockPillarCap1.json @@ -0,0 +1,57 @@ +{ + "forge_marker": 1, + "defaults": { + "model": "minecraft:cube", + "textures": { + "end": "bloodmagic:blocks/dungeon/dungeon_pillarheart", + "sideBottom": "bloodmagic:blocks/dungeon/dungeon_pillarbottom", + "sideTop": "bloodmagic:blocks/dungeon/dungeon_pillartop", + "particle": "#end" + } + }, + "variants": { + "facing": { + "down": { + "model": "minecraft:cube_bottom_top", + "textures": { + "top": "#end", + "bottom": "#end", + "side": "#sideBottom" + } + }, + "up": { + "model": "minecraft:cube_bottom_top", + "textures": { + "top": "#end", + "bottom": "#end", + "side": "#sideTop" + } + }, + "north": { + "model": "bloodmagic:BlockPillarCapNorth" + }, + "south": { + "model": "bloodmagic:BlockPillarCapSouth" + }, + "west": { + "model": "bloodmagic:BlockPillarCapWest" + }, + "east": { + "model": "bloodmagic:BlockPillarCapEast" + } + }, + "type": { + "raw": { + + }, + "corrosive": { + "textures": { + "end": "bloodmagic:blocks/dungeon/dungeon_pillarheart_c", + "sideBottom": "bloodmagic:blocks/dungeon/dungeon_pillarbottom_c", + "sideTop": "bloodmagic:blocks/dungeon/dungeon_pillartop_c" + } + } + }, + "inventory": [{ }] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/bloodmagic/blockstates/BlockPillarCap2.json b/src/main/resources/assets/bloodmagic/blockstates/BlockPillarCap2.json new file mode 100644 index 00000000..68d4de9a --- /dev/null +++ b/src/main/resources/assets/bloodmagic/blockstates/BlockPillarCap2.json @@ -0,0 +1,57 @@ +{ + "forge_marker": 1, + "defaults": { + "model": "minecraft:cube", + "textures": { + "end": "bloodmagic:blocks/dungeon/dungeon_pillarheart_d", + "sideBottom": "bloodmagic:blocks/dungeon/dungeon_pillarbottom_d", + "sideTop": "bloodmagic:blocks/dungeon/dungeon_pillartop_d", + "particle": "#end" + } + }, + "variants": { + "facing": { + "down": { + "model": "minecraft:cube_bottom_top", + "textures": { + "top": "#end", + "bottom": "#end", + "side": "#sideBottom" + } + }, + "up": { + "model": "minecraft:cube_bottom_top", + "textures": { + "top": "#end", + "bottom": "#end", + "side": "#sideTop" + } + }, + "north": { + "model": "bloodmagic:BlockPillarCapNorth" + }, + "south": { + "model": "bloodmagic:BlockPillarCapSouth" + }, + "west": { + "model": "bloodmagic:BlockPillarCapWest" + }, + "east": { + "model": "bloodmagic:BlockPillarCapEast" + } + }, + "type": { + "destructive": { + + }, + "vengeful": { + "textures": { + "end": "bloodmagic:blocks/dungeon/dungeon_pillarheart_v", + "sideBottom": "bloodmagic:blocks/dungeon/dungeon_pillarbottom_v", + "sideTop": "bloodmagic:blocks/dungeon/dungeon_pillartop_v" + } + } + }, + "inventory": [{ }] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/bloodmagic/blockstates/BlockPillarCap3.json b/src/main/resources/assets/bloodmagic/blockstates/BlockPillarCap3.json new file mode 100644 index 00000000..e373b095 --- /dev/null +++ b/src/main/resources/assets/bloodmagic/blockstates/BlockPillarCap3.json @@ -0,0 +1,50 @@ +{ + "forge_marker": 1, + "defaults": { + "model": "minecraft:cube", + "textures": { + "end": "bloodmagic:blocks/dungeon/dungeon_pillarheart_s", + "sideBottom": "bloodmagic:blocks/dungeon/dungeon_pillarbottom_s", + "sideTop": "bloodmagic:blocks/dungeon/dungeon_pillartop_s", + "particle": "#end" + } + }, + "variants": { + "facing": { + "down": { + "model": "minecraft:cube_bottom_top", + "textures": { + "top": "#end", + "bottom": "#end", + "side": "#sideBottom" + } + }, + "up": { + "model": "minecraft:cube_bottom_top", + "textures": { + "top": "#end", + "bottom": "#end", + "side": "#sideTop" + } + }, + "north": { + "model": "bloodmagic:BlockPillarCapNorth" + }, + "south": { + "model": "bloodmagic:BlockPillarCapSouth" + }, + "west": { + "model": "bloodmagic:BlockPillarCapWest" + }, + "east": { + "model": "bloodmagic:BlockPillarCapEast" + } + }, + "type": { + "steadfast": { + + } + }, + "inventory": [{ }] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/bloodmagic/lang/en_US.lang b/src/main/resources/assets/bloodmagic/lang/en_US.lang index bbe01f80..d47bf4f8 100644 --- a/src/main/resources/assets/bloodmagic/lang/en_US.lang +++ b/src/main/resources/assets/bloodmagic/lang/en_US.lang @@ -318,6 +318,18 @@ tile.BloodMagic.pillar1.destructive.name=Destructive Stone Pillar tile.BloodMagic.pillar1.vengeful.name=Vengeful Stone Pillar tile.BloodMagic.pillar1.steadfast.name=Steadfast Stone Pillar +tile.BloodMagic.pillar2.raw.name=Accented Raw Stone Pillar +tile.BloodMagic.pillar2.corrosive.name=Accented Corrosive Stone Pillar +tile.BloodMagic.pillar2.destructive.name=Accented Destructive Stone Pillar +tile.BloodMagic.pillar2.vengeful.name=Accented Vengeful Stone Pillar +tile.BloodMagic.pillar2.steadfast.name=Accented Steadfast Stone Pillar + +tile.BloodMagic.pillarCap1.raw.name=Raw Stone Pillar Cap +tile.BloodMagic.pillarCap1.corrosive.name=Corrosive Stone Pillar Cap +tile.BloodMagic.pillarCap2.destructive.name=Destructive Stone Pillar Cap +tile.BloodMagic.pillarCap2.vengeful.name=Vengeful Stone Pillar Cap +tile.BloodMagic.pillarCap3.steadfast.name=Steadfast Stone Pillar Cap + # Fluids fluid.lifeEssence=Life Essence diff --git a/src/main/resources/assets/bloodmagic/models/block/BlockPillarCapEast.json b/src/main/resources/assets/bloodmagic/models/block/BlockPillarCapEast.json new file mode 100644 index 00000000..babad7d1 --- /dev/null +++ b/src/main/resources/assets/bloodmagic/models/block/BlockPillarCapEast.json @@ -0,0 +1,17 @@ +{ + "elements": [ + { + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#sideBottom", "rotation": 270 }, + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#sideBottom", "rotation": 270 }, + "north": { "uv": [ 16, 0, 0, 16 ], "texture": "#sideTop", "rotation": 270 }, + "south": { "uv": [ 16, 0, 0, 16 ], "texture": "#sideBottom", "rotation": 270 }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#end" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#end" } + } + } + ] +} + diff --git a/src/main/resources/assets/bloodmagic/models/block/BlockPillarCapNorth.json b/src/main/resources/assets/bloodmagic/models/block/BlockPillarCapNorth.json new file mode 100644 index 00000000..6e32e554 --- /dev/null +++ b/src/main/resources/assets/bloodmagic/models/block/BlockPillarCapNorth.json @@ -0,0 +1,17 @@ +{ + "elements": [ + { + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#sideTop" }, + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#sideBottom" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#end" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#end" }, + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#sideTop", "rotation": 270 }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#sideBottom", "rotation": 270 } + } + } + ] +} + diff --git a/src/main/resources/assets/bloodmagic/models/block/BlockPillarCapSouth.json b/src/main/resources/assets/bloodmagic/models/block/BlockPillarCapSouth.json new file mode 100644 index 00000000..073431bb --- /dev/null +++ b/src/main/resources/assets/bloodmagic/models/block/BlockPillarCapSouth.json @@ -0,0 +1,17 @@ +{ + "elements": [ + { + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#sideBottom" }, + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#sideTop" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#end" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#end" }, + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#sideBottom", "rotation": 270 }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#sideTop", "rotation": 270 } + } + } + ] +} + diff --git a/src/main/resources/assets/bloodmagic/models/block/BlockPillarCapWest.json b/src/main/resources/assets/bloodmagic/models/block/BlockPillarCapWest.json new file mode 100644 index 00000000..32007d6c --- /dev/null +++ b/src/main/resources/assets/bloodmagic/models/block/BlockPillarCapWest.json @@ -0,0 +1,17 @@ +{ + "elements": [ + { + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#sideTop", "rotation": 270 }, + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#sideTop", "rotation": 270 }, + "north": { "uv": [ 16, 0, 0, 16 ], "texture": "#sideBottom", "rotation": 270 }, + "south": { "uv": [ 16, 0, 0, 16 ], "texture": "#sideTop", "rotation": 270 }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#end" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#end" } + } + } + ] +} + diff --git a/src/main/resources/assets/bloodmagic/models/block/BlockPillarX.json b/src/main/resources/assets/bloodmagic/models/block/BlockPillarX.json new file mode 100644 index 00000000..3ad3a948 --- /dev/null +++ b/src/main/resources/assets/bloodmagic/models/block/BlockPillarX.json @@ -0,0 +1,17 @@ +{ + "elements": [ + { + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "up": { "uv": [ 16, 0, 0, 16 ], "texture": "#side", "rotation": 270 }, + "down": { "uv": [ 16, 0, 0, 16 ], "texture": "#side", "rotation": 270 }, + "north": { "uv": [ 16, 0, 0, 16 ], "texture": "#side", "rotation": 270 }, + "south": { "uv": [ 16, 0, 0, 16 ], "texture": "#side", "rotation": 270 }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#end" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#end" } + } + } + ] +} + diff --git a/src/main/resources/assets/bloodmagic/models/block/BlockPillarZ.json b/src/main/resources/assets/bloodmagic/models/block/BlockPillarZ.json new file mode 100644 index 00000000..a240f4d2 --- /dev/null +++ b/src/main/resources/assets/bloodmagic/models/block/BlockPillarZ.json @@ -0,0 +1,17 @@ +{ + "elements": [ + { + "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#side" }, + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#side" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#end" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#end" }, + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#side", "rotation": 270 }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#side", "rotation": 270 } + } + } + ] +} +