package mcjty.rftools.blocks.dimletconstruction; import cpw.mods.fml.common.registry.GameRegistry; import mcjty.lib.container.GenericItemBlock; import mcjty.rftools.RFTools; import mcjty.rftools.blocks.ModBlocks; import mcjty.rftools.blocks.dimlets.DimletSetup; import mcjty.rftools.blocks.environmental.EnvironmentalSetup; import mcjty.rftools.crafting.NBTMatchingRecipe; import mcjty.rftools.items.parts.*; import net.minecraft.enchantment.Enchantment; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; public class DimletConstructionSetup { public static DimletWorkbenchBlock dimletWorkbenchBlock; public static BiomeAbsorberBlock biomeAbsorberBlock; public static MaterialAbsorberBlock materialAbsorberBlock; public static LiquidAbsorberBlock liquidAbsorberBlock; public static TimeAbsorberBlock timeAbsorberBlock; public static DimletBaseItem dimletBaseItem; public static DimletControlCircuitItem dimletControlCircuitItem; public static DimletEnergyModuleItem dimletEnergyModuleItem; public static DimletMemoryUnitItem dimletMemoryUnitItem; public static DimletTypeControllerItem dimletTypeControllerItem; public static SyringeItem syringeItem; public static PeaceEssenceItem peaceEssenceItem; public static EfficiencyEssenceItem efficiencyEssenceItem; public static MediocreEfficiencyEssenceItem mediocreEfficiencyEssenceItem; public static StructureEssenceItem structureEssenceItem; public static void setupBlocks() { dimletWorkbenchBlock = new DimletWorkbenchBlock(); GameRegistry.registerBlock(dimletWorkbenchBlock, GenericItemBlock.class, "dimletWorkbenchBlock"); GameRegistry.registerTileEntity(DimletWorkbenchTileEntity.class, "DimletWorkbenchTileEntity"); biomeAbsorberBlock = new BiomeAbsorberBlock(); GameRegistry.registerBlock(biomeAbsorberBlock, GenericItemBlock.class, "biomeAbsorberBlock"); GameRegistry.registerTileEntity(BiomeAbsorberTileEntity.class, "BiomeAbsorberTileEntity"); materialAbsorberBlock = new MaterialAbsorberBlock(); GameRegistry.registerBlock(materialAbsorberBlock, GenericItemBlock.class, "materialAbsorberBlock"); GameRegistry.registerTileEntity(MaterialAbsorberTileEntity.class, "MaterialAbsorberTileEntity"); liquidAbsorberBlock = new LiquidAbsorberBlock(); GameRegistry.registerBlock(liquidAbsorberBlock, GenericItemBlock.class, "liquidAbsorberBlock"); GameRegistry.registerTileEntity(LiquidAbsorberTileEntity.class, "LiquidAbsorberTileEntity"); timeAbsorberBlock = new TimeAbsorberBlock(); GameRegistry.registerBlock(timeAbsorberBlock, GenericItemBlock.class, "timeAbsorberBlock"); GameRegistry.registerTileEntity(TimeAbsorberTileEntity.class, "TimeAbsorberTileEntity"); } public static void setupItems() { dimletBaseItem = new DimletBaseItem(); dimletBaseItem.setUnlocalizedName("DimletBase"); dimletBaseItem.setCreativeTab(RFTools.tabRfTools); dimletBaseItem.setTextureName(RFTools.MODID + ":parts/dimletBase"); GameRegistry.registerItem(dimletBaseItem, "dimletBaseItem"); dimletControlCircuitItem = new DimletControlCircuitItem(); dimletControlCircuitItem.setUnlocalizedName("DimletControlCircuit"); dimletControlCircuitItem.setCreativeTab(RFTools.tabRfTools); GameRegistry.registerItem(dimletControlCircuitItem, "dimletControlCircuitItem"); dimletEnergyModuleItem = new DimletEnergyModuleItem(); dimletEnergyModuleItem.setUnlocalizedName("DimletEnergyModule"); dimletEnergyModuleItem.setCreativeTab(RFTools.tabRfTools); GameRegistry.registerItem(dimletEnergyModuleItem, "dimletEnergyModuleItem"); dimletMemoryUnitItem = new DimletMemoryUnitItem(); dimletMemoryUnitItem.setUnlocalizedName("DimletMemoryUnit"); dimletMemoryUnitItem.setCreativeTab(RFTools.tabRfTools); GameRegistry.registerItem(dimletMemoryUnitItem, "dimletMemoryUnitItem"); dimletTypeControllerItem = new DimletTypeControllerItem(); dimletTypeControllerItem.setUnlocalizedName("DimletTypeController"); dimletTypeControllerItem.setCreativeTab(RFTools.tabRfTools); GameRegistry.registerItem(dimletTypeControllerItem, "dimletTypeControllerItem"); syringeItem = new SyringeItem(); syringeItem.setUnlocalizedName("SyringeItem"); syringeItem.setCreativeTab(RFTools.tabRfTools); GameRegistry.registerItem(syringeItem, "syringeItem"); peaceEssenceItem = new PeaceEssenceItem(); peaceEssenceItem.setUnlocalizedName("PeaceEssence"); peaceEssenceItem.setCreativeTab(RFTools.tabRfTools); peaceEssenceItem.setTextureName(RFTools.MODID + ":parts/peaceEssence"); GameRegistry.registerItem(peaceEssenceItem, "peaceEssenceItem"); efficiencyEssenceItem = new EfficiencyEssenceItem(); efficiencyEssenceItem.setUnlocalizedName("EfficiencyEssence"); efficiencyEssenceItem.setCreativeTab(RFTools.tabRfTools); efficiencyEssenceItem.setTextureName(RFTools.MODID + ":parts/efficiencyEssence"); GameRegistry.registerItem(efficiencyEssenceItem, "efficiencyEssenceItem"); mediocreEfficiencyEssenceItem = new MediocreEfficiencyEssenceItem(); mediocreEfficiencyEssenceItem.setUnlocalizedName("MediocreEfficiencyEssence"); mediocreEfficiencyEssenceItem.setCreativeTab(RFTools.tabRfTools); mediocreEfficiencyEssenceItem.setTextureName(RFTools.MODID + ":parts/mediocreEfficiencyEssence"); GameRegistry.registerItem(mediocreEfficiencyEssenceItem, "mediocreEfficiencyEssenceItem"); structureEssenceItem = new StructureEssenceItem(); structureEssenceItem.setUnlocalizedName("StructureEssence"); structureEssenceItem.setCreativeTab(RFTools.tabRfTools); structureEssenceItem.setTextureName(RFTools.MODID + ":parts/structureEssence"); GameRegistry.registerItem(structureEssenceItem, "structureEssenceItem"); } public static void setupCrafting() { String[] syringeMatcher = new String[] { "level", "mobName" }; String[] pickMatcher = new String[] { "ench" }; GameRegistry.addRecipe(new NBTMatchingRecipe(3, 3, new ItemStack[]{EnvironmentalSetup.createMobSyringe("Iron Golem"), EnvironmentalSetup.createMobSyringe("Enderman"), EnvironmentalSetup.createMobSyringe("Snowman"), EnvironmentalSetup.createMobSyringe("Bat"), EnvironmentalSetup.createMobSyringe("Ocelot"), EnvironmentalSetup.createMobSyringe("Squid"), EnvironmentalSetup.createMobSyringe("Wolf"), EnvironmentalSetup.createMobSyringe("Zombie Pigman"), EnvironmentalSetup.createMobSyringe("Mooshroom")}, new String[][]{syringeMatcher, syringeMatcher, syringeMatcher, syringeMatcher, syringeMatcher, syringeMatcher, syringeMatcher, syringeMatcher, syringeMatcher}, new ItemStack(peaceEssenceItem))); GameRegistry.addRecipe(new ItemStack(dimletWorkbenchBlock), "gug", "cMc", "grg", 'M', ModBlocks.machineFrame, 'u', DimletSetup.unknownDimlet, 'c', Blocks.crafting_table, 'r', Items.redstone, 'g', Items.gold_nugget); GameRegistry.addRecipe(new ItemStack(biomeAbsorberBlock), "dws", "wMw", "swd", 'M', ModBlocks.machineFrame, 'd', Blocks.dirt, 's', Blocks.sapling, 'w', Blocks.wool); GameRegistry.addShapelessRecipe(new ItemStack(biomeAbsorberBlock), new ItemStack(biomeAbsorberBlock)); GameRegistry.addRecipe(new ItemStack(materialAbsorberBlock), "dwc", "wMw", "swg", 'M', ModBlocks.machineFrame, 'd', Blocks.dirt, 'c', Blocks.cobblestone, 's', Blocks.sand, 'g', Blocks.gravel, 'w', Blocks.wool); GameRegistry.addShapelessRecipe(new ItemStack(materialAbsorberBlock), new ItemStack(materialAbsorberBlock)); GameRegistry.addRecipe(new ItemStack(liquidAbsorberBlock), "bwb", "wMw", "bwb", 'M', ModBlocks.machineFrame, 'b', Items.bucket, 'w', Blocks.wool); GameRegistry.addShapelessRecipe(new ItemStack(liquidAbsorberBlock), new ItemStack(liquidAbsorberBlock)); GameRegistry.addRecipe(new ItemStack(timeAbsorberBlock), "cwc", "wMw", "cwc", 'M', ModBlocks.machineFrame, 'c', Items.clock, 'w', Blocks.wool); GameRegistry.addShapelessRecipe(new ItemStack(timeAbsorberBlock), new ItemStack(timeAbsorberBlock)); GameRegistry.addRecipe(new ItemStack(syringeItem), "i ", " i ", " b", 'i', Items.iron_ingot, 'b', Items.glass_bottle); ItemStack diamondPick = EnvironmentalSetup.createEnchantedItem(Items.diamond_pickaxe, Enchantment.efficiency.effectId, 3); GameRegistry.addRecipe(new NBTMatchingRecipe(3, 3, new ItemStack[] {null, diamondPick, null, new ItemStack(Items.ender_eye), new ItemStack(Items.nether_star), new ItemStack(Items.ender_eye), null, new ItemStack(Items.ender_eye), null}, new String[][] {null, pickMatcher, null, null, null, null, null, null, null}, new ItemStack(efficiencyEssenceItem))); ItemStack ironPick = EnvironmentalSetup.createEnchantedItem(Items.iron_pickaxe, Enchantment.efficiency.effectId, 2); GameRegistry.addRecipe(new NBTMatchingRecipe(3, 3, new ItemStack[] {null, ironPick, null, new ItemStack(Items.ender_eye), new ItemStack(Items.ghast_tear), new ItemStack(Items.ender_eye), null, new ItemStack(Items.ender_eye), null}, new String[][] {null, pickMatcher, null, null, null, null, null, null, null}, new ItemStack(mediocreEfficiencyEssenceItem))); } }