diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index 2f25a1301..86d8a7b0e 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -746,6 +746,8 @@ public class ModBlocks { public static Block fluid_duct_neo; public static Block conveyor; + public static Block crane_extractor; + public static Block crane_inserter; public static Block chain; @@ -1893,9 +1895,12 @@ public class ModBlocks { gas_duct = new BlockGasDuct(Material.iron).setBlockName("gas_duct").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_duct_icon"); fluid_duct = new BlockFluidDuct(Material.iron).setBlockName("fluid_duct").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fluid_duct_icon"); fluid_duct_solid = new BlockFluidDuctSolid(Material.iron).setBlockName("fluid_duct_solid").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fluid_duct_solid"); - conveyor = new BlockConveyor(Material.iron).setBlockName("conveyor").setHardness(0.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor"); fluid_duct_neo = new FluidDuctStandard(Material.iron).setBlockName("fluid_duct_neo").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pipe_neo"); + conveyor = new BlockConveyor().setBlockName("conveyor").setHardness(0.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor"); + crane_extractor = new CraneExtractor().setBlockName("crane_extractor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + crane_inserter = new CraneInserter().setBlockName("crane_extractor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + chain = new BlockChain(Material.iron).setBlockName("dungeon_chain").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":chain"); ladder_sturdy = new BlockNTMLadder().setBlockName("ladder_sturdy").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_sturdy"); @@ -3048,9 +3053,12 @@ public class ModBlocks { GameRegistry.registerBlock(fluid_duct, fluid_duct.getUnlocalizedName()); GameRegistry.registerBlock(fluid_duct_neo, ItemBlockBase.class, fluid_duct_neo.getUnlocalizedName()); GameRegistry.registerBlock(fluid_duct_solid, fluid_duct_solid.getUnlocalizedName()); - GameRegistry.registerBlock(conveyor, conveyor.getUnlocalizedName()); - GameRegistry.registerBlock(chain, chain.getUnlocalizedName()); + GameRegistry.registerBlock(crane_extractor, crane_extractor.getUnlocalizedName()); + GameRegistry.registerBlock(crane_inserter, crane_inserter.getUnlocalizedName()); + GameRegistry.registerBlock(conveyor, conveyor.getUnlocalizedName()); + + GameRegistry.registerBlock(chain, chain.getUnlocalizedName()); GameRegistry.registerBlock(ladder_sturdy, ladder_sturdy.getUnlocalizedName()); GameRegistry.registerBlock(ladder_iron, ladder_iron.getUnlocalizedName()); GameRegistry.registerBlock(ladder_gold, ladder_gold.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/blocks/network/BlockConveyor.java b/src/main/java/com/hbm/blocks/network/BlockConveyor.java index dc9235b89..70ca3a8c4 100644 --- a/src/main/java/com/hbm/blocks/network/BlockConveyor.java +++ b/src/main/java/com/hbm/blocks/network/BlockConveyor.java @@ -27,8 +27,8 @@ public class BlockConveyor extends Block implements IConveyorBelt { @SideOnly(Side.CLIENT) protected IIcon sideIcon; - public BlockConveyor(Material p_i45394_1_) { - super(p_i45394_1_); + public BlockConveyor() { + super(Material.iron); } @Override diff --git a/src/main/java/com/hbm/blocks/network/BlockCraneBase.java b/src/main/java/com/hbm/blocks/network/BlockCraneBase.java new file mode 100644 index 000000000..a979bdb18 --- /dev/null +++ b/src/main/java/com/hbm/blocks/network/BlockCraneBase.java @@ -0,0 +1,48 @@ +package com.hbm.blocks.network; + +import com.hbm.lib.RefStrings; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.block.BlockContainer; +import net.minecraft.block.BlockPistonBase; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; +import net.minecraft.world.World; + +public abstract class BlockCraneBase extends BlockContainer { + + @SideOnly(Side.CLIENT) protected IIcon iconSide; + @SideOnly(Side.CLIENT) protected IIcon iconIn; + @SideOnly(Side.CLIENT) protected IIcon iconSideIn; + @SideOnly(Side.CLIENT) protected IIcon iconOut; + @SideOnly(Side.CLIENT) protected IIcon iconSideOut; + @SideOnly(Side.CLIENT) protected IIcon iconDirectional; + + public BlockCraneBase(Material mat) { + super(mat); + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister iconRegister) { + this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":crane_top"); + this.iconSide = iconRegister.registerIcon(RefStrings.MODID + ":crane_side"); + this.iconIn = iconRegister.registerIcon(RefStrings.MODID + ":crane_in"); + this.iconSideIn = iconRegister.registerIcon(RefStrings.MODID + ":crane_side_in"); + this.iconOut = iconRegister.registerIcon(RefStrings.MODID + ":crane_out"); + this.iconSideOut = iconRegister.registerIcon(RefStrings.MODID + ":crane_side_out"); + } + + @Override + @SideOnly(Side.CLIENT) + public abstract IIcon getIcon(int side, int metadata); + + public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase player, ItemStack stack) { + int l = BlockPistonBase.determineOrientation(world, x, y, z, player); + world.setBlockMetadataWithNotify(x, y, z, l, 2); + } +} diff --git a/src/main/java/com/hbm/blocks/network/CraneExtractor.java b/src/main/java/com/hbm/blocks/network/CraneExtractor.java new file mode 100644 index 000000000..53bdff754 --- /dev/null +++ b/src/main/java/com/hbm/blocks/network/CraneExtractor.java @@ -0,0 +1,35 @@ +package com.hbm.blocks.network; + +import com.hbm.lib.RefStrings; + +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.tileentity.TileEntity; +import net.minecraft.util.IIcon; +import net.minecraft.world.World; + +public class CraneExtractor extends BlockCraneBase { + + public CraneExtractor() { + super(Material.iron); + } + + @Override + public TileEntity createNewTileEntity(World world, int meta) { + return null; + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister iconRegister) { + super.registerBlockIcons(iconRegister); + this.iconDirectional = iconRegister.registerIcon(RefStrings.MODID + ":crane_out_top"); + } + + @Override + public IIcon getIcon(int side, int metadata) { + return null; + } +} diff --git a/src/main/java/com/hbm/blocks/network/CraneInserter.java b/src/main/java/com/hbm/blocks/network/CraneInserter.java new file mode 100644 index 000000000..f1fd9276b --- /dev/null +++ b/src/main/java/com/hbm/blocks/network/CraneInserter.java @@ -0,0 +1,35 @@ +package com.hbm.blocks.network; + +import com.hbm.lib.RefStrings; + +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.tileentity.TileEntity; +import net.minecraft.util.IIcon; +import net.minecraft.world.World; + +public class CraneInserter extends BlockCraneBase{ + + public CraneInserter() { + super(Material.iron); + } + + @Override + public TileEntity createNewTileEntity(World world, int meta) { + return null; + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister iconRegister) { + super.registerBlockIcons(iconRegister); + this.iconDirectional = iconRegister.registerIcon(RefStrings.MODID + ":crane_in_top"); + } + + @Override + public IIcon getIcon(int side, int metadata) { + return null; + } +} diff --git a/src/main/resources/assets/hbm/textures/blocks/crane_in_top.png b/src/main/resources/assets/hbm/textures/blocks/crane_in_top.png index c09006451..a46e294c9 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/crane_in_top.png and b/src/main/resources/assets/hbm/textures/blocks/crane_in_top.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/crane_out_top.png b/src/main/resources/assets/hbm/textures/blocks/crane_out_top.png index a46e294c9..224864e9c 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/crane_out_top.png and b/src/main/resources/assets/hbm/textures/blocks/crane_out_top.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/storage/gui_crane_ejector.png b/src/main/resources/assets/hbm/textures/gui/storage/gui_crane_ejector.png new file mode 100644 index 000000000..506cf9f45 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/gui/storage/gui_crane_ejector.png differ