From 768470512bed09f35c6e087bbf02dc2c98de6ef0 Mon Sep 17 00:00:00 2001 From: AlgorithmX2 Date: Fri, 28 Feb 2014 13:13:43 -0600 Subject: [PATCH] Sky Stone Smooth :3 --- block/AEBaseBlock.java | 5 ++++ block/AEBaseItemBlock.java | 6 ++++ block/solids/BlockSkyStone.java | 51 +++++++++++++++++++++++++++++++-- 3 files changed, 59 insertions(+), 3 deletions(-) diff --git a/block/AEBaseBlock.java b/block/AEBaseBlock.java index e955997b5..85863a67e 100644 --- a/block/AEBaseBlock.java +++ b/block/AEBaseBlock.java @@ -680,6 +680,11 @@ public class AEBaseBlock extends BlockContainer implements IAEFeature return true; } + public String getUnlocalizedName(ItemStack is) + { + return getUnlocalizedName(); + } + public void addInformation(ItemStack is, EntityPlayer player, List lines, boolean advancedItemTooltips) { diff --git a/block/AEBaseItemBlock.java b/block/AEBaseItemBlock.java index 92c6dd70f..3c56f47dc 100644 --- a/block/AEBaseItemBlock.java +++ b/block/AEBaseItemBlock.java @@ -30,6 +30,12 @@ public class AEBaseItemBlock extends ItemBlock MinecraftForgeClient.registerItemRenderer( this, ItemRenderer.instance ); } + @Override + public String getUnlocalizedName(ItemStack is) + { + return blockType.getUnlocalizedName(is); + } + @Override public void addInformation(ItemStack is, EntityPlayer player, List lines, boolean advancedItemTooltips) { diff --git a/block/solids/BlockSkyStone.java b/block/solids/BlockSkyStone.java index 34a45237b..e3b961c50 100644 --- a/block/solids/BlockSkyStone.java +++ b/block/solids/BlockSkyStone.java @@ -1,8 +1,17 @@ package appeng.block.solids; import java.util.EnumSet; +import java.util.List; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; import net.minecraft.world.IBlockAccess; import appeng.api.util.IOrientable; import appeng.api.util.IOrientableBlock; @@ -13,17 +22,53 @@ import appeng.helpers.LocationRotation; public class BlockSkyStone extends AEBaseBlock implements IOrientableBlock { + @SideOnly(Side.CLIENT) + IIcon Smooth; + public BlockSkyStone() { super( BlockSkyStone.class, Material.rock ); setfeature( EnumSet.of( AEFeature.Core ) ); setHardness( 50 ); blockResistance = 150.0f; } - + + @Override + public String getUnlocalizedName(ItemStack is) { + + if ( is.getItemDamage() == 1 ) + return getUnlocalizedName()+".smooth"; + + return getUnlocalizedName(); + } + @Override public IOrientable getOrientable(final IBlockAccess w, final int x, final int y, final int z) { - return new LocationRotation( w, x, y, z ); + if ( w.getBlockMetadata(x, y, z) == 0 ) + return new LocationRotation( w, x, y, z ); + return null; } - + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister ir) { + super.registerBlockIcons(ir); + Smooth = ir.registerIcon(getTextureName()+".Smooth"); + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIcon(int direction, int metadata) { + if ( metadata == 1 ) + return Smooth; + return super.getIcon(direction, metadata); + } + + @Override + @SideOnly(Side.CLIENT) + public void getSubBlocks(Item i, CreativeTabs ct, List l) { + super.getSubBlocks(i, ct, l); + l.add( new ItemStack( i, 1, 1 ) ); + } + }