diff options
author | Draknyte1 <Draknyte1@hotmail.com> | 2016-07-27 20:26:08 +1000 |
---|---|---|
committer | Draknyte1 <Draknyte1@hotmail.com> | 2016-07-27 20:26:08 +1000 |
commit | c3d3a7e4e48cbed27ca5b56967e1593b30dbfd3b (patch) | |
tree | 08d6cf925acc309150a10fbcdf52d32bccf09c24 /src/Java/miscutil/core/block/base | |
parent | 70fb3475418db0048c39db1479b62a92be041314 (diff) | |
download | GT5-Unofficial-c3d3a7e4e48cbed27ca5b56967e1593b30dbfd3b.tar.gz GT5-Unofficial-c3d3a7e4e48cbed27ca5b56967e1593b30dbfd3b.tar.bz2 GT5-Unofficial-c3d3a7e4e48cbed27ca5b56967e1593b30dbfd3b.zip |
+ Added Base classes for meta blocks.
+ Added Base classes for ItemBlocks.
% Changed a Few tooltips for newly generated material items.
Diffstat (limited to 'src/Java/miscutil/core/block/base')
4 files changed, 147 insertions, 0 deletions
diff --git a/src/Java/miscutil/core/block/base/BasicBlock.java b/src/Java/miscutil/core/block/base/BasicBlock.java index 4e5fd13df8..284342b197 100644 --- a/src/Java/miscutil/core/block/base/BasicBlock.java +++ b/src/Java/miscutil/core/block/base/BasicBlock.java @@ -19,4 +19,33 @@ public class BasicBlock extends Block { this.setStepSound(soundTypeMetal); } + + public static enum BlockTypes { + STANDARD("block", "pickaxe", soundTypeStone), + FRAME("blockGtFrame", "wrench", soundTypeMetal); + + private String TEXTURE_NAME; + private String HARVEST_TOOL; + private SoundType soundOfBlock; + private BlockTypes (String textureName, String harvestTool, SoundType blockSound) + { + this.TEXTURE_NAME = textureName; + this.HARVEST_TOOL = harvestTool; + this.soundOfBlock = blockSound; + } + + public String getTexture() { + return TEXTURE_NAME; + } + + public String getHarvestTool(){ + return HARVEST_TOOL; + } + + public SoundType getBlockSoundType(){ + return soundOfBlock; + } + + } + } diff --git a/src/Java/miscutil/core/block/base/BlockBaseModular.java b/src/Java/miscutil/core/block/base/BlockBaseModular.java new file mode 100644 index 0000000000..f8d965f6d7 --- /dev/null +++ b/src/Java/miscutil/core/block/base/BlockBaseModular.java @@ -0,0 +1,54 @@ +package miscutil.core.block.base; + +import miscutil.core.lib.CORE; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.world.IBlockAccess; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; + +public class BlockBaseModular extends BasicBlock{ + + protected int blockColour; + protected BlockTypes thisBlock; + + public BlockBaseModular(String unlocalizedName, BlockTypes blockType, int colour) { + super(unlocalizedName, Material.iron); + this.setHarvestLevel(blockType.getHarvestTool(), 2); + this.setBlockTextureName(CORE.MODID+":"+blockType.getTexture()); + this.blockColour = colour; + this.thisBlock = blockType; + } + + /** + * Returns which pass should this block be rendered on. 0 for solids and 1 for alpha + */ + @Override + @SideOnly(Side.CLIENT) + public int getRenderBlockPass() + { + if (thisBlock.name() == BlockTypes.FRAME.name()){ + return 1; + } + return 0; + } + + @Override + public boolean isOpaqueCube() + { + return false; + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister iIcon) + { + this.blockIcon = iIcon.registerIcon(CORE.MODID + ":" + thisBlock.getTexture()); + } + + @Override + public int colorMultiplier(IBlockAccess par1IBlockAccess, int par2, int par3, int par4){ + return this.blockColour; + } + +} diff --git a/src/Java/miscutil/core/block/base/MetaBlock.java b/src/Java/miscutil/core/block/base/MetaBlock.java new file mode 100644 index 0000000000..79aeb42afe --- /dev/null +++ b/src/Java/miscutil/core/block/base/MetaBlock.java @@ -0,0 +1,28 @@ +package miscutil.core.block.base; + +import java.util.List; + +import net.minecraft.block.material.Material; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; + +public class MetaBlock extends MultiTextureBlock { + + protected MetaBlock(String unlocalizedName, Material material, SoundType soundType) { + super(unlocalizedName, material, soundType); + } + + @Override + public int damageDropped(int meta) { + return meta; + } + + @Override + public void getSubBlocks(Item item, CreativeTabs tab, List list) { + for (int i = 0; i < 6; i ++) { + list.add(new ItemStack(item, 1, i)); + } + } + +}
\ No newline at end of file diff --git a/src/Java/miscutil/core/block/base/MultiTextureBlock.java b/src/Java/miscutil/core/block/base/MultiTextureBlock.java new file mode 100644 index 0000000000..033139be89 --- /dev/null +++ b/src/Java/miscutil/core/block/base/MultiTextureBlock.java @@ -0,0 +1,36 @@ +package miscutil.core.block.base; + +import miscutil.core.creative.AddToCreativeTab; +import miscutil.core.lib.CORE; +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.util.IIcon; + +public class MultiTextureBlock extends Block { + + public IIcon[] icons = new IIcon[6]; + + protected MultiTextureBlock(String unlocalizedName, Material material, SoundType blockSound) + { + super(material); + this.setBlockName(unlocalizedName); + this.setBlockTextureName(CORE.MODID + ":" + unlocalizedName); + this.setCreativeTab(AddToCreativeTab.tabBlock); + this.setHardness(2.0F); + this.setResistance(6.0F); + this.setStepSound(blockSound); + } + + @Override + public void registerBlockIcons(IIconRegister reg) { + for (int i = 0; i < 6; i ++) { + this.icons[i] = reg.registerIcon(this.textureName + "_" + i); + } + } + + @Override + public IIcon getIcon(int side, int meta) { + return this.icons[side]; + } +}
\ No newline at end of file |