textures for the controller + basic code for directional blocks

This commit is contained in:
Raoul Van den Berge
2015-12-10 00:47:40 +01:00
parent b9c91141f7
commit 330b68fb3a
16 changed files with 150 additions and 2 deletions

View File

@@ -1,13 +1,19 @@
package storagecraft.block;
import net.minecraft.block.ITileEntityProvider;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.IIcon;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import storagecraft.SC;
import storagecraft.tile.TileController;
public class BlockController extends BlockSC implements ITileEntityProvider {
private IIcon sideIcon;
private IIcon[] icons = new IIcon[6];
public BlockController() {
super("controller");
}
@@ -32,4 +38,33 @@ public class BlockController extends BlockSC implements ITileEntityProvider {
super.onBlockPreDestroy(world, x, y, z, meta);
}
@Override
public void registerBlockIcons(IIconRegister register) {
for (int i = 0; i <= 5; ++i) {
icons[i] = register.registerIcon("storagecraft:controller" + i);
}
sideIcon = register.registerIcon("storagecraft:generic");
}
@Override
public IIcon getIcon(IBlockAccess world, int x, int y, int z, int side) {
if (side == 0 || side == 1) {
return sideIcon;
}
TileController controller = (TileController) world.getTileEntity(x, y, z);
return icons[(int) ((float) controller.getEnergyStored(null) / (float) controller.getMaxEnergyStored(null) * 5f)];
}
@Override
public IIcon getIcon(int side, int meta) {
if (side == 0 || side == 1) {
return sideIcon;
}
return icons[0];
}
}