diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index 9a9604b95..1d44c938a 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -6,6 +6,8 @@ import com.hbm.blocks.bomb.*; import com.hbm.blocks.fluid.*; import com.hbm.blocks.gas.*; import com.hbm.blocks.machine.*; +import com.hbm.blocks.machine.pile.BlockGraphite; +import com.hbm.blocks.machine.pile.BlockGraphiteDrilled; import com.hbm.blocks.machine.rbmk.*; import com.hbm.blocks.network.*; import com.hbm.blocks.test.*; @@ -224,6 +226,9 @@ public class ModBlocks { public static Block block_foam; public static Block block_graphite; public static Block block_graphite_drilled; + public static Block block_graphite_fuel; + public static Block block_graphite_rod; + public static Block block_graphite_source; public static Block block_boron; public static Block block_lanthanium; public static Block block_actinium; @@ -1349,8 +1354,8 @@ public class ModBlocks { block_red_phosphorus = new BlockHazardFalling().makeBeaconable().addFire(15).toBlock().setStepSound(Block.soundTypeSand).setBlockName("block_red_phosphorus").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_red_phosphorus"); block_fallout = new BlockHazardFalling().addRadiation(ItemHazard.fo * ItemHazard.block).toBlock().setStepSound(Block.soundTypeGravel).setBlockName("block_fallout").setCreativeTab(MainRegistry.blockTab).setHardness(0.2F).setBlockTextureName(RefStrings.MODID + ":ash"); block_foam = new BlockGeneric(Material.craftedSnow).setBlockName("block_foam").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeSnow).setHardness(0.5F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":foam"); - block_graphite = new BlockGraphite(Material.iron, 30, 5).setBlockName("block_graphite").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_graphite"); - block_graphite_drilled = new BlockFlammable(Material.iron, 30, 5).setBlockName("block_graphite_drilled").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_graphite_drilled"); + block_graphite = new BlockGraphite(Material.iron, 30, 5).setBlockName("block_graphite").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F); + block_graphite_drilled = new BlockGraphiteDrilled(Material.iron, 30, 5).setBlockName("block_graphite_drilled").setCreativeTab(null).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_graphite"); block_boron = new BlockBeaconable(Material.iron).setBlockName("block_boron").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_boron"); block_lanthanium = new BlockBeaconable(Material.iron).setBlockName("block_lanthanium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_lanthanium"); block_actinium = new BlockBeaconable(Material.iron).setBlockName("block_actinium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_actinium"); diff --git a/src/main/java/com/hbm/blocks/generic/BlockFlammable.java b/src/main/java/com/hbm/blocks/generic/BlockFlammable.java index 8ccc8a67d..793029ba0 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockFlammable.java +++ b/src/main/java/com/hbm/blocks/generic/BlockFlammable.java @@ -1,11 +1,13 @@ package com.hbm.blocks.generic; +import com.hbm.blocks.BlockBase; + import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.world.IBlockAccess; import net.minecraftforge.common.util.ForgeDirection; -public class BlockFlammable extends Block { +public class BlockFlammable extends BlockBase { private int encouragement; private int flammability; diff --git a/src/main/java/com/hbm/blocks/machine/BlockGraphite.java b/src/main/java/com/hbm/blocks/machine/pile/BlockGraphite.java similarity index 94% rename from src/main/java/com/hbm/blocks/machine/BlockGraphite.java rename to src/main/java/com/hbm/blocks/machine/pile/BlockGraphite.java index 371471b7a..15b97f94f 100644 --- a/src/main/java/com/hbm/blocks/machine/BlockGraphite.java +++ b/src/main/java/com/hbm/blocks/machine/pile/BlockGraphite.java @@ -1,4 +1,4 @@ -package com.hbm.blocks.machine; +package com.hbm.blocks.machine.pile; import com.hbm.blocks.ModBlocks; import com.hbm.blocks.generic.BlockFlammable; @@ -30,7 +30,7 @@ public class BlockGraphite extends BlockFlammable implements IToolable { return false; if(!world.isRemote) { - world.setBlock(x, y, z, ModBlocks.block_graphite_drilled); + world.setBlock(x, y, z, ModBlocks.block_graphite_drilled, side / 2, 3); PacketDispatcher.wrapper.sendToAllAround(new ParticleBurstPacket(x, y, z, Block.getIdFromBlock(this), 0), new TargetPoint(world.provider.dimensionId, x, y, z, 50)); world.playSoundEffect(x + 0.5, y + 0.5, z + 0.5, this.stepSound.func_150496_b(), (this.stepSound.getVolume() + 1.0F) / 2.0F, this.stepSound.getPitch() * 0.8F); diff --git a/src/main/java/com/hbm/blocks/machine/pile/BlockGraphiteDrilled.java b/src/main/java/com/hbm/blocks/machine/pile/BlockGraphiteDrilled.java new file mode 100644 index 000000000..ab560a537 --- /dev/null +++ b/src/main/java/com/hbm/blocks/machine/pile/BlockGraphiteDrilled.java @@ -0,0 +1,39 @@ +package com.hbm.blocks.machine.pile; + +import com.hbm.blocks.generic.BlockFlammable; +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.util.IIcon; + +public class BlockGraphiteDrilled extends BlockFlammable { + + @SideOnly(Side.CLIENT) + private IIcon holeIcon; + + public BlockGraphiteDrilled(Material mat, int en, int flam) { + super(mat, en, flam); + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister iconRegister) { + super.registerBlockIcons(iconRegister); + this.holeIcon = iconRegister.registerIcon(RefStrings.MODID + ":block_graphite_drilled"); + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIcon(int side, int metadata) { + + int cfg = metadata & 4; + + if(side == cfg * 2 || side == cfg * 2 + 1) + return this.holeIcon; + + return this.blockIcon; + } +} diff --git a/src/main/java/com/hbm/crafting/RodRecipes.java b/src/main/java/com/hbm/crafting/RodRecipes.java index fd2fe9b76..c5ef12c93 100644 --- a/src/main/java/com/hbm/crafting/RodRecipes.java +++ b/src/main/java/com/hbm/crafting/RodRecipes.java @@ -157,6 +157,10 @@ public class RodRecipes { addQuadRodBillet(ModItems.billet_plutonium_fuel, ModItems.rod_quad_plutonium_fuel); addQuadRodBillet(ModItems.billet_mox_fuel, ModItems.rod_quad_mox_fuel); addQuadRodBillet(ModItems.billet_schrabidium_fuel, ModItems.rod_quad_schrabidium_fuel); + + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.pile_rod_uranium, 1), new Object[] { " U ", "PUP", " U ", 'P', "plateIron", 'U', ModItems.billet_uranium })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.pile_rod_source, 1), new Object[] { " U ", "PUP", " U ", 'P', "plateIron", 'U', ModItems.billet_ra226be })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.pile_rod_boron, 1), new Object[] { "B", "W", "B", 'B', "ingotBoron", 'W', "plankWood" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.rbmk_fuel_empty, 1), new Object[] { "ZRZ", "Z Z", "ZRZ", 'Z', "ingotZirconium", 'R', ModItems.rod_quad_empty })); addRBMKRod(ModItems.billet_uranium, ModItems.rbmk_fuel_ueu); diff --git a/src/main/java/com/hbm/crafting/ToolRecipes.java b/src/main/java/com/hbm/crafting/ToolRecipes.java index 1fc889d9a..3cf5fa651 100644 --- a/src/main/java/com/hbm/crafting/ToolRecipes.java +++ b/src/main/java/com/hbm/crafting/ToolRecipes.java @@ -124,13 +124,15 @@ public class ToolRecipes { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.geiger_counter, 1), new Object[] { "GPP", "WCS", "WBB", 'W', ModItems.wire_gold, 'P', ModItems.plate_polymer, 'C', ModItems.circuit_aluminium, 'G', "ingotGold", 'S', "plateSteel", 'B', ModItems.ingot_beryllium })); GameRegistry.addShapelessRecipe(new ItemStack(ModBlocks.geiger), new Object[] { ModItems.geiger_counter }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.digamma_diagnostic), new Object[] { ModItems.geiger_counter, ModItems.billet_polonium, ModItems.ingot_asbestos }); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mirror_tool), new Object[] { " A ", " IA", "I ", 'A', "ingotAluminum", 'I', "ingotIron" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.rbmk_tool), new Object[] { " A ", " IA", "I ", 'A', "ingotLead", 'I', "ingotIron" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.defuser, 1), new Object[] { " PS", "P P", " P ", 'P', "ingotPolymer", 'S', "plateSteel" })); GameRegistry.addRecipe(new ItemStack(ModItems.coltan_tool, 1), new Object[] { "ACA", "CXC", "ACA", 'A', ModItems.ingot_advanced_alloy, 'C', ModItems.cinnebar, 'X', Items.compass }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.reacher, 1), new Object[] { "BIB", "P P", "B B", 'B', ModItems.bolt_tungsten, 'I', "ingotTungsten", 'P', ModItems.plate_polymer })); GameRegistry.addRecipe(new ItemStack(ModItems.bismuth_tool, 1), new Object[] { "TBT", "SRS", "SCS", 'T', ModItems.nugget_tantalium, 'B', ModItems.nugget_bismuth, 'S', ModItems.ingot_tcalloy, 'R', ModItems.reacher, 'C', ModItems.circuit_aluminium }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.sat_designator, 1), new Object[] { "RRD", "PIC", " P", 'P', "plateGold", 'R', Items.redstone, 'C', ModItems.circuit_gold, 'D', ModItems.sat_chip, 'I', "ingotGold" })); + + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mirror_tool), new Object[] { " A ", " IA", "I ", 'A', "ingotAluminum", 'I', "ingotIron" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.rbmk_tool), new Object[] { " A ", " IA", "I ", 'A', "ingotLead", 'I', "ingotIron" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hand_drill), new Object[] { " D", "S ", " S", 'D', "ingotDuraSteel", 'S', Items.stick })); //Bobmazon GameRegistry.addShapelessRecipe(new ItemStack(ModItems.bobmazon_materials), new Object[] { Items.book, Items.gold_nugget, Items.string }); diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 8b419a859..7d1234027 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -975,6 +975,11 @@ public class ModItems { public static Item rod_dual_coolant; public static Item rod_quad_coolant; + public static Item pile_rod_uranium; + public static Item pile_rod_plutonium; + public static Item pile_rod_source; + public static Item pile_rod_boron; + public static Item rbmk_lid; public static Item rbmk_lid_glass; public static Item rbmk_fuel_empty; @@ -3371,6 +3376,11 @@ public class ModItems { rod_dual_tritium = new ItemHazard(1F).setUnlocalizedName("rod_dual_tritium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_tritium"); rod_quad_tritium = new ItemHazard(2F).setUnlocalizedName("rod_quad_tritium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_tritium"); + pile_rod_uranium = new Item().setUnlocalizedName("pile_rod_uranium").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":pile_rod_uranium"); + pile_rod_plutonium = new Item().setUnlocalizedName("pile_rod_plutonium").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":pile_rod_plutonium"); + pile_rod_source = new Item().setUnlocalizedName("pile_rod_source").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":pile_rod_source"); + pile_rod_boron = new Item().setUnlocalizedName("pile_rod_boron").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":pile_rod_boron"); + rbmk_lid = new ItemRBMKLid().setUnlocalizedName("rbmk_lid").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":rbmk_lid"); rbmk_lid_glass = new ItemRBMKLid().setUnlocalizedName("rbmk_lid_glass").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":rbmk_lid_glass"); @@ -6388,6 +6398,13 @@ public class ModItems { GameRegistry.registerItem(rod_dual_waste, rod_dual_waste.getUnlocalizedName()); GameRegistry.registerItem(rod_quad_waste, rod_quad_waste.getUnlocalizedName()); + //Pile parts + GameRegistry.registerItem(pile_rod_uranium, pile_rod_uranium.getUnlocalizedName()); + GameRegistry.registerItem(pile_rod_plutonium, pile_rod_plutonium.getUnlocalizedName()); + GameRegistry.registerItem(pile_rod_source, pile_rod_source.getUnlocalizedName()); + GameRegistry.registerItem(pile_rod_boron, pile_rod_boron.getUnlocalizedName()); + + //RBMK parts GameRegistry.registerItem(rbmk_lid, rbmk_lid.getUnlocalizedName()); GameRegistry.registerItem(rbmk_lid_glass, rbmk_lid_glass.getUnlocalizedName()); GameRegistry.registerItem(rbmk_fuel_empty, rbmk_fuel_empty.getUnlocalizedName()); diff --git a/src/main/resources/assets/hbm/textures/blocks/block_graphite_source.png b/src/main/resources/assets/hbm/textures/blocks/block_graphite_source.png new file mode 100644 index 000000000..52d8f7273 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/block_graphite_source.png differ diff --git a/src/main/resources/assets/hbm/textures/items/pile_rod_boron.png b/src/main/resources/assets/hbm/textures/items/pile_rod_boron.png new file mode 100644 index 000000000..9543a6ee0 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/pile_rod_boron.png differ diff --git a/src/main/resources/assets/hbm/textures/items/pile_rod_plutonium.png b/src/main/resources/assets/hbm/textures/items/pile_rod_plutonium.png new file mode 100644 index 000000000..f2913d0a4 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/pile_rod_plutonium.png differ diff --git a/src/main/resources/assets/hbm/textures/items/pile_rod_source.png b/src/main/resources/assets/hbm/textures/items/pile_rod_source.png new file mode 100644 index 000000000..279b682f2 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/pile_rod_source.png differ diff --git a/src/main/resources/assets/hbm/textures/items/pile_rod_uranium.png b/src/main/resources/assets/hbm/textures/items/pile_rod_uranium.png new file mode 100644 index 000000000..cfffc6c48 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/pile_rod_uranium.png differ