Search in sources :

Example 26 with SimpleItemStack

use of gregtech.api.unification.stack.SimpleItemStack in project GregTech by GregTechCE.

the class ProcessingShaping method registerOre.

public void registerOre(UnificationEntry entry, String modName, SimpleItemStack simpleStack) {
    ItemStack stack = simpleStack.asItemStack();
    long materialMass = entry.material.getMass();
    int amount = (int) (entry.orePrefix.materialAmount / M);
    int voltageMultiplier;
    if ((entry.material instanceof MetalMaterial) && ((MetalMaterial) entry.material).blastFurnaceTemperature >= 2800) {
        voltageMultiplier = 64;
    } else {
        voltageMultiplier = 16;
    }
    if (!(amount > 0 && amount <= 64 && entry.orePrefix.materialAmount % M == 0L)) {
        return;
    }
    if (entry.material instanceof MetalMaterial && !entry.material.hasFlag(NO_SMELTING)) {
        if (entry.material.hasFlag(NO_SMASHING)) {
            voltageMultiplier /= 4;
        } else if (entry.orePrefix.name().startsWith(OrePrefix.dust.name())) {
            return;
        }
        MetalMaterial smeltInto = ((MetalMaterial) entry.material).smeltInto;
        if (!OrePrefix.block.isIgnored(smeltInto)) {
            RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(9, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_BLOCK).outputs(OreDictUnifier.get(OrePrefix.block, smeltInto, amount)).duration(10 * amount).EUt(8 * voltageMultiplier).buildAndRegister();
            RecipeMap.ALLOY_SMELTER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(9, stack)).notConsumable(MetaItems.SHAPE_MOLD_BLOCK).outputs(OreDictUnifier.get(OrePrefix.block, smeltInto, amount)).duration(5 * amount).EUt(4 * voltageMultiplier).buildAndRegister();
        }
        if (entry.material != smeltInto) {
            RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_INGOT).outputs(OreDictUnifier.get(OrePrefix.ingot, smeltInto, amount)).duration(10).EUt(4 * voltageMultiplier).buildAndRegister();
        }
        RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_PLATE).outputs(OreDictUnifier.get(OrePrefix.plate, smeltInto, amount)).duration((int) Math.max(materialMass * amount, amount)).EUt(8 * voltageMultiplier).buildAndRegister();
        if (amount * 2 <= 64) {
            RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_ROD).outputs(OreDictUnifier.get(OrePrefix.stick, smeltInto, amount * 2)).duration((int) Math.max(materialMass * 2L * amount, amount)).EUt(6 * voltageMultiplier).buildAndRegister();
        }
        if (amount * 2 <= 64) {
            RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_WIRE).outputs(OreDictUnifier.get(OrePrefix.wireGt01, smeltInto, amount * 2)).duration((int) Math.max(materialMass * 2L * amount, amount)).EUt(6 * voltageMultiplier).buildAndRegister();
        }
        if (amount * 8 <= 64) {
            RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_BOLT).outputs(OreDictUnifier.get(OrePrefix.bolt, smeltInto, amount * 8)).duration((int) Math.max(materialMass * 2L * amount, amount)).EUt(8 * voltageMultiplier).buildAndRegister();
        }
        if (amount * 4 <= 64) {
            RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_RING).outputs(OreDictUnifier.get(OrePrefix.ring, smeltInto, amount * 4)).duration((int) Math.max(materialMass * 2L * amount, amount)).EUt(6 * voltageMultiplier).buildAndRegister();
            if (!entry.material.hasFlag(NO_SMASHING)) {
                ModHandler.addShapedRecipe("ring_" + entry.material, OreDictUnifier.get(OrePrefix.ring, entry.material), "h ", " X", 'X', new UnificationEntry(OrePrefix.stick, entry.material));
            }
        }
        RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(2, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_SWORD).outputs(OreDictUnifier.get(OrePrefix.toolHeadSword, smeltInto, amount)).duration((int) Math.max(materialMass * 2L * amount, amount)).EUt(8 * voltageMultiplier).buildAndRegister();
        RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(3, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_PICKAXE).outputs(OreDictUnifier.get(OrePrefix.toolHeadPickaxe, smeltInto, amount)).duration((int) Math.max(materialMass * 3L * amount, amount)).EUt(8 * voltageMultiplier).buildAndRegister();
        RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_SHOVEL).outputs(OreDictUnifier.get(OrePrefix.toolHeadShovel, smeltInto, amount)).duration((int) Math.max(materialMass * amount, amount)).EUt(8 * voltageMultiplier).buildAndRegister();
        RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(3, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_AXE).outputs(OreDictUnifier.get(OrePrefix.toolHeadAxe, smeltInto, amount)).duration((int) Math.max(materialMass * 3L * amount, amount)).EUt(8 * voltageMultiplier).buildAndRegister();
        RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(2, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_HOE).outputs(OreDictUnifier.get(OrePrefix.toolHeadHoe, smeltInto, amount)).duration((int) Math.max(materialMass * 2L * amount, amount)).EUt(8 * voltageMultiplier).buildAndRegister();
        RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(6, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_HAMMER).outputs(OreDictUnifier.get(OrePrefix.toolHeadHammer, smeltInto, amount)).duration((int) Math.max(materialMass * 6L * amount, amount)).EUt(8 * voltageMultiplier).buildAndRegister();
        RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(2, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_FILE).outputs(OreDictUnifier.get(OrePrefix.toolHeadFile, smeltInto, amount)).duration((int) Math.max(materialMass * 2L * amount, amount)).EUt(8 * voltageMultiplier).buildAndRegister();
        RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(2, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_SAW).outputs(OreDictUnifier.get(OrePrefix.toolHeadSaw, smeltInto, amount)).duration((int) Math.max(materialMass * 2L * amount, amount)).EUt(8 * voltageMultiplier).buildAndRegister();
        RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(4, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_GEAR).outputs(OreDictUnifier.get(OrePrefix.gear, smeltInto, amount)).duration((int) Math.max(materialMass * 5L * amount, amount)).EUt(8 * voltageMultiplier).buildAndRegister();
        RecipeMap.ALLOY_SMELTER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(2, stack)).notConsumable(MetaItems.SHAPE_MOLD_PLATE).outputs(OreDictUnifier.get(OrePrefix.plate, smeltInto, amount)).duration((int) Math.max(materialMass * 2L * amount, amount)).EUt(2 * voltageMultiplier).buildAndRegister();
        RecipeMap.ALLOY_SMELTER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(8, stack)).notConsumable(MetaItems.SHAPE_MOLD_GEAR).outputs(OreDictUnifier.get(OrePrefix.gear, smeltInto, amount)).duration((int) Math.max(materialMass * 10L * amount, amount)).EUt(2 * voltageMultiplier).buildAndRegister();
        if (entry.material == Materials.Steel) {
        // if (amount * 2 <= 64) {
        // RecipeMap.EXTRUDER_RECIPES.recipeBuilder()
        // .inputs(GTUtility.copyAmount(1, stack))
        // .notConsumable(MetaItems.SHAPE_EXTRUDER_CASING)
        // .outputs(ModHandler.IC2.getIC2Item(ItemName.casing, CasingResourceType.steel, amount * 2))
        // .duration(amount * 32)
        // .EUt(3 * voltageMultiplier)
        // .buildAndRegister();
        // }
        // if (amount * 2 <= 64) {
        // RecipeMap.ALLOY_SMELTER_RECIPES.recipeBuilder()
        // .inputs(GTUtility.copyAmount(2, stack))
        // .notConsumable(MetaItems.SHAPE_MOLD_CASING)
        // .outputs(ModHandler.IC2.getIC2Item(ItemName.casing, CasingResourceType.steel, amount * 3))
        // .duration(amount * 128)
        // .EUt(voltageMultiplier)
        // .buildAndRegister();
        // }
        } else if (entry.material == Materials.Iron || entry.material == Materials.WroughtIron) {
            // }
            if (amount * 31 <= 64) {
                RecipeMap.ALLOY_SMELTER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(31, stack)).notConsumable(MetaItems.SHAPE_MOLD_ANVIL).outputs(new ItemStack(Blocks.ANVIL, 1, 0)).duration(amount * 512).EUt(4 * voltageMultiplier).buildAndRegister();
            }
        } else if (entry.material == Materials.Tin) {
        // RecipeMap.EXTRUDER_RECIPES.recipeBuilder()
        // .inputs(GTUtility.copyAmount(2, stack))
        // .notConsumable(MetaItems.SHAPE_EXTRUDER_CELL)
        // .outputs(ModHandler.IC2.getIC2Item(ItemName.fluid_cell, amount))
        // .duration(amount * 128)
        // .EUt(32)
        // .buildAndRegister();
        // 
        // if (amount * 2 <= 64) {
        // RecipeMap.EXTRUDER_RECIPES.recipeBuilder()
        // .inputs(GTUtility.copyAmount(1, stack))
        // .notConsumable(MetaItems.SHAPE_EXTRUDER_CASING)
        // .outputs(ModHandler.IC2.getIC2Item(ItemName.casing, CasingResourceType.tin, amount * 2))
        // .duration(amount * 32)
        // .EUt(3 * voltageMultiplier)
        // .buildAndRegister();
        // 
        // }
        // if (amount * 2 <= 64) {
        // RecipeMap.ALLOY_SMELTER_RECIPES.recipeBuilder()
        // .inputs(GTUtility.copyAmount(2, stack))
        // .notConsumable(MetaItems.SHAPE_MOLD_CASING)
        // .outputs(ModHandler.IC2.getIC2Item(ItemName.casing, CasingResourceType.tin, amount * 3))
        // .duration(amount * 128)
        // .EUt(voltageMultiplier)
        // .buildAndRegister();
        // }
        } else if (entry.material == Materials.Lead) {
        // if (amount * 2 <= 64) {
        // RecipeMap.EXTRUDER_RECIPES.recipeBuilder()
        // .inputs(GTUtility.copyAmount(1, stack))
        // .notConsumable(MetaItems.SHAPE_EXTRUDER_CASING)
        // .outputs(ModHandler.IC2.getIC2Item(ItemName.casing, CasingResourceType.lead, amount * 2))
        // .duration(amount * 32)
        // .EUt(3 * voltageMultiplier)
        // .buildAndRegister();
        // }
        // if (amount * 2 <= 64) {
        // RecipeMap.ALLOY_SMELTER_RECIPES.recipeBuilder()
        // .inputs(GTUtility.copyAmount(2, stack))
        // .notConsumable(MetaItems.SHAPE_MOLD_CASING)
        // .outputs(ModHandler.IC2.getIC2Item(ItemName.casing, CasingResourceType.lead, amount * 3))
        // .duration(amount * 128)
        // .EUt(voltageMultiplier)
        // .buildAndRegister();
        // }
        } else if (entry.material == Materials.Copper || entry.material == Materials.AnnealedCopper) {
        // if (amount * 2 <= 64) {
        // RecipeMap.EXTRUDER_RECIPES.recipeBuilder()
        // .inputs(GTUtility.copyAmount(1, stack))
        // .notConsumable(MetaItems.SHAPE_EXTRUDER_CASING)
        // .outputs(ModHandler.IC2.getIC2Item(ItemName.casing, CasingResourceType.copper, amount * 2))
        // .duration(amount * 32)
        // .EUt(3 * voltageMultiplier)
        // .buildAndRegister();
        // }
        // if (amount * 2 <= 64) {
        // RecipeMap.ALLOY_SMELTER_RECIPES.recipeBuilder()
        // .inputs(GTUtility.copyAmount(2, stack))
        // .notConsumable(MetaItems.SHAPE_MOLD_CASING)
        // .outputs(ModHandler.IC2.getIC2Item(ItemName.casing, CasingResourceType.copper, amount * 3))
        // .duration(amount * 128)
        // .EUt(voltageMultiplier)
        // .buildAndRegister();
        // }
        } else if (entry.material == Materials.Bronze) {
        // if (amount * 2 <= 64) {
        // RecipeMap.EXTRUDER_RECIPES.recipeBuilder()
        // .inputs(GTUtility.copyAmount(1, stack))
        // .notConsumable(MetaItems.SHAPE_EXTRUDER_CASING)
        // .outputs(ModHandler.IC2.getIC2Item(ItemName.casing, CasingResourceType.bronze, amount * 2))
        // .duration(amount * 32)
        // .EUt(3 * voltageMultiplier)
        // .buildAndRegister();
        // }
        // if (amount * 2 <= 64) {
        // RecipeMap.ALLOY_SMELTER_RECIPES.recipeBuilder()
        // .inputs(GTUtility.copyAmount(2, stack))
        // .notConsumable(MetaItems.SHAPE_MOLD_CASING)
        // .outputs(ModHandler.IC2.getIC2Item(ItemName.casing, CasingResourceType.bronze, amount * 3))
        // .duration(amount * 128)
        // .EUt(voltageMultiplier)
        // .buildAndRegister();
        // }
        } else if (entry.material == Materials.Gold) {
        // if (amount * 2 <= 64) {
        // RecipeMap.EXTRUDER_RECIPES.recipeBuilder()
        // .inputs(GTUtility.copyAmount(1, stack))
        // .notConsumable(MetaItems.SHAPE_EXTRUDER_CASING)
        // .outputs(ModHandler.IC2.getIC2Item(ItemName.casing, CasingResourceType.gold, amount * 2))
        // .duration(amount * 32)
        // .EUt(3 * voltageMultiplier)
        // .buildAndRegister();
        // }
        // if (amount * 2 <= 64) {
        // RecipeMap.ALLOY_SMELTER_RECIPES.recipeBuilder()
        // .inputs(GTUtility.copyAmount(2, stack))
        // .notConsumable(MetaItems.SHAPE_MOLD_CASING)
        // .outputs(ModHandler.IC2.getIC2Item(ItemName.casing, CasingResourceType.gold, amount * 3))
        // .duration(amount * 128)
        // .EUt(voltageMultiplier)
        // .buildAndRegister();
        // }
        }
    } else if (entry.material == Materials.Glass) {
        RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_PLATE).outputs(OreDictUnifier.get(OrePrefix.plate, entry.material, amount)).duration((int) Math.max(materialMass * amount, amount)).EUt(8 * voltageMultiplier).buildAndRegister();
        RecipeMap.EXTRUDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).notConsumable(MetaItems.SHAPE_EXTRUDER_BOTTLE).outputs(new ItemStack(Items.GLASS_BOTTLE, 1)).duration(amount * 32).EUt(16).buildAndRegister();
        RecipeMap.ALLOY_SMELTER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).notConsumable(MetaItems.SHAPE_MOLD_BOTTLE).outputs(new ItemStack(Items.GLASS_BOTTLE, 1)).duration(amount * 64).EUt(4).buildAndRegister();
    }
}
Also used : UnificationEntry(gregtech.api.unification.stack.UnificationEntry) SimpleItemStack(gregtech.api.unification.stack.SimpleItemStack) ItemStack(net.minecraft.item.ItemStack) MetalMaterial(gregtech.api.unification.material.type.MetalMaterial)

Example 27 with SimpleItemStack

use of gregtech.api.unification.stack.SimpleItemStack in project GregTech by GregTechCE.

the class ProcessingStick method registerOre.

public void registerOre(UnificationEntry entry, String modName, SimpleItemStack simpleStack) {
    ItemStack stack = simpleStack.asItemStack();
    switch(entry.orePrefix) {
        case stick:
            if (!entry.material.hasFlag(DustMaterial.MatFlags.NO_WORKING)) {
                if (entry.material instanceof SolidMaterial) {
                    RecipeMap.LATHE_RECIPES.recipeBuilder().inputs(entry.material.hasFlag(GemMaterial.MatFlags.CRYSTALLISABLE) ? OreDictUnifier.get(OrePrefix.gem, entry.material) : OreDictUnifier.get(OrePrefix.ingot, entry.material)).outputs(OreDictUnifier.get(OrePrefix.stick, entry.material), OreDictUnifier.get(OrePrefix.dustSmall, ((SolidMaterial) entry.material).macerateInto, 2)).duration((int) Math.max(entry.material.getMass() * 5L, 1L)).EUt(16).buildAndRegister();
                }
                RecipeMap.CUTTER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.bolt, entry.material, 4)).duration((int) Math.max(entry.material.getMass() * 2L, 1L)).EUt(4).buildAndRegister();
                ModHandler.addShapedRecipe("stick_fls_" + entry.material, OreDictUnifier.get(OrePrefix.stick, entry.material, 2), "s", "X", 'X', new UnificationEntry(OrePrefix.stickLong, entry.material));
                ModHandler.addShapedRecipe("stick_" + entry.material, OreDictUnifier.get(OrePrefix.stick, entry.material, 1), "f ", " X", 'X', new UnificationEntry(OrePrefix.ingot, entry.material));
            }
            if (!entry.material.hasFlag(DustMaterial.MatFlags.NO_SMASHING)) {
                RecipeMap.HAMMER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(2, stack)).outputs(OreDictUnifier.get(OrePrefix.stickLong, entry.material)).duration((int) Math.max(entry.material.getMass(), 1L)).EUt(16).buildAndRegister();
            }
            break;
        case stickLong:
            if (!entry.material.hasFlag(DustMaterial.MatFlags.NO_WORKING)) {
                RecipeMap.CUTTER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.stick, entry.material, 2)).duration((int) Math.max(entry.material.getMass(), 1L)).EUt(4).buildAndRegister();
                ModHandler.addShapedRecipe("lstick_ffg_" + entry.material, OreDictUnifier.get(OrePrefix.stickLong, entry.material, 1), "sf", "G ", 'G', new UnificationEntry(OrePrefix.gemFlawless, entry.material));
                ModHandler.addShapedRecipe("lstick_feg_" + entry.material, OreDictUnifier.get(OrePrefix.stickLong, entry.material, 2), "sf", "G ", 'G', new UnificationEntry(OrePrefix.gemExquisite, entry.material));
            }
            if (!entry.material.hasFlag(DustMaterial.MatFlags.NO_SMASHING)) {
                RecipeMap.BENDER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.spring, entry.material)).duration(200).EUt(16).buildAndRegister();
                ModHandler.addShapedRecipe("lstick_fs_", OreDictUnifier.get(OrePrefix.stickLong, entry.material), "ShS", 'S', new UnificationEntry(OrePrefix.stick, entry.material));
            }
            break;
    }
}
Also used : SolidMaterial(gregtech.api.unification.material.type.SolidMaterial) UnificationEntry(gregtech.api.unification.stack.UnificationEntry) ItemStack(net.minecraft.item.ItemStack) SimpleItemStack(gregtech.api.unification.stack.SimpleItemStack)

Example 28 with SimpleItemStack

use of gregtech.api.unification.stack.SimpleItemStack in project GregTech by GregTechCE.

the class ProcessingStone method registerOre.

public void registerOre(UnificationEntry entry, String modName, SimpleItemStack simpleStack) {
    ItemStack stack = simpleStack.asItemStack();
    switch(entry.orePrefix) {
        case stoneCobble:
            RecipeMap.ASSEMBLER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack), OreDictUnifier.get(OrePrefix.stick, Materials.Wood)).outputs(new ItemStack(Blocks.LEVER, 1)).duration(400).EUt(1).buildAndRegister();
            RecipeMap.ASSEMBLER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(8, stack)).circuitMeta(8).outputs(new ItemStack(Blocks.FURNACE, 1)).duration(400).EUt(4).buildAndRegister();
            RecipeMap.ASSEMBLER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(7, stack), OreDictUnifier.get(OrePrefix.dust, Materials.Redstone)).outputs(new ItemStack(Blocks.DROPPER, 1)).duration(400).EUt(4).buildAndRegister();
            RecipeMap.ASSEMBLER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(7, stack), new ItemStack(Items.BOW, 1, 0)).fluidInputs(Materials.Redstone.getFluid(144)).outputs(new ItemStack(Blocks.DISPENSER, 1)).duration(400).EUt(4).buildAndRegister();
            break;
        case stoneSmooth:
            RecipeMap.ASSEMBLER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).circuitMeta(1).outputs(new ItemStack(Blocks.STONE_BUTTON, 1)).duration(100).EUt(4).buildAndRegister();
            RecipeMap.ASSEMBLER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(2, stack)).circuitMeta(2).outputs(new ItemStack(Blocks.STONE_PRESSURE_PLATE, 1)).duration(200).EUt(4).buildAndRegister();
            break;
        case stone:
            if (entry.material == null) {
                RecipeMap.ASSEMBLER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(3, stack), new ItemStack(Blocks.REDSTONE_TORCH, 2)).fluidInputs(Materials.Redstone.getFluid(144)).outputs(new ItemStack(Items.REPEATER, 1)).duration(100).EUt(4).buildAndRegister();
            } else if (entry.material == Materials.Endstone) {
                RecipeMap.MACERATOR_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.dustImpure, Materials.Endstone, 1)).chancedOutput(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Tungsten, 1), 500).buildAndRegister();
            } else if (entry.material == Materials.Netherrack) {
                RecipeMap.MACERATOR_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.dustImpure, Materials.Netherrack, 1)).chancedOutput(OreDictUnifier.get(OrePrefix.nugget, Materials.Gold, 1), 500).buildAndRegister();
            } else if (entry.material == Materials.Obsidian) {
                RecipeMap.ASSEMBLER_RECIPES.recipeBuilder().inputs(OreDictUnifier.get(OrePrefix.dust, Materials.Redstone), GTUtility.copyAmount(5, stack)).fluidInputs(Materials.Glass.getFluid(L / 2)).outputs(ModHandler.getModItem("Forestry", "thermionicTubes", 4, 6)).duration(64).EUt(32).buildAndRegister();
                RecipeMap.ASSEMBLER_RECIPES.recipeBuilder().inputs(OreDictUnifier.get(OrePrefix.gem, Materials.NetherStar), GTUtility.copyAmount(3, stack)).fluidInputs(Materials.Glass.getFluid(720)).outputs(new ItemStack(Blocks.BEACON, 1, 0)).duration(32).EUt(16).buildAndRegister();
                RecipeMap.ASSEMBLER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(8, stack), OreDictUnifier.get(OrePrefix.gem, Materials.EnderEye)).outputs(new ItemStack(Blocks.ENDER_CHEST, 1)).duration(400).EUt(4).buildAndRegister();
                RecipeMap.CUTTER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.plate, entry.material, 1)).duration(200).EUt(32).buildAndRegister();
            } else if (entry.material == Materials.Concrete) {
                RecipeMap.MACERATOR_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.dust, entry.material)).buildAndRegister();
                RecipeMap.CUTTER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.plate, entry.material, 1)).duration(200).EUt(32).buildAndRegister();
            } else if (entry.material == Materials.Soapstone) {
                RecipeMap.MACERATOR_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.dustImpure, Materials.Talc, 1)).chancedOutput(OreDictUnifier.get(OrePrefix.dustTiny, Materials.Chromite, 1), 1000).buildAndRegister();
            } else if (entry.material == Materials.Redrock || entry.material == Materials.Marble || entry.material == Materials.Basalt || entry.material == Materials.Quartzite) {
                RecipeMap.MACERATOR_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.dustImpure, entry.material, 1)).chancedOutput(OreDictUnifier.get(OrePrefix.dust, entry.material, 1), 1000).buildAndRegister();
            } else if (entry.material == Materials.Flint) {
                RecipeMap.MACERATOR_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.dustImpure, entry.material, 2)).chancedOutput(new ItemStack(Items.FLINT, 1), 5000).buildAndRegister();
            } else if (entry.material == Materials.GraniteBlack) {
                RecipeMap.CUTTER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.plate, entry.material, 1)).duration(200).EUt(32).buildAndRegister();
                RecipeMap.MACERATOR_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.dustImpure, entry.material, 1)).chancedOutput(OreDictUnifier.get(OrePrefix.dust, Materials.Thorium, 1), 100).buildAndRegister();
            } else if (entry.material == Materials.GraniteRed) {
                RecipeMap.CUTTER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.plate, entry.material, 1)).duration(200).EUt(32).buildAndRegister();
                RecipeMap.MACERATOR_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.dustImpure, entry.material, 1)).chancedOutput(OreDictUnifier.get(OrePrefix.dustSmall, Materials.Uranium, 1), 100).buildAndRegister();
                RecipeMap.CUTTER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.plate, entry.material, 1)).duration(200).EUt(32).buildAndRegister();
                RecipeMap.MACERATOR_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.dustImpure, entry.material, 1)).chancedOutput(OreDictUnifier.get(OrePrefix.dustSmall, Materials.Stone, 1), 100).buildAndRegister();
            } else if (entry.material == Materials.Andesite || entry.material == Materials.Diorite) {
                RecipeMap.CUTTER_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.plate, entry.material, 1)).duration(200).EUt(32).buildAndRegister();
                RecipeMap.MACERATOR_RECIPES.recipeBuilder().inputs(GTUtility.copyAmount(1, stack)).outputs(OreDictUnifier.get(OrePrefix.dustImpure, entry.material, 1)).chancedOutput(OreDictUnifier.get(OrePrefix.dustSmall, Materials.Stone, 1), 100).buildAndRegister();
            }
            break;
    }
}
Also used : SimpleItemStack(gregtech.api.unification.stack.SimpleItemStack) ItemStack(net.minecraft.item.ItemStack)

Aggregations

SimpleItemStack (gregtech.api.unification.stack.SimpleItemStack)28 ItemStack (net.minecraft.item.ItemStack)25 UnificationEntry (gregtech.api.unification.stack.UnificationEntry)11 DustMaterial (gregtech.api.unification.material.type.DustMaterial)9 SolidMaterial (gregtech.api.unification.material.type.SolidMaterial)8 GemMaterial (gregtech.api.unification.material.type.GemMaterial)6 MaterialStack (gregtech.api.unification.stack.MaterialStack)6 Nullable (javax.annotation.Nullable)6 MetalMaterial (gregtech.api.unification.material.type.MetalMaterial)5 ItemMaterialInfo (gregtech.api.unification.stack.ItemMaterialInfo)5 OrePrefix (gregtech.api.unification.ore.OrePrefix)4 CaseFormat (com.google.common.base.CaseFormat)3 Joiner (com.google.common.base.Joiner)3 ImmutableList (com.google.common.collect.ImmutableList)3 M (gregtech.api.GTValues.M)3 FluidMaterial (gregtech.api.unification.material.type.FluidMaterial)3 Material (gregtech.api.unification.material.type.Material)3 java.util (java.util)3 MinecraftForge (net.minecraftforge.common.MinecraftForge)3 SubscribeEvent (net.minecraftforge.fml.common.eventhandler.SubscribeEvent)3