8b80cb7562
(cherry picked from commit 127df1f)
393 lines
25 KiB
Java
393 lines
25 KiB
Java
/*
|
|
* This file is part of TechReborn, licensed under the MIT License (MIT).
|
|
*
|
|
* Copyright (c) 2017 TechReborn
|
|
*
|
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
* of this software and associated documentation files (the "Software"), to deal
|
|
* in the Software without restriction, including without limitation the rights
|
|
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
* copies of the Software, and to permit persons to whom the Software is
|
|
* furnished to do so, subject to the following conditions:
|
|
*
|
|
* The above copyright notice and this permission notice shall be included in all
|
|
* copies or substantial portions of the Software.
|
|
*
|
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
* SOFTWARE.
|
|
*/
|
|
|
|
package techreborn.init.recipes;
|
|
|
|
import com.google.common.base.CaseFormat;
|
|
import net.minecraft.init.Blocks;
|
|
import net.minecraft.init.Items;
|
|
import net.minecraft.item.ItemStack;
|
|
import net.minecraftforge.oredict.OreDictionary;
|
|
import org.apache.commons.lang3.ArrayUtils;
|
|
import reborncore.common.util.CraftingHelper;
|
|
import techreborn.blocks.BlockStorage;
|
|
import techreborn.blocks.BlockStorage2;
|
|
import techreborn.config.ConfigTechReborn;
|
|
import techreborn.init.IC2Duplicates;
|
|
import techreborn.init.ModBlocks;
|
|
import techreborn.init.ModItems;
|
|
import techreborn.items.DynamicCell;
|
|
import techreborn.items.ItemDustsSmall;
|
|
import techreborn.items.ItemNuggets;
|
|
|
|
import java.security.InvalidParameterException;
|
|
|
|
/**
|
|
* Created by Prospector
|
|
*/
|
|
public class CraftingTableRecipes extends RecipeMethods {
|
|
public static void init() {
|
|
registerCompressionRecipes();
|
|
registerMixedMetalIngotRecipes();
|
|
registerShapeless(BlockStorage2.getStorageBlockByName("iridium_reinforced_stone", 1), getStack(Blocks.STONE), getMaterialObject("iridium", Type.INGOT));
|
|
registerShapeless(BlockStorage2.getStorageBlockByName("iridium_reinforced_tungstensteel", 1), BlockStorage2.getStorageBlockByName("tungstensteel", 1), getMaterialObject("iridium", Type.INGOT));
|
|
registerShapeless(BlockStorage2.getStorageBlockByName("iridium_reinforced_tungstensteel", 1), BlockStorage2.getStorageBlockByName("iridium_reinforced_stone", 1), getMaterialObject("tungstensteel", Type.INGOT));
|
|
|
|
registerShapeless(getStack(ModBlocks.RUBBER_PLANKS, 4), getStack(ModBlocks.RUBBER_LOG));
|
|
|
|
if(!IC2Duplicates.deduplicate()){
|
|
registerShapeless(getStack(ModItems.FREQUENCY_TRANSMITTER), getStack(IC2Duplicates.CABLE_ICOPPER), "circuitBasic");
|
|
}
|
|
|
|
registerShaped(DynamicCell.getEmptyCell(16), " T ", "T T", " T ", 'T', "ingotTin");
|
|
registerShaped(getStack(ModBlocks.REFINED_IRON_FENCE), "RRR", "RRR", 'R', getStack(IC2Duplicates.REFINED_IRON));
|
|
|
|
registerShaped(getStack(ModItems.STEEL_DRILL), " S ", "SCS", "SBS", 'S', "ingotSteel", 'C', "circuitBasic", 'B', "reBattery");
|
|
registerShaped(getStack(ModItems.DIAMOND_DRILL), " D ", "DCD", "TST", 'D', "gemDiamond", 'C', "circuitAdvanced", 'S', getStack(ModItems.STEEL_DRILL, 1, OreDictionary.WILDCARD_VALUE), 'T', "ingotTitanium");
|
|
registerShaped(getStack(ModItems.ADVANCED_DRILL), " I ", "NCN", "OAO", 'I', "ingotIridium", 'N', "nuggetIridium", 'A', getStack(ModItems.DIAMOND_DRILL, 1, OreDictionary.WILDCARD_VALUE), 'C', "circuitMaster", 'O', getMaterial("overclock", Type.UPGRADE));
|
|
|
|
registerShaped(getStack(ModItems.STEEL_CHAINSAW), " SS", "SCS", "BS ", 'S', "ingotSteel", 'C', "circuitBasic", 'B', "reBattery");
|
|
registerShaped(getStack(ModItems.DIAMOND_CHAINSAW), " DD", "TCD", "ST ", 'D', "gemDiamond", 'C', "circuitAdvanced", 'S', getStack(ModItems.STEEL_CHAINSAW, 1, OreDictionary.WILDCARD_VALUE), 'T', "ingotTitanium");
|
|
registerShaped(getStack(ModItems.ADVANCED_CHAINSAW), " NI", "OCN", "DO ", 'I', "ingotIridium", 'N', "nuggetIridium", 'D', getStack(ModItems.DIAMOND_CHAINSAW, 1, OreDictionary.WILDCARD_VALUE), 'C', "circuitMaster", 'O', getMaterial("overclock", Type.UPGRADE));
|
|
|
|
registerShaped(getStack(ModItems.STEEL_JACKHAMMER), "SBS", "SCS", " S ", 'S', "ingotSteel", 'C', "circuitBasic", 'B', "reBattery");
|
|
registerShaped(getStack(ModItems.DIAMOND_JACKHAMMER), "DSD", "TCT", " D ", 'D', "gemDiamond", 'C', "circuitAdvanced", 'S', getStack(ModItems.STEEL_JACKHAMMER, 1, OreDictionary.WILDCARD_VALUE), 'T', "ingotTitanium");
|
|
registerShaped(getStack(ModItems.ADVANCED_JACKHAMMER), "NDN", "OCO", " I ", 'I', "ingotIridium", 'N', "nuggetIridium", 'D', getStack(ModItems.DIAMOND_DRILL, 1, OreDictionary.WILDCARD_VALUE), 'C', "circuitMaster", 'O', getMaterial("overclock", Type.UPGRADE));
|
|
|
|
if (ConfigTechReborn.enableGemArmorAndTools) {
|
|
addToolAndArmourRecipes(getStack(ModItems.RUBY_SWORD), getStack(ModItems.RUBY_PICKAXE), getStack(ModItems.RUBY_AXE), getStack(ModItems.RUBY_HOE), getStack(ModItems.RUBY_SPADE), getStack(ModItems.RUBY_HELMET), getStack(ModItems.RUBY_CHESTPLATE), getStack(ModItems.RUBY_LEGGINGS), getStack(ModItems.RUBY_BOOTS), "gemRuby");
|
|
addToolAndArmourRecipes(getStack(ModItems.SAPPHIRE_SWORD), getStack(ModItems.SAPPHIRE_PICKAXE), getStack(ModItems.SAPPHIRE_AXE), getStack(ModItems.SAPPHIRE_HOE), getStack(ModItems.SAPPHIRE_SPADE), getStack(ModItems.SAPPHIRE_HELMET), getStack(ModItems.SAPPHIRE_CHSTPLATE), getStack(ModItems.SAPPHIRE_LEGGINGS), getStack(ModItems.SAPPHIRE_BOOTS), "gemSapphire");
|
|
addToolAndArmourRecipes(getStack(ModItems.PERIDOT_SWORD), getStack(ModItems.PERIDOT_PICKAXE), getStack(ModItems.PERIDOT_AXE), getStack(ModItems.PERIDOT_HOE), getStack(ModItems.PERIDOT_SAPPHIRE), getStack(ModItems.PERIDOT_HELMET), getStack(ModItems.PERIDOT_CHESTPLATE), getStack(ModItems.PERIDOT_LEGGINGS), getStack(ModItems.PERIDOT_BOOTS), "gemPeridot");
|
|
addToolAndArmourRecipes(getStack(ModItems.BRONZE_SWORD), getStack(ModItems.BRONZE_PICKAXE), getStack(ModItems.BRONZE_AXE), getStack(ModItems.BRONZE_HOE), getStack(ModItems.BRONZE_SPADE), getStack(ModItems.BRONZE_HELMET), getStack(ModItems.BRONZE_CHESTPLATE), getStack(ModItems.BRONZE_LEGGINGS), getStack(ModItems.BRONZE_BOOTS), "ingotBronze");
|
|
}
|
|
|
|
if (!IC2Duplicates.deduplicate()) {
|
|
registerShaped(getMaterial("copper", 6, Type.CABLE), "CCC", 'C', "ingotCopper");
|
|
registerShaped(getMaterial("tin", 9, Type.CABLE), "TTT", 'T', "ingotTin");
|
|
registerShaped(getMaterial("gold", 12, Type.CABLE), "GGG", 'G', "ingotGold");
|
|
registerShaped(getMaterial("hv", 12, Type.CABLE), "RRR", 'R', "ingotRefinedIron");
|
|
|
|
registerShaped(getMaterial("insulatedcopper", 6, Type.CABLE), "RRR", "CCC", "RRR", 'R', "itemRubber", 'C', "ingotCopper");
|
|
registerShaped(getMaterial("insulatedcopper", 6, Type.CABLE), "RCR", "RCR", "RCR", 'R', "itemRubber", 'C', "ingotCopper");
|
|
registerShapeless(getMaterial("insulatedcopper", Type.CABLE), "itemRubber", getMaterialObject("copper", Type.CABLE));
|
|
|
|
registerShaped(getMaterial("insulatedgold", 4, Type.CABLE), "RRR", "RGR", "RRR", 'R', "itemRubber", 'G', "ingotGold");
|
|
registerShapeless(getMaterial("insulatedgold", Type.CABLE), "itemRubber", "itemRubber", getMaterialObject("gold", Type.CABLE));
|
|
|
|
registerShaped(getMaterial("insulatedhv", 4, Type.CABLE), "RRR", "RIR", "RRR", 'R', "itemRubber", 'I', "ingotRefinedIron");
|
|
registerShapeless(getMaterial("insulatedhv", Type.CABLE), "itemRubber", "itemRubber", getMaterialObject("hv", Type.CABLE));
|
|
|
|
registerShaped(getMaterial("glassfiber", 4, Type.CABLE), "GGG", "RDR", "GGG", 'R', "dustRedstone", 'D', "gemDiamond", 'G', "blockGlass");
|
|
registerShaped(getMaterial("glassfiber", 4, Type.CABLE), "GGG", "RDR", "GGG", 'R', "dustRedstone", 'D', "dustDiamond", 'G', "blockGlass");
|
|
|
|
registerShaped(getMaterial("glassfiber", 3, Type.CABLE), "GGG", "RDR", "GGG", 'R', "dustRedstone", 'D', "gemRuby", 'G', "blockGlass");
|
|
registerShaped(getMaterial("glassfiber", 3, Type.CABLE), "GGG", "RDR", "GGG", 'R', "dustRedstone", 'D', "dustRuby", 'G', "blockGlass");
|
|
|
|
registerShaped(getMaterial("glassfiber", 6, Type.CABLE), "GGG", "RDR", "GGG", 'R', "ingotSilver", 'D', "gemDiamond", 'G', "blockGlass");
|
|
registerShaped(getMaterial("glassfiber", 6, Type.CABLE), "GGG", "RDR", "GGG", 'R', "ingotSilver", 'D', "dustDiamond", 'G', "blockGlass");
|
|
|
|
registerShaped(getMaterial("glassfiber", 8, Type.CABLE), "GGG", "RDR", "GGG", 'R', "ingotElectrum", 'D', "gemDiamond", 'G', "blockGlass");
|
|
registerShaped(getMaterial("glassfiber", 8, Type.CABLE), "GGG", "RDR", "GGG", 'R', "ingotElectrum", 'D', "dustDiamond", 'G', "blockGlass");
|
|
}
|
|
|
|
if (!IC2Duplicates.deduplicate()) {
|
|
registerShapeless(getMaterial("carbon_fiber", Type.PART), "dustCoal", "dustCoal", "dustCoal", "dustCoal");
|
|
registerShapeless(getMaterial("carbon_fiber", Type.PART), getMaterialObject("carbon", Type.CELL), getMaterialObject("carbon", Type.CELL), getMaterialObject("carbon", Type.CELL), getMaterialObject("carbon", Type.CELL), getMaterialObject("carbon", Type.CELL), getMaterialObject("carbon", Type.CELL), getMaterialObject("carbon", Type.CELL), getMaterialObject("carbon", Type.CELL), getMaterialObject("carbon", Type.CELL));
|
|
registerShapeless(getMaterial("carbon_mesh", Type.PART), getMaterialObject("carbon_fiber", Type.PART), getMaterialObject("carbon_fiber", Type.PART));
|
|
}
|
|
|
|
registerShaped(getMaterial("computer_monitor", Type.PART), "ADA", "DGD", "ADA", 'D', "dye", 'A', "ingotAluminum", 'G', "paneGlass");
|
|
registerShaped(getStack(ModBlocks.REINFORCED_GLASS, 7), "GAG", "GGG", "GAG", 'A', "plateAdvancedAlloy", 'G', "blockGlass");
|
|
registerShaped(getStack(ModBlocks.REINFORCED_GLASS, 7), "GGG", "AGA", "GGG", 'A', "plateAdvancedAlloy", 'G', "blockGlass");
|
|
registerShaped(getStack(ModBlocks.WIND_MILL, 2), "IXI", "XGX", "IXI", 'I', "ingotIron", 'G', getStack(IC2Duplicates.GENERATOR));
|
|
registerShaped(getStack(ModBlocks.WATER_MILL), "SWS", "WGW", "SWS", 'S', "stickWood", 'W', "plankWood", 'G', getStack(IC2Duplicates.GENERATOR));
|
|
|
|
if (!IC2Duplicates.deduplicate()) {
|
|
}
|
|
|
|
registerShaped(getMaterial("standard", 4, Type.MACHINE_CASING), "RRR", "CAC", "RRR", 'R', getStack(IC2Duplicates.REFINED_IRON), 'C', "circuitBasic", 'A', getMaterialObject("machine", Type.MACHINE_FRAME));
|
|
registerShaped(getMaterial("reinforced", 4, Type.MACHINE_CASING), "RRR", "CAC", "RRR", 'R', "ingotSteel", 'C', "circuitAdvanced", 'A', getMaterialObject("advanced_machine", Type.MACHINE_FRAME));
|
|
|
|
registerShaped(getMaterial("dataOrb", Type.PART), "DDD", "DID", "DDD", 'D', "circuitData", 'I', "circuitElite");
|
|
|
|
registerShaped(getMaterial("dataControlCircuit", 4, Type.PART), "CDC", "DID", "CDC", 'I', getMaterialObject("iridium", Type.PLATE), 'D', "circuitData", 'C', "circuitAdvanced");
|
|
|
|
registerShaped(getStack(ModBlocks.THERMAL_GENERATOR), "III", "IRI", "CGC", 'I', "ingotInvar", 'R', ModBlocks.REINFORCED_GLASS, 'G', getStack(IC2Duplicates.GENERATOR), 'C', "circuitBasic");
|
|
|
|
if (!IC2Duplicates.deduplicate()) {
|
|
registerShaped(getStack(IC2Duplicates.HVT), "XHX", "XMX", "XHX", 'M', getStack(IC2Duplicates.MVT), 'H', getStack(IC2Duplicates.CABLE_IHV));
|
|
registerShaped(getStack(IC2Duplicates.MVT), "XGX", "XMX", "XGX", 'M', getMaterialObject("machine", Type.MACHINE_FRAME), 'G', getStack(IC2Duplicates.CABLE_IGOLD));
|
|
registerShaped(getStack(IC2Duplicates.LVT), "PWP", "CCC", "PPP", 'P', "plankWood", 'C', "ingotCopper", 'W', getStack(IC2Duplicates.CABLE_ICOPPER));
|
|
registerShaped(getStack(IC2Duplicates.BAT_BOX), "WCW", "BBB", "WWW", 'W', "plankWood", 'B', getStack(ModItems.RE_BATTERY), 'C', getStack(IC2Duplicates.CABLE_ICOPPER));
|
|
registerShaped(getStack(IC2Duplicates.MFE), "GEG", "EME", "GEG", 'M', getMaterialObject("machine", Type.MACHINE_FRAME), 'E', getStack(ModItems.ENERGY_CRYSTAL), 'G', getStack(IC2Duplicates.CABLE_IGOLD));
|
|
registerShaped(getStack(IC2Duplicates.MFSU), "LAL", "LML", "LOL", 'A', "circuitAdvanced", 'L', getStack(ModItems.LAPOTRONIC_CRYSTAL), 'M', getStack(IC2Duplicates.MFE), 'O', getMaterialObject("advanced_machine", Type.MACHINE_FRAME));
|
|
registerShaped(getStack(IC2Duplicates.COMPRESSOR), "SXS", "SCS", "SMS", 'C', "circuitBasic", 'M', getMaterialObject("machine", Type.MACHINE_FRAME), 'S', Blocks.STONE);
|
|
registerShaped(getStack(IC2Duplicates.ELECTRICAL_FURNACE), "XCX", "RFR", "XXX", 'C', "circuitBasic", 'F', getStack(IC2Duplicates.IRON_FURNACE), 'R', "dustRedstone");
|
|
registerShaped(getStack(IC2Duplicates.RECYCLER), "XEX", "DCD", "GDG", 'D', Blocks.DIRT, 'C', getStack(IC2Duplicates.COMPRESSOR), 'G', Items.GLOWSTONE_DUST, 'E', "circuitBasic");
|
|
registerShaped(getStack(IC2Duplicates.IRON_FURNACE), "III", "IXI", "III", 'I', "ingotIron");
|
|
registerShaped(getStack(IC2Duplicates.IRON_FURNACE), "XIX", "IXI", "IFI", 'I', "ingotIron", 'F', Blocks.FURNACE);
|
|
registerShaped(getMaterial("electronic_circuit", Type.PART), "WWW", "SRS", "WWW", 'R', getStack(IC2Duplicates.REFINED_IRON), 'S', Items.REDSTONE, 'W', getStack(IC2Duplicates.CABLE_ICOPPER));
|
|
registerShaped(getMaterial("advanced_circuit", Type.PART), "RGR", "LCL", "RGR", 'R', "dustRedstone", 'G', "dustGlowstone", 'L', "gemLapis", 'C', "circuitBasic");
|
|
registerShaped(getStack(IC2Duplicates.EXTRACTOR), "TMT", "TCT", "XXX", 'T', getStack(ModItems.TREE_TAP, true), 'M', getMaterialObject("machine", Type.MACHINE_FRAME), 'C', "circuitBasic");
|
|
}
|
|
registerShaped(getStack(ModBlocks.INDUSTRIAL_ELECTROLYZER), "RER", "CEC", "RER", 'R', getStack(IC2Duplicates.REFINED_IRON), 'E', getStack(IC2Duplicates.EXTRACTOR), 'C', "circuitAdvanced");
|
|
|
|
registerShaped(getStack(ModItems.WRENCH), "BAB", "NBN", " B ", 'B', "ingotBronze", 'N', "nuggetBronze");
|
|
|
|
registerShaped(getStack(ModItems.RE_BATTERY), "XWX", "TRT", "TRT", 'T', "ingotTin", 'R', "dustRedstone", 'W', getStack(IC2Duplicates.CABLE_ICOPPER));
|
|
|
|
registerShaped(getStack(ModBlocks.INDUSTRIAL_CENTRIFUGE), "RCR", "AEA", "RCR", 'R', getStack(IC2Duplicates.REFINED_IRON), 'E', getStack(IC2Duplicates.EXTRACTOR), 'A', "machineBlockAdvanced", 'C', "circuitAdvanced");
|
|
registerShaped(getStack(ModBlocks.INDUSTRIAL_CENTRIFUGE), "RCR", "AEA", "RCR", 'R', "ingotAluminum", 'E', getStack(IC2Duplicates.EXTRACTOR), 'A', "machineBlockAdvanced", 'C', "circuitAdvanced");
|
|
registerShaped(getStack(ModBlocks.INDUSTRIAL_CENTRIFUGE), "RCR", "AEA", "RCR", 'R', "ingotAluminium", 'E', getStack(IC2Duplicates.EXTRACTOR), 'A', "machineBlockAdvanced", 'C', "circuitAdvanced");
|
|
registerShaped(getStack(ModItems.ENERGY_CRYSTAL), "RRR", "RDR", "RRR", 'R', "dustRedstone", 'D', "gemDiamond");
|
|
registerShaped(getStack(ModItems.LAPOTRONIC_CRYSTAL), "LCL", "LEL", "LCL", 'L', "dyeBlue", 'E', "energyCrystal", 'C', "circuitBasic");
|
|
registerShapeless(getStack(IC2Duplicates.GENERATOR), getStack(ModItems.RE_BATTERY), getMaterialObject("machine", Type.MACHINE_FRAME), Blocks.FURNACE);
|
|
|
|
registerShaped(getMaterial("machine", Type.MACHINE_FRAME), "AAA", "AXA", "AAA", 'A', getStack(IC2Duplicates.REFINED_IRON));
|
|
registerShaped(getMaterial("advanced_machine", Type.MACHINE_FRAME), "XCX", "AMA", "XCX", 'A', "plateAdvancedAlloy", 'C', "plateCarbon", 'M', getMaterialObject("machine", Type.MACHINE_FRAME));
|
|
|
|
registerShaped(getMaterial("data_storage_circuit", Type.PART), "EEE", "ECE", "EEE", 'E', "gemEmerald", 'C', "circuitBasic");
|
|
|
|
registerShaped(getMaterial("diamond_saw_blade", 4, Type.PART), "DSD", "S S", "DSD", 'D', "dustDiamond", 'S', "ingotSteel");
|
|
registerShaped(getMaterial("diamond_grinding_head", 2, Type.PART), "DSD", "SGS", "DSD", 'S', "ingotSteel", 'D', "dustDiamond", 'G', "gemDiamond");
|
|
registerShaped(getMaterial("tungsten_grinding_head", 2, Type.PART), "TST", "SBS", "TST", 'S', "ingotSteel", 'T', "ingotTungsten", 'B', "blockSteel");
|
|
|
|
if (ConfigTechReborn.UUrecipesWood)
|
|
registerShaped(getStack(Blocks.LOG, 8), " U ", " ", " ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesStone)
|
|
registerShaped(getStack(Blocks.STONE, 16), " ", " U ", " ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesSnowBlock)
|
|
registerShaped(getStack(Blocks.SNOW, 16), "U U", " ", " ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesGrass)
|
|
registerShaped(getStack(Blocks.GRASS, 16), " ", "U ", "U ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesObsidian)
|
|
registerShaped(getStack(Blocks.OBSIDIAN, 12), "U U", "U U", " ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesGlass)
|
|
registerShaped(getStack(Blocks.GLASS, 32), " U ", "U U", " U ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesCocoa)
|
|
registerShaped(getStack(Items.DYE, 32, 3), "UU ", " U", "UU ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesGlowstoneBlock)
|
|
registerShaped(getStack(Blocks.GLOWSTONE, 8), " U ", "U U", "UUU", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesCactus)
|
|
registerShaped(getStack(Blocks.CACTUS, 48), " U ", "UUU", "U U", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesSugarCane)
|
|
registerShaped(getStack(Items.REEDS, 48), "U U", "U U", "U U", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesVine)
|
|
registerShaped(getStack(Blocks.VINE, 24), "U ", "U ", "U ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesSnowBall)
|
|
registerShaped(getStack(Items.SNOWBALL, 16), " ", " ", "UUU", 'U', ModItems.UU_MATTER);
|
|
|
|
registerShaped(getStack(Items.CLAY_BALL, 48), "UU ", "U ", "UU ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipeslilypad)
|
|
registerShaped(getStack(Blocks.WATERLILY, 64), "U U", " U ", " U ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesGunpowder)
|
|
registerShaped(getStack(Items.GUNPOWDER, 15), "UUU", "U ", "UUU", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesBone)
|
|
registerShaped(getStack(Items.BONE, 32), "U ", "UU ", "U ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesFeather)
|
|
registerShaped(getStack(Items.FEATHER, 32), " U ", " U ", "U U", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesInk)
|
|
registerShaped(getStack(Items.DYE, 48), " UU", " UU", " U ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesEnderPearl)
|
|
registerShaped(getStack(Items.ENDER_PEARL, 1), "UUU", "U U", " U ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesCoal)
|
|
registerShaped(getStack(Items.COAL, 5), " U", "U ", " U", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesIronOre)
|
|
registerShaped(getStack(Blocks.IRON_ORE, 2), "U U", " U ", "U U", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesGoldOre)
|
|
registerShaped(getStack(Blocks.GOLD_ORE, 2), " U ", "UUU", " U ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesRedStone)
|
|
registerShaped(getStack(Items.REDSTONE, 24), " ", " U ", "UUU", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesLapis)
|
|
registerShaped(getStack(Items.DYE, 9, 4), " U ", " U ", " UU", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesEmeraldOre)
|
|
registerShaped(getStack(Blocks.EMERALD_ORE, 1), "UU ", "U U", " UU", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesEmerald)
|
|
registerShaped(getStack(Items.EMERALD, 2), "UUU", "UUU", " U ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesDiamond)
|
|
registerShaped(getStack(Items.DIAMOND, 1), "UUU", "UUU", "UUU", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesTinDust)
|
|
registerShaped(getMaterial("tin", 10, Type.DUST), " ", "U U", " U", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesCopperDust)
|
|
registerShaped(getMaterial("copper", 10, Type.DUST), " U", "U U", " ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesLeadDust)
|
|
registerShaped(getMaterial("lead", 14, Type.DUST), "UUU", "UUU", "U ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesPlatinumDust)
|
|
registerShaped(getMaterial("platinum", Type.DUST), " U", "UUU", "UUU", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesTungstenDust)
|
|
registerShaped(getMaterial("tungsten", Type.DUST), "U ", "UUU", "UUU", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesTitaniumDust)
|
|
registerShaped(getMaterial("titanium", 2, Type.DUST), "UUU", " U ", " U ", 'U', ModItems.UU_MATTER);
|
|
|
|
if (ConfigTechReborn.UUrecipesAluminumDust)
|
|
registerShaped(getMaterial("aluminum", 16, Type.DUST), " U ", " U ", "UUU", 'U', ModItems.UU_MATTER);
|
|
}
|
|
|
|
static void registerCompressionRecipes() {
|
|
for (String name : ArrayUtils.addAll(BlockStorage.types, BlockStorage2.types)) {
|
|
ItemStack item = ItemStack.EMPTY;
|
|
try {
|
|
item = getMaterial(name, 9, Type.INGOT);
|
|
} catch (InvalidParameterException e) {
|
|
try {
|
|
item = getMaterial(name, 9, Type.GEM);
|
|
} catch (InvalidParameterException e2) {
|
|
continue;
|
|
}
|
|
}
|
|
|
|
if (!item.isEmpty()) {
|
|
registerShaped(BlockStorage.getStorageBlockByName(name), "III", "III", "III", 'I', item);
|
|
registerShapeless(item, BlockStorage.getStorageBlockByName(name, 9));
|
|
}
|
|
}
|
|
|
|
for (String name : ArrayUtils.addAll(BlockStorage.types, BlockStorage2.types)) {
|
|
registerShaped(BlockStorage.getStorageBlockByName(name), "AAA", "AAA", "AAA", 'A',
|
|
"ingot" + name.substring(0, 1).toUpperCase() + name.substring(1));
|
|
registerShaped(BlockStorage.getStorageBlockByName(name), "AAA", "AAA", "AAA", 'A',
|
|
"gem" + name.substring(0, 1).toUpperCase() + name.substring(1));
|
|
}
|
|
|
|
for (String name : ItemDustsSmall.types) {
|
|
if (name.equals(ModItems.META_PLACEHOLDER)) {
|
|
continue;
|
|
}
|
|
registerShapeless(getMaterial(name, 4, Type.SMALL_DUST), getMaterialObject(name, Type.DUST));
|
|
registerShapeless(getMaterial(name, Type.DUST), getMaterialObject(name, Type.SMALL_DUST), getMaterialObject(name, Type.SMALL_DUST), getMaterialObject(name, Type.SMALL_DUST), getMaterialObject(name, Type.SMALL_DUST));
|
|
}
|
|
|
|
for (String nuggets : ItemNuggets.types) {
|
|
if (nuggets.equals(ModItems.META_PLACEHOLDER) || nuggets.equalsIgnoreCase("diamond"))
|
|
continue;
|
|
registerShapeless(getMaterial(nuggets, 9, Type.NUGGET), CaseFormat.LOWER_UNDERSCORE.to(CaseFormat.LOWER_CAMEL, "ingot_" + nuggets));
|
|
registerShaped(getMaterial(nuggets, Type.INGOT), "NNN", "NNN", "NNN", 'N', CaseFormat.LOWER_UNDERSCORE.to(CaseFormat.LOWER_CAMEL, "nugget_" + nuggets));
|
|
}
|
|
|
|
registerShapeless(getMaterial("diamond", 9, Type.NUGGET), "gemDiamond");
|
|
registerShaped(getStack(Items.DIAMOND), "NNN", "NNN", "NNN", 'N', "nuggetDiamond");
|
|
}
|
|
|
|
static void registerMixedMetalIngotRecipes() {
|
|
if (!IC2Duplicates.deduplicate()) {
|
|
registerMixedMetal("ingotRefinedIron", "ingotBronze", "ingotTin", 2);
|
|
registerMixedMetal("ingotRefinedIron", "ingotBronze", "ingotZinc", 2);
|
|
|
|
registerMixedMetal("ingotNickel", "ingotBronze", "ingotTin", 3);
|
|
registerMixedMetal("ingotNickel", "ingotBronze", "ingotZinc", 3);
|
|
|
|
registerMixedMetal("ingotNickel", "ingotBronze", "ingotAluminum", 4);
|
|
registerMixedMetal("ingotInvar", "ingotBronze", "ingotTin", 4);
|
|
registerMixedMetal("ingotInvar", "ingotBronze", "ingotZinc", 4);
|
|
|
|
registerMixedMetal("ingotInvar", "ingotBronze", "ingotAluminum", 5);
|
|
registerMixedMetal("ingotTitanium", "ingotBronze", "ingotTin", 5);
|
|
registerMixedMetal("ingotTitanium", "ingotBronze", "ingotZinc", 5);
|
|
registerMixedMetal("ingotTungsten", "ingotBronze", "ingotTin", 5);
|
|
registerMixedMetal("ingotTungsten", "ingotBronze", "ingotZinc", 5);
|
|
|
|
registerMixedMetal("ingotTitanium", "ingotBronze", "ingotAluminum", 6);
|
|
registerMixedMetal("ingotTungsten", "ingotBronze", "ingotAluminum", 6);
|
|
|
|
registerMixedMetal("ingotTungstensteel", "ingotBronze", "ingotTin", 8);
|
|
registerMixedMetal("ingotTungstensteel", "ingotBronze", "ingotZinc", 8);
|
|
|
|
registerMixedMetal("ingotTungstensteel", "ingotBronze", "ingotAluminum", 9);
|
|
}
|
|
}
|
|
|
|
static void registerMixedMetal(String top, String middle, String bottom, int amount) {
|
|
if (top.equals("ingotRefinedIron") && IC2Duplicates.deduplicate()) {
|
|
registerShaped(getMaterial("mixed_metal", amount, Type.INGOT), "TTT", "MMM", "BBB", 'T', getStack(IC2Duplicates.REFINED_IRON), 'M', middle, 'B', bottom);
|
|
} else {
|
|
registerShaped(getMaterial("mixed_metal", amount, Type.INGOT), "TTT", "MMM", "BBB", 'T', top, 'M', middle, 'B', bottom);
|
|
}
|
|
if (middle.equals("ingotBronze")) {
|
|
registerMixedMetal(top, "ingotBrass", bottom, amount);
|
|
}
|
|
if (bottom.equals("ingotAluminum")) {
|
|
registerMixedMetal(top, middle, "ingotAluminium", amount);
|
|
}
|
|
}
|
|
|
|
static void registerShaped(ItemStack output, Object... inputs) {
|
|
CraftingHelper.addShapedOreRecipe(output, inputs);
|
|
}
|
|
|
|
static void registerShapeless(ItemStack output, Object... inputs) {
|
|
CraftingHelper.addShapelessOreRecipe(output, inputs);
|
|
}
|
|
|
|
static void addToolAndArmourRecipes(ItemStack sword,
|
|
ItemStack pickaxe,
|
|
ItemStack axe,
|
|
ItemStack hoe,
|
|
ItemStack spade,
|
|
ItemStack helmet,
|
|
ItemStack chestplate,
|
|
ItemStack leggings,
|
|
ItemStack boots,
|
|
String material) {
|
|
registerShaped(sword, "G", "G", "S", 'S', Items.STICK, 'G', material);
|
|
registerShaped(pickaxe, "GGG", " S ", " S ", 'S', Items.STICK, 'G', material);
|
|
registerShaped(axe, "GG", "GS", " S", 'S', Items.STICK, 'G', material);
|
|
registerShaped(hoe, "GG", " S", " S", 'S', Items.STICK, 'G', material);
|
|
registerShaped(spade, "G", "S", "S", 'S', Items.STICK, 'G', material);
|
|
registerShaped(helmet, "GGG", "G G", 'G', material);
|
|
registerShaped(chestplate, "G G", "GGG", "GGG", 'G', material);
|
|
registerShaped(leggings, "GGG", "G G", "G G", 'G', material);
|
|
registerShaped(boots, "G G", "G G", 'G', material);
|
|
}
|
|
}
|