big refactor of a lot of the recipe files!

This commit is contained in:
Pyritie 2025-12-02 19:12:36 +00:00
parent b09b3215a3
commit 1545f19ce6
103 changed files with 7701 additions and 7640 deletions

View file

@ -0,0 +1,27 @@
"use strict";
function registerTFGMoonRecipes(event) {
// Cryo Fluix
event.recipes.gtceu.vacuum_freezer('gtceu:cryo_fluix')
.inputFluids(Fluid.of('gtceu:helium_3', 1000))
.inputFluids(Fluid.of('tfg:fluix', 144))
.outputFluids(Fluid.of('tfg:cryogenized_fluix', 576))
.duration(30 * 20)
.EUt(GTValues.VA[GTValues.MV])
.dimension('ad_astra:moon')
event.recipes.gtceu.fluid_heater('tfg:cryo_fluix')
.inputFluids(Fluid.of('tfg:cryogenized_fluix', 576))
.outputFluids(Fluid.of('tfg:fluix', 144))
.duration(20 * 5)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.autoclave('tfg:cryo_fluix_pearl')
.inputFluids(Fluid.of('tfg:cryogenized_fluix', 576))
.itemInputs('tfg:vitrified_pearl')
.itemOutputs('tfg:cryo_fluix_pearl')
.duration(300)
.EUt(GTValues.VA[GTValues.EV])
.cleanroom(CleanroomType.CLEANROOM)
}

View file

@ -0,0 +1,90 @@
"use strict";
function registerTFGMoonPlantRecipes(event) {
// Plants - Can't use the default builder here because fertiliser is much harder to get on the moon,
// and we're using helium-3 as the fertiliser
// Chorus
event.recipes.gtceu.greenhouse('tfg:chorus')
.notConsumable('8x tfg:lunar_chorus_flower')
.itemOutputs('64x minecraft:chorus_fruit')
.chancedOutput('8x tfg:lunar_chorus_flower', 750, 0)
.chancedOutput('8x tfg:lunar_chorus_flower', 500, 0)
.chancedOutput('8x tfg:lunar_chorus_flower', 750, 0)
.duration(36000) // 30 mins
.circuit(1)
.EUt(GTValues.VA[GTValues.MV])
.dimension('ad_astra:moon')
event.recipes.gtceu.greenhouse('tfg:chorus_helium')
.notConsumable('8x tfg:lunar_chorus_flower')
.inputFluids(Fluid.of('gtceu:helium_3', 2000))
.itemOutputs('64x minecraft:chorus_fruit')
.chancedOutput('8x tfg:lunar_chorus_flower', 4000, 0)
.chancedOutput('8x tfg:lunar_chorus_flower', 3000, 0)
.chancedOutput('8x tfg:lunar_chorus_flower', 4000, 0)
.duration(12000) // 10 mins
.circuit(2)
.EUt(GTValues.VA[GTValues.MV])
.dimension('ad_astra:moon')
// Replace the built-in greg one to add a circuit
event.recipes.gtceu.fermenter('fermented_biomass')
.inputFluids(Fluid.of('gtceu:biomass', 100))
.outputFluids(Fluid.of('gtceu:fermented_biomass', 100))
.circuit(1)
.duration(150)
.EUt(2)
event.recipes.gtceu.fermenter('tfg:chorus')
.itemInputs('minecraft:chorus_fruit')
.inputFluids(Fluid.of('gtceu:biomass', 20))
.chancedOutput('ae2:ender_dust', 100, 0)
.outputFluids(Fluid.of('gtceu:nitrogen', 1000))
.circuit(2)
.duration(5 * 20)
.EUt(GTValues.VA[GTValues.MV])
.dimension('ad_astra:moon')
event.recipes.gtceu.fermenter('tfg:chorus_flower')
.itemInputs('tfg:lunar_chorus_flower')
.inputFluids(Fluid.of('gtceu:biomass', 20))
.chancedOutput('ae2:ender_dust', 100, 0)
.outputFluids(Fluid.of('gtceu:nitrogen', 1000))
.circuit(2)
.duration(5 * 20)
.EUt(GTValues.VA[GTValues.MV])
.dimension('ad_astra:moon')
// Lightblooms
event.recipes.gtceu.greenhouse('tfg:lightbloom')
.notConsumable('8x minecraft:twisting_vines')
.itemOutputs('16x minecraft:twisting_vines')
.chancedOutput('minecraft:pearlescent_froglight', 2500, 0)
.chancedOutput('minecraft:verdant_froglight', 2500, 0)
.chancedOutput('minecraft:ochre_froglight', 2500, 0)
.duration(36000) // 30 mins
.circuit(1)
.EUt(GTValues.VA[GTValues.LV])
.dimension('ad_astra:moon')
event.recipes.gtceu.greenhouse('tfg:lightbloom_helium')
.notConsumable('8x minecraft:twisting_vines')
.inputFluids(Fluid.of('gtceu:helium_3', 2000))
.itemOutputs('16x minecraft:twisting_vines')
.chancedOutput('minecraft:pearlescent_froglight', 3500, 0)
.chancedOutput('minecraft:verdant_froglight', 3500, 0)
.chancedOutput('minecraft:ochre_froglight', 3500, 0)
.duration(12000) // 30 mins
.circuit(2)
.EUt(GTValues.VA[GTValues.LV])
.dimension('ad_astra:moon')
event.recipes.gtceu.brewery('biomass_from_twisting_vines')
.itemInputs('minecraft:twisting_vines')
.inputFluids("#tfg:clean_water 20")
.outputFluids(Fluid.of('gtceu:biomass', 20))
.duration(50)
.EUt(3)
}

View file

@ -0,0 +1,144 @@
"use strict";
function registerTFGMoonRegolithRecipes(event) {
//#region Moon Harvester
event.recipes.gtceu.moon_dust_harvester('tfg:lunar_assurine_harvester')
.biome('tfg:moon/lunar_asurine_dense')
.itemOutputsRanged('#forge:dusts/certus_regolith', 1, 5)
.duration(20 * 80)
.EUt(GTValues.VA[GTValues.LV])
.circuit(1)
event.recipes.gtceu.moon_dust_harvester('tfg:lunar_chorus_dense')
.biome('tfg:moon/lunar_chorus_dense')
.itemOutputsRanged('#forge:dusts/goethe_regolith', 1, 5)
.duration(20 * 80)
.EUt(GTValues.VA[GTValues.LV])
.circuit(2)
event.recipes.gtceu.moon_dust_harvester('tfg:lunar_corals_dense')
.biome('tfg:moon/lunar_corals_dense')
.itemOutputsRanged('#forge:dusts/bright_regolith', 1, 5)
.duration(20 * 80)
.EUt(GTValues.VA[GTValues.LV])
.circuit(3)
event.recipes.gtceu.moon_dust_harvester('tfg:lunar_lights_dense')
.biome('tfg:moon/lunar_lights_dense')
.itemOutputsRanged('#forge:dusts/cassiterite_regolith', 1, 5)
.duration(20 * 80)
.EUt(GTValues.VA[GTValues.LV])
.circuit(4)
//#endregion
//#region Regolith Vapor Processing
event.recipes.gtceu.mixer('tfg:regolith_slurry_suspension')
.itemInputs('ad_astra:moon_sand', 'tfg:dry_ice')
.itemOutputs('#forge:dusts/regolith_mush')
.dimension('ad_astra:moon')
.duration(20 * 60)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.chemical_bath('tfg:regolith_vapor')
.itemInputs('#forge:dusts/regolith_mush')
.inputFluids('gtceu:nitrogen 1000')
.itemOutputs('#forge:dusts/silicon_dioxide')
.outputFluids('gtceu:regolith_vapor 1000')
.dimension('ad_astra:moon')
.duration(20 * 28)
.EUt(GTValues.VHA[GTValues.LV])
//#endregion
//#region Making Dusty Ores
const $ChanceLogic = Java.loadClass('com.gregtechceu.gtceu.api.recipe.chance.logic.ChanceLogic')
event.recipes.gtceu.chemical_reactor('tfg:dusty_certus_reactor')
.itemInputs('#forge:dusts/certus_regolith')
.inputFluids('gtceu:regolith_vapor 100')
.itemOutputs('gtceu:dusty_raw_certus_quartz')
.dimension('ad_astra:moon')
.duration(20 * 68)
.EUt(GTValues.VHA[GTValues.ULV])
event.recipes.gtceu.chemical_reactor('tfg:dusty_goethite_reactor')
.itemInputs('#forge:dusts/goethe_regolith')
.inputFluids('gtceu:regolith_vapor 100')
.itemOutputs('gtceu:dusty_raw_goethite')
.dimension('ad_astra:moon')
.duration(20 * 68)
.EUt(GTValues.VHA[GTValues.ULV])
event.recipes.gtceu.chemical_reactor('tfg:dusty_shiny_reactor')
.itemInputs('#forge:dusts/bright_regolith')
.inputFluids('gtceu:regolith_vapor 100')
.chancedItemOutputLogic($ChanceLogic.XOR)
.chancedOutput('gtceu:dusty_raw_diamond', 2000, 0)
.chancedOutput('gtceu:dusty_raw_gold', 8000, 0)
.dimension('ad_astra:moon')
.duration(20 * 68)
.EUt(GTValues.VHA[GTValues.ULV])
event.recipes.gtceu.chemical_reactor('tfg:dusty_cassiterite_reactor')
.itemInputs('#forge:dusts/cassiterite_regolith')
.inputFluids('gtceu:regolith_vapor 100')
.itemOutputs('gtceu:dusty_raw_cassiterite')
.dimension('ad_astra:moon')
.duration(20 * 68)
.EUt(GTValues.VHA[GTValues.ULV])
//#endregion
//#region Basic dusty ore centrifuging
// These have special recipes
const DUSTY_ORE_EXCEPTIONS = [
GTMaterials.Goethite,
GTMaterials.Cassiterite,
GTMaterials.Bauxite
]
// Otherwise everything else just centrifuges into its dust version
forEachMaterial(material => {
if (DUSTY_ORE_EXCEPTIONS.indexOf(material) >= 0)
return;
const dustyOre = ChemicalHelper.get(TFGTagPrefix.dustyRawOre, material, 1)
const dust = ChemicalHelper.get(TagPrefix.dust, material, 1)
if (dustyOre !== null && dust !== null) {
event.recipes.gtceu.centrifuge(`tfg:dusty_to_dust_${material.getName()}`)
.itemInputs(dustyOre)
.itemOutputs(dust)
.duration(20 * 45)
.EUt(GTValues.VA[GTValues.MV])
}
})
event.recipes.gtceu.centrifuge('tfg:dusty_to_dust_goethite')
.itemInputs('#forge:dusty_raw_materials/goethite')
.chancedItemOutputLogic($ChanceLogic.XOR)
.chancedOutput('#forge:dusts/iron', 5000, 0)
.chancedOutput('#forge:dusts/copper', 5000, 0)
.duration(20 * 45)
.EUt(GTValues.VA[GTValues.MV])
event.recipes.gtceu.centrifuge('tfg:dusty_to_dust_bauxite')
.itemInputs('#forge:dusty_raw_materials/bauxite')
.itemOutputs('#forge:dusts/aluminium')
.duration(20 * 45)
.EUt(GTValues.VA[GTValues.MV])
event.recipes.gtceu.centrifuge('tfg:dusty_to_dust_tin')
.itemInputs('#forge:dusty_raw_materials/cassiterite')
.itemOutputs('#forge:dusts/tin')
.duration(20 * 45)
.EUt(GTValues.VA[GTValues.MV])
// #endregion
}