Adds recycling recipes for some GT parts and hatches. Fixes #780. /* Github Stuff */ [FEATURE] [DETAILS] details = [ "**Adds Recycling Recipes For:**", "LuV+ Parts", "LuV+ Energy Hatches", "4A and 16A Energy Hatches", "Adjustable Transformers", "Substation Hatches", "Laser Hatches", "Misc Batteries", ] [DETAILS] [FIXUP] sha = "226cd449fe4844b2b2c84cebdd6bfaf3cec9a313" newBody = ''' [EXPAND] [[messages]] messageTitle = "Port Tooltips to Groovy (#796)" messageBody = """ [FEATURE] [DETAILS] detail = \"Tooltips are now Localisable!\" [DETAILS] """ [[messages]] messageTitle = "Fix Fluids in JEI (#796)" messageBody = """ [BUG] [DETAILS] details = [ \"Fixes Some Fluids being Items in JEI\", \"Adds Information about Temperature to all Fluids\", ] [DETAILS] """ [EXPAND] ''' [FIXUP] Co-authored-by: Integer Limit <103940576+IntegerLimit@users.noreply.github.com>
108 lines
5.9 KiB
Groovy
108 lines
5.9 KiB
Groovy
import com.nomiceu.nomilabs.util.LabsModeHelper
|
|
import gregtech.api.recipes.ingredients.nbtmatch.NBTCondition
|
|
import gregtech.api.recipes.ingredients.nbtmatch.NBTMatcher
|
|
import gregtech.api.recipes.ingredients.nbtmatch.NBTTagType
|
|
|
|
import static com.nomiceu.nomilabs.groovy.GroovyHelpers.RecyclingHelpers.*
|
|
import static gregtech.api.recipes.RecipeMaps.*
|
|
|
|
/* Adds Recycling Recipes to some GT Items */
|
|
|
|
// 4x and 9x Fluid Hatches
|
|
// Only add these in Hard Mode, in Normal Mode, these are added in Mode-Specific/Normal-Mode/buses.groovy
|
|
if (LabsModeHelper.expert) {
|
|
changeStackRecycling(metaitem('fluid_hatch.import_4x'), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem('fluid_hatch.import_4x.iv'), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem('fluid_hatch.import_9x'), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem('fluid_hatch.import_9x.iv'), ASSEMBLER_RECIPES)
|
|
|
|
changeStackRecycling(metaitem('fluid_hatch.export_4x'), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem('fluid_hatch.export_4x.iv'), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem('fluid_hatch.export_9x'), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem('fluid_hatch.export_9x.iv'), ASSEMBLER_RECIPES)
|
|
}
|
|
|
|
// LuV, ZPM and UV Parts
|
|
var addRecyclingToParts = { String tier ->
|
|
changeStackRecycling(metaitem("electric.motor.${tier}"), ASSEMBLY_LINE_RECIPES)
|
|
changeStackRecycling(metaitem("electric.pump.${tier}"), ASSEMBLY_LINE_RECIPES)
|
|
changeStackRecycling(metaitem("conveyor.module.${tier}"), ASSEMBLY_LINE_RECIPES)
|
|
changeStackRecycling(metaitem("electric.piston.${tier}"), ASSEMBLY_LINE_RECIPES)
|
|
changeStackRecycling(metaitem("robot.arm.${tier}"), ASSEMBLY_LINE_RECIPES)
|
|
changeStackRecycling(metaitem("field.generator.${tier}"), ASSEMBLY_LINE_RECIPES)
|
|
changeStackRecycling(metaitem("emitter.${tier}"), ASSEMBLY_LINE_RECIPES)
|
|
changeStackRecycling(metaitem("sensor.${tier}"), ASSEMBLY_LINE_RECIPES)
|
|
changeStackRecycling(metaitem("fluid.regulator.${tier}"), ASSEMBLER_RECIPES)
|
|
}
|
|
|
|
addRecyclingToParts('luv')
|
|
addRecyclingToParts('zpm')
|
|
addRecyclingToParts('uv')
|
|
|
|
// EV, IV, LuV, ZPM, UV and UHV Misc Energy Hatches
|
|
|
|
var addRecyclingToHatches = { String tier ->
|
|
changeStackRecycling(metaitem("energy_hatch.input_4a.${tier}"), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem("energy_hatch.output_4a.${tier}"), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem("energy_hatch.input_16a.${tier}"), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem("energy_hatch.output_16a.${tier}"), ASSEMBLER_RECIPES)
|
|
|
|
changeStackRecycling(metaitem("transformer.adjustable.${tier}"), ASSEMBLER_RECIPES)
|
|
|
|
changeStackRecycling(metaitem("substation_hatch.input_64a.${tier}"), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem("substation_hatch.output_64a.${tier}"), ASSEMBLER_RECIPES)
|
|
|
|
changeStackRecycling(metaitem("laser_hatch.target_256a.${tier}"), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem("laser_hatch.source_256a.${tier}"), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem("laser_hatch.target_1024a.${tier}"), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem("laser_hatch.source_1024a.${tier}"), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem("laser_hatch.target_4096a.${tier}"), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem("laser_hatch.source_4096a.${tier}"), ASSEMBLER_RECIPES)
|
|
}
|
|
|
|
// EV Hatches (Just 4A Hatches + Adjustable Transformer)
|
|
changeStackRecycling(metaitem('energy_hatch.input_4a.ev'), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem('energy_hatch.output_4a.ev'), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem('transformer.adjustable.ev'), ASSEMBLER_RECIPES)
|
|
|
|
addRecyclingToHatches('iv')
|
|
|
|
// LuV+: Energy Hatch (2a) Needs Recycling Added
|
|
changeStackRecycling(metaitem('energy_hatch.input.luv'), ASSEMBLY_LINE_RECIPES)
|
|
changeStackRecycling(metaitem('energy_hatch.output.luv'), ASSEMBLY_LINE_RECIPES)
|
|
addRecyclingToHatches('luv')
|
|
|
|
changeStackRecycling(metaitem('energy_hatch.input.zpm'), ASSEMBLY_LINE_RECIPES)
|
|
changeStackRecycling(metaitem('energy_hatch.output.zpm'), ASSEMBLY_LINE_RECIPES)
|
|
addRecyclingToHatches('zpm')
|
|
|
|
changeStackRecycling(metaitem('energy_hatch.input.uv'), ASSEMBLY_LINE_RECIPES)
|
|
changeStackRecycling(metaitem('energy_hatch.output.uv'), ASSEMBLY_LINE_RECIPES)
|
|
addRecyclingToHatches('uv')
|
|
|
|
// UHV: Just Energy Input & Output (2a, 4a, 16a), Substation Hatch
|
|
changeStackRecycling(metaitem('energy_hatch.input.uhv'), ASSEMBLY_LINE_RECIPES)
|
|
changeStackRecycling(metaitem('energy_hatch.output.uhv'), ASSEMBLY_LINE_RECIPES)
|
|
|
|
changeStackRecycling(metaitem("energy_hatch.input_4a.uhv"), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem("energy_hatch.output_4a.uhv"), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem("energy_hatch.input_16a.uhv"), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem("energy_hatch.output_16a.uhv"), ASSEMBLER_RECIPES)
|
|
|
|
changeStackRecycling(metaitem("substation_hatch.input_64a.uhv"), ASSEMBLER_RECIPES)
|
|
changeStackRecycling(metaitem("substation_hatch.output_64a.uhv"), ASSEMBLER_RECIPES)
|
|
|
|
// Batteries
|
|
NBTCondition charge = NBTCondition.create(NBTTagType.LONG, 'Charge', 0L)
|
|
|
|
changeStackRecyclingNBT(metaitem('battery.re.ulv.tantalum'), ASSEMBLER_RECIPES, NBTMatcher.NOT_PRESENT_OR_HAS_KEY, charge)
|
|
|
|
changeStackRecyclingNBT(metaitem('energy_crystal'), AUTOCLAVE_RECIPES, NBTMatcher.NOT_PRESENT_OR_HAS_KEY, charge)
|
|
changeStackRecyclingNBT(metaitem('lapotron_crystal'), ASSEMBLER_RECIPES, NBTMatcher.NOT_PRESENT_OR_HAS_KEY, charge)
|
|
|
|
changeStackRecyclingNBT(metaitem('energy.lapotronic_orb'), CIRCUIT_ASSEMBLER_RECIPES, NBTMatcher.NOT_PRESENT_OR_HAS_KEY, charge)
|
|
changeStackRecyclingNBT(metaitem('energy.lapotronic_orb_cluster'), ASSEMBLY_LINE_RECIPES, NBTMatcher.NOT_PRESENT_OR_HAS_KEY, charge)
|
|
changeStackRecyclingNBT(metaitem('energy.module'), ASSEMBLY_LINE_RECIPES, NBTMatcher.NOT_PRESENT_OR_HAS_KEY, charge)
|
|
changeStackRecyclingNBT(metaitem('energy.cluster'), ASSEMBLY_LINE_RECIPES, NBTMatcher.NOT_PRESENT_OR_HAS_KEY, charge)
|
|
changeStackRecyclingNBT(metaitem('max.battery'), ASSEMBLY_LINE_RECIPES, NBTMatcher.NOT_PRESENT_OR_HAS_KEY, charge)
|