From 5fd8d896eb6f1c2ed96ee4b0a05146b09ee5c297 Mon Sep 17 00:00:00 2001 From: Pyritie Date: Mon, 30 Jun 2025 19:14:31 +0100 Subject: [PATCH] replaced all our water input fluids with a tag, so river water works too --- kubejs/server_scripts/ae2/recipes.js | 8 +- kubejs/server_scripts/firmaciv/recipes.js | 2 +- kubejs/server_scripts/firmalife/recipes.js | 2 +- kubejs/server_scripts/gregtech/recipes.js | 30 ++-- kubejs/server_scripts/gregtech/utility.js | 4 +- kubejs/server_scripts/minecraft/recipes.js | 14 +- kubejs/server_scripts/rnr/recipes.js | 2 +- kubejs/server_scripts/tfc/recipes.dirt.js | 2 +- kubejs/server_scripts/tfc/recipes.dyes.js | 2 +- kubejs/server_scripts/tfc/recipes.js | 9 +- kubejs/server_scripts/tfc/recipes.machines.js | 4 +- kubejs/server_scripts/tfc/recipes.metals.js | 2 +- kubejs/server_scripts/tfc/recipes.stone.js | 4 +- kubejs/server_scripts/tfg/recipes.food.js | 154 ++++++++---------- .../tfg/recipes.miscellaneous.js | 6 +- kubejs/server_scripts/tfg/recipes.space.js | 2 +- kubejs/server_scripts/tfg/tags.js | 4 + 17 files changed, 126 insertions(+), 125 deletions(-) diff --git a/kubejs/server_scripts/ae2/recipes.js b/kubejs/server_scripts/ae2/recipes.js index d0616230a..67bb97cf7 100644 --- a/kubejs/server_scripts/ae2/recipes.js +++ b/kubejs/server_scripts/ae2/recipes.js @@ -2184,7 +2184,7 @@ global.MINECRAFT_DYE_NAMES.forEach(dye => { '#tfg:reactant_fluix_ruby', '#tfg:reactant_fluix_quartz', '4x ae2:charged_certus_quartz_crystal') - .inputFluids(Fluid.of('minecraft:water', 144)) + .inputFluids(JsonIO.of({ amount: 150, value: { tag: "tfg:clean_water" }})) .itemOutputs('5x ae2:fluix_crystal') .duration(120) .EUt(256) @@ -2194,7 +2194,7 @@ global.MINECRAFT_DYE_NAMES.forEach(dye => { '#tfg:reactant_fluix_ruby_exquisite', '#tfg:reactant_fluix_quartz', '4x ae2:charged_certus_quartz_crystal') - .inputFluids(Fluid.of('minecraft:water', 144)) + .inputFluids(JsonIO.of({ amount: 150, value: { tag: "tfg:clean_water" }})) .itemOutputs('20x ae2:fluix_crystal') .duration(80) .EUt(256) @@ -2204,7 +2204,7 @@ global.MINECRAFT_DYE_NAMES.forEach(dye => { '#tfg:reactant_fluix_ruby', '#tfg:reactant_fluix_quartz_exquisite', '4x ae2:charged_certus_quartz_crystal') - .inputFluids(Fluid.of('minecraft:water', 144)) + .inputFluids(JsonIO.of({ amount: 150, value: { tag: "tfg:clean_water" }})) .itemOutputs('20x ae2:fluix_crystal') .duration(80) .EUt(256) @@ -2214,7 +2214,7 @@ global.MINECRAFT_DYE_NAMES.forEach(dye => { '#tfg:reactant_fluix_ruby_exquisite', '#tfg:reactant_fluix_quartz_exquisite', '4x ae2:charged_certus_quartz_crystal') - .inputFluids(Fluid.of('gtceu:distilled_water', 144)) + .inputFluids(Fluid.of('gtceu:distilled_water', 150)) .itemOutputs('40x ae2:fluix_crystal') .duration(60) .EUt(256) diff --git a/kubejs/server_scripts/firmaciv/recipes.js b/kubejs/server_scripts/firmaciv/recipes.js index 30bd983ac..233fc4b4b 100644 --- a/kubejs/server_scripts/firmaciv/recipes.js +++ b/kubejs/server_scripts/firmaciv/recipes.js @@ -61,7 +61,7 @@ const registerFirmaCivRecipes = (event) => { //#region Barometer event.recipes.gtceu.assembler('tfg:firmaciv/barometer') .itemInputs('#forge:plates/brass', '2x #forge:small_gears/brass', '#forge:glass_panes') - .inputFluids(Fluid.of('minecraft:water', 1000)) + .inputFluids(JsonIO.of({ amount: 1000, value: { tag: "tfg:clean_water" }})) .circuit(12) .itemOutputs('firmaciv:barometer') .duration(75) diff --git a/kubejs/server_scripts/firmalife/recipes.js b/kubejs/server_scripts/firmalife/recipes.js index 586c15306..134ecb1b2 100644 --- a/kubejs/server_scripts/firmalife/recipes.js +++ b/kubejs/server_scripts/firmalife/recipes.js @@ -490,7 +490,7 @@ const registerFirmaLifeRecipes = (event) => { event.recipes.gtceu.mixer('sugar_water') .itemInputs('#tfc:sweetener') - .inputFluids(Fluid.of('minecraft:water', 1000)) + .inputFluids(JsonIO.of({ amount: 1000, value: { tag: "tfg:clean_water" }})) .outputFluids(Fluid.of('firmalife:sugar_water', 500)) .circuit(5) .EUt(GTValues.VA[GTValues.ULV]) diff --git a/kubejs/server_scripts/gregtech/recipes.js b/kubejs/server_scripts/gregtech/recipes.js index 2085fdcaa..a7b689f1c 100644 --- a/kubejs/server_scripts/gregtech/recipes.js +++ b/kubejs/server_scripts/gregtech/recipes.js @@ -22,7 +22,7 @@ const registerGTCEURecipes = (event) => { '4x #forge:sand' ) .circuit(1) - .inputFluids(Fluid.of('minecraft:water', 1000)) + .inputFluids(JsonIO.of({ amount: 1000, value: { tag: "tfg:clean_water" }})) .itemOutputs('4x gtceu:fertilizer') .duration(300) .EUt(30) @@ -203,56 +203,56 @@ const registerGTCEURecipes = (event) => { event.recipes.gtceu.brewery('biomass_from_tfc_seeds') .itemInputs('#tfc:seeds') - .inputFluids(Fluid.of('minecraft:water', 20)) + .inputFluids(JsonIO.of({ amount: 20, value: { tag: "tfc:any_water" }})) .outputFluids(Fluid.of('gtceu:biomass', 20)) .duration(128) .EUt(3) event.recipes.gtceu.brewery('biomass_from_tfc_food') .itemInputs('#tfc:foods') - .inputFluids(Fluid.of('minecraft:water', 20)) + .inputFluids(JsonIO.of({ amount: 20, value: { tag: "tfc:any_water" }})) .outputFluids(Fluid.of('gtceu:biomass', 20)) .duration(128) .EUt(3) event.recipes.gtceu.brewery('biomass_from_tfc_plants') .itemInputs('#tfc:plants') - .inputFluids(Fluid.of('minecraft:water', 20)) + .inputFluids(JsonIO.of({ amount: 20, value: { tag: "tfc:any_water" }})) .outputFluids(Fluid.of('gtceu:biomass', 20)) .duration(128) .EUt(3) event.recipes.gtceu.brewery('biomass_from_tfc_corals') .itemInputs('#tfc:corals') - .inputFluids(Fluid.of('minecraft:water', 20)) + .inputFluids(JsonIO.of({ amount: 20, value: { tag: "tfc:any_water" }})) .outputFluids(Fluid.of('gtceu:biomass', 20)) .duration(128) .EUt(3) event.recipes.gtceu.brewery('biomass_from_spider_eyes') .itemInputs('minecraft:spider_eye') - .inputFluids(Fluid.of('minecraft:water', 20)) + .inputFluids(JsonIO.of({ amount: 20, value: { tag: "tfc:any_water" }})) .outputFluids(Fluid.of('gtceu:biomass', 20)) .duration(128) .EUt(3) event.recipes.gtceu.brewery('biomass_from_leaves') .itemInputs('#minecraft:leaves') - .inputFluids(Fluid.of('minecraft:water', 20)) + .inputFluids(JsonIO.of({ amount: 20, value: { tag: "tfc:any_water" }})) .outputFluids(Fluid.of('gtceu:biomass', 20)) .duration(128) .EUt(3) event.recipes.gtceu.brewery('biomass_from_fallen_leaves') .itemInputs('#tfc:fallen_leaves') - .inputFluids(Fluid.of('minecraft:water', 20)) + .inputFluids(JsonIO.of({ amount: 20, value: { tag: "tfc:any_water" }})) .outputFluids(Fluid.of('gtceu:biomass', 20)) .duration(128) .EUt(3) event.recipes.gtceu.brewery('biomass_from_minecraft_plants') .itemInputs('#createaddition:plants') - .inputFluids(Fluid.of('minecraft:water', 20)) + .inputFluids(JsonIO.of({ amount: 20, value: { tag: "tfc:any_water" }})) .outputFluids(Fluid.of('gtceu:biomass', 20)) .duration(128) .EUt(3) @@ -280,15 +280,15 @@ const registerGTCEURecipes = (event) => { //#endregion //#region Выход: Цемент - + generateMixerRecipe(event, ['2x #tfg:stone_dusts', 'gtceu:marble_dust', 'gtceu:gypsum_dust'], - Fluid.of('minecraft:water', 1000), [], null, Fluid.of('gtceu:concrete', 1152), 40, 16, 64, 'concrete_from_marble') + JsonIO.of({ amount: 1000, value: { tag: "tfg:clean_water" }}), [], null, Fluid.of('gtceu:concrete', 1152), 40, 16, 64, 'concrete_from_marble') generateMixerRecipe(event, ['3x #tfg:stone_dusts', 'gtceu:clay_dust'], - Fluid.of('minecraft:water', 500), [], null, Fluid.of('gtceu:concrete', 576), 20, 16, 64, 'concrete_from_clay') + JsonIO.of({ amount: 500, value: { tag: "tfg:clean_water" }}), [], null, Fluid.of('gtceu:concrete', 576), 20, 16, 64, 'concrete_from_clay') generateMixerRecipe(event, ['3x #tfg:stone_dusts', 'gtceu:calcite_dust', 'gtceu:gypsum_dust'], - Fluid.of('minecraft:water', 1000), [], null, Fluid.of('gtceu:concrete', 1152), 40, 16, 64, 'concrete_from_calcite') + JsonIO.of({ amount: 1000, value: { tag: "tfg:clean_water" }}), [], null, Fluid.of('gtceu:concrete', 1152), 40, 16, 64, 'concrete_from_calcite') //GT light/dark concrete recipe fix @@ -353,7 +353,7 @@ const registerGTCEURecipes = (event) => { generateMixerRecipe( event, ['2x #tfg:stone_dusts'], - [Fluid.of('gtceu:lubricant', 20), Fluid.of('minecraft:water', 4000)], + [Fluid.of('gtceu:lubricant', 20), JsonIO.of({ amount: 4000, value: { tag: "tfg:clean_water" }})], [], null, Fluid.of('gtceu:drilling_fluid', 5000), @@ -949,7 +949,7 @@ const registerGTCEURecipes = (event) => { event.replaceInput({ mod: 'gtceu' }, 'minecraft:sugar', '#tfg:sugars') event.replaceInput({ mod: 'gtceu' }, 'minecraft:string', '#forge:string') - + event.recipes.gtceu.fluid_solidifier('tfg:solidify_glue') .inputFluids(Fluid.of('gtceu:glue', 50)) .notConsumable('gtceu:ball_casting_mold') diff --git a/kubejs/server_scripts/gregtech/utility.js b/kubejs/server_scripts/gregtech/utility.js index 0d496e492..414b764a8 100644 --- a/kubejs/server_scripts/gregtech/utility.js +++ b/kubejs/server_scripts/gregtech/utility.js @@ -29,7 +29,7 @@ const generateGreenHouseRecipe = (event, input, fluid_amount, output, id, dimens let r = event.recipes.gtceu.greenhouse(id) .itemInputs(input) .circuit(1) - .inputFluids(Fluid.of('minecraft:water', fluid_amount)) + .inputFluids(JsonIO.of({ amount: fluid_amount, value: { tag: "tfg:clean_water" }})) .itemOutputs(output) .chancedOutput(input, 7500, 0) .chancedOutput(input, 5000, 0) @@ -44,7 +44,7 @@ const generateGreenHouseRecipe = (event, input, fluid_amount, output, id, dimens .itemInputs(input) .itemInputs(Item.of('gtceu:fertilizer', fertiliser_count)) .circuit(2) - .inputFluids(Fluid.of('minecraft:water', fluid_amount)) + .inputFluids(JsonIO.of({ amount: fluid_amount, value: { tag: "tfg:clean_water" }})) .itemOutputs(output) .chancedOutput(input, 8500, 0) .chancedOutput(input, 6000, 0) diff --git a/kubejs/server_scripts/minecraft/recipes.js b/kubejs/server_scripts/minecraft/recipes.js index 03f40be28..3fe1c87d1 100644 --- a/kubejs/server_scripts/minecraft/recipes.js +++ b/kubejs/server_scripts/minecraft/recipes.js @@ -41,7 +41,7 @@ const registerMinecraftRecipes = (event) => { event.recipes.gtceu.chemical_reactor(`tfg:minecraft/oxidizing_block_${element.name}`) .itemInputs(element.block) - .inputFluids(Fluid.of('minecraft:water', 150)) + .inputFluids(JsonIO.of({ amount: 150, value: { tag: "tfc:any_water" }})) .circuit(1) .itemOutputs(element2.block) .duration(1000) @@ -49,7 +49,7 @@ const registerMinecraftRecipes = (event) => { event.recipes.gtceu.chemical_reactor(`tfg:minecraft/oxidizing_cutted_${element.name}`) .itemInputs(element.cutted) - .inputFluids(Fluid.of('minecraft:water', 150)) + .inputFluids(JsonIO.of({ amount: 150, value: { tag: "tfc:any_water" }})) .circuit(1) .itemOutputs(element2.cutted) .duration(1000) @@ -57,7 +57,7 @@ const registerMinecraftRecipes = (event) => { event.recipes.gtceu.chemical_reactor(`tfg:minecraft/oxidizing_stairs_${element.name}`) .itemInputs(element.stairs) - .inputFluids(Fluid.of('minecraft:water', 150)) + .inputFluids(JsonIO.of({ amount: 150, value: { tag: "tfc:any_water" }})) .circuit(1) .itemOutputs(element2.stairs) .duration(1000) @@ -65,7 +65,7 @@ const registerMinecraftRecipes = (event) => { event.recipes.gtceu.chemical_reactor(`tfg:minecraft/oxidizing_slabs_${element.name}`) .itemInputs(element.slabs) - .inputFluids(Fluid.of('minecraft:water', 150)) + .inputFluids(JsonIO.of({ amount: 150, value: { tag: "tfc:any_water" }})) .circuit(1) .itemOutputs(element2.slabs) .duration(1000) @@ -152,7 +152,7 @@ const registerMinecraftRecipes = (event) => { event.recipes.gtceu.chemical_bath('paper_from_papyrus') .itemInputs('tfc:papyrus') - .inputFluids(Fluid.of('minecraft:water', 100)) + .inputFluids(JsonIO.of({ amount: 100, value: { tag: "tfg:clean_water" }})) .itemOutputs('minecraft:paper') .duration(100) .EUt(7) @@ -163,7 +163,7 @@ const registerMinecraftRecipes = (event) => { event.recipes.gtceu.centrifuge('sugar_from_sugarcane') .itemInputs('tfc:food/sugarcane') - .inputFluids(Fluid.of('minecraft:water', 600)) + .inputFluids(JsonIO.of({ amount: 600, value: { tag: "tfg:clean_water" }})) .itemOutputs('minecraft:sugar', 'gtceu:plant_ball') .duration(800) .EUt(6) @@ -229,7 +229,7 @@ const registerMinecraftRecipes = (event) => { event.recipes.gtceu.chemical_reactor('minecraft:gtceu/chemical_reactor/sponge') .itemInputs(ChemicalHelper.get(TagPrefix.dust, GTMaterials.SodiumBisulfate, 1)) - .inputFluids(Fluid.of('gtceu:polyethylene', 144), Fluid.of('minecraft:water', 250)) + .inputFluids(Fluid.of('gtceu:polyethylene', 144), JsonIO.of({ amount: 250, value: { tag: "tfg:clean_water" }})) .itemOutputs('2x minecraft:sponge') .outputFluids(Fluid.of('gtceu:sodium_persulfate', 35)) .duration(80) diff --git a/kubejs/server_scripts/rnr/recipes.js b/kubejs/server_scripts/rnr/recipes.js index 8b3e37213..0222490cf 100644 --- a/kubejs/server_scripts/rnr/recipes.js +++ b/kubejs/server_scripts/rnr/recipes.js @@ -51,7 +51,7 @@ const registerRnrRecipes = (event) => { ).id('rnr:smelting/unfired_roof_tile') event.recipes.gtceu.mixer('rnr:mixer/wet_concrete_mix') - .inputFluids(Fluid.of('gtceu:concrete', 192), Fluid.of('minecraft:water', 808)) + .inputFluids(Fluid.of('gtceu:concrete', 192), JsonIO.of({ amount: 808, value: { tag: "tfg:clean_water" }})) .outputFluids(Fluid.of('rnr:concrete', 1000)) .circuit(7) .duration(200) diff --git a/kubejs/server_scripts/tfc/recipes.dirt.js b/kubejs/server_scripts/tfc/recipes.dirt.js index f3b9b6048..569c6a0f6 100644 --- a/kubejs/server_scripts/tfc/recipes.dirt.js +++ b/kubejs/server_scripts/tfc/recipes.dirt.js @@ -32,7 +32,7 @@ function registerTFCDirtRecipes(event) { // Dirt -> Mud event.recipes.gtceu.mixer(`${mud}_grass_to_mud`) .itemInputs(`tfc:dirt/${mud}`) - .inputFluids(Fluid.of('minecraft:water', 100)) + .inputFluids(JsonIO.of({ amount: 100, value: { tag: "tfc:any_water" }})) .circuit(2) .itemOutputs(`tfc:mud/${mud}`) .duration(200) diff --git a/kubejs/server_scripts/tfc/recipes.dyes.js b/kubejs/server_scripts/tfc/recipes.dyes.js index 94917d9dc..91bf52e90 100644 --- a/kubejs/server_scripts/tfc/recipes.dyes.js +++ b/kubejs/server_scripts/tfc/recipes.dyes.js @@ -141,7 +141,7 @@ function registerTFCDyeRecipes(event) { event.recipes.gtceu.chemical_reactor(`chemical_dye_${dyeName}_acetic`) .itemInputs(`#forge:dyes/${dyeName}`) - .inputFluids(Fluid.of('gtceu:acetic_acid', 250), Fluid.of('minecraft:water', 1000)) + .inputFluids(Fluid.of('gtceu:acetic_acid', 250), JsonIO.of({ amount: 1000, value: { tag: "tfg:clean_water" }})) .outputFluids(Fluid.of(`tfc:${dyeName}_dye`, 144 * 3)) .duration(15 * 20) .EUt(24) diff --git a/kubejs/server_scripts/tfc/recipes.js b/kubejs/server_scripts/tfc/recipes.js index e16f66f62..4a19f1499 100644 --- a/kubejs/server_scripts/tfc/recipes.js +++ b/kubejs/server_scripts/tfc/recipes.js @@ -154,7 +154,10 @@ const registerTFCRecipes = (event) => { .id('tfg:tfc/pot/salt') // Salt Water - generateMixerRecipe(event, ['#forge:dusts/salt'], Fluid.of('minecraft:water', 1000), [], 2, Fluid.of('tfc:salt_water', 1000), 40, 7, 64, 'tfg:tfc/salt_water') + generateMixerRecipe(event, + ['#forge:dusts/salt'], + JsonIO.of({ amount: 1000, value: { tag: "tfg:clean_water" }}), + [], 2, Fluid.of('tfc:salt_water', 1000), 40, 7, 64, 'tfg:tfc/salt_water') // Seaweed and kelp @@ -185,7 +188,9 @@ const registerTFCRecipes = (event) => { .id('tfg:splashing/wash_torch') //Lye in mixer - generateMixerRecipe(event, 'tfc:powder/wood_ash', Fluid.of('minecraft:water', 200), [], null, Fluid.of('tfc:lye', 200), 100, 2, 64, 'lye_in_mixer') + generateMixerRecipe(event, 'tfc:powder/wood_ash', + JsonIO.of({ amount: 200, value: { tag: "tfg:clean_water" }}), + [], null, Fluid.of('tfc:lye', 200), 100, 2, 64, 'lye_in_mixer') // Brass Mechanism event.recipes.shapeless('gtceu:small_brass_gear', [ 'tfc:brass_mechanisms' ]).id('tfg:replace_brass_mechanisms') diff --git a/kubejs/server_scripts/tfc/recipes.machines.js b/kubejs/server_scripts/tfc/recipes.machines.js index c4ef95466..097380744 100644 --- a/kubejs/server_scripts/tfc/recipes.machines.js +++ b/kubejs/server_scripts/tfc/recipes.machines.js @@ -311,7 +311,9 @@ function registerTFCMachineRecipes(event) { .EUt(4) // Jute Fiber - generateMixerRecipe(event, 'tfc:jute', Fluid.of('minecraft:water', 200), 'tfc:jute_fiber', null, [], 100, 4, 16, 'tfg:tfc/jute_fiber') + generateMixerRecipe(event, 'tfc:jute', + JsonIO.of({ amount: 200, value: { tag: "tfg:clean_water" }}), + 'tfc:jute_fiber', null, [], 100, 4, 16, 'tfg:tfc/jute_fiber') // Ceramic Recycling event.recipes.gtceu.macerator('tfg:sherd_to_brick_dust') diff --git a/kubejs/server_scripts/tfc/recipes.metals.js b/kubejs/server_scripts/tfc/recipes.metals.js index d060eabcd..4035f6e09 100644 --- a/kubejs/server_scripts/tfc/recipes.metals.js +++ b/kubejs/server_scripts/tfc/recipes.metals.js @@ -321,7 +321,7 @@ function registerTFCMetalsRecipes(event) { event.recipes.gtceu.ore_washer(`tfc:ore_washer/water/deposit/${ore}/${stone}`) .itemInputs(`1x tfc:deposit/${ore}/${stone}`) - .inputFluids(Fluid.of('minecraft:water', 100)) + .inputFluids(JsonIO.of({ amount: 100, value: { tag: "tfg:clean_water" }})) .circuit(4) .itemOutputs(`1x tfc:ore/normal_${ore}`) .duration(400) diff --git a/kubejs/server_scripts/tfc/recipes.stone.js b/kubejs/server_scripts/tfc/recipes.stone.js index 46a1adc5d..b2e8bf5c1 100644 --- a/kubejs/server_scripts/tfc/recipes.stone.js +++ b/kubejs/server_scripts/tfc/recipes.stone.js @@ -240,7 +240,7 @@ function registerTFCStoneRecipes(event) { event.recipes.gtceu.assembler(`${stone}_cobble_rocks_to_mossy_cobble`) .itemInputs(`tfc:rock/cobble/${stone}`, '#tfc:compost_greens_low') .circuit(0) - .inputFluids(Fluid.of('minecraft:water', 144)) + .inputFluids(JsonIO.of({ amount: 144, value: { tag: "tfg:clean_water" }})) .itemOutputs(`tfc:rock/mossy_cobble/${stone}`) .duration(50) .EUt(2) @@ -252,7 +252,7 @@ function registerTFCStoneRecipes(event) { event.recipes.gtceu.assembler(`mossy_bricks_${stone}`) .itemInputs(`tfc:rock/bricks/${stone}`, '#tfc:compost_greens_low') .circuit(0) - .inputFluids(Fluid.of('minecraft:water', 144)) + .inputFluids(JsonIO.of({ amount: 144, value: { tag: "tfg:clean_water" }})) .itemOutputs(`tfc:rock/mossy_bricks/${stone}`) .duration(50) .EUt(2) diff --git a/kubejs/server_scripts/tfg/recipes.food.js b/kubejs/server_scripts/tfg/recipes.food.js index c5a564771..310520047 100644 --- a/kubejs/server_scripts/tfg/recipes.food.js +++ b/kubejs/server_scripts/tfg/recipes.food.js @@ -65,6 +65,8 @@ function registerTFGFoodRecipes(event) { if (data.fluidInputs.length > 0) r.inputFluids(data.fluidInputs); if (data.fluidOutputs.length > 0) r.outputFluids(data.fluidOutputs); if (text != "") r.addDataString("action", text); + + return r; } /** @@ -92,7 +94,7 @@ function registerTFGFoodRecipes(event) { * @param {boolean?} isFirmaDynamic */ function cookingRecipe(id, input, out, fluid, isFirmaDynamic) { - registerFoodRecipe("food_oven", id, 300, 32, "", { + return registerFoodRecipe("food_oven", id, 300, 32, "", { itemInputs: [input], itemOutputs: [out], fluidInputs: (fluid === undefined) ? [] : [fluid], @@ -134,9 +136,8 @@ function registerTFGFoodRecipes(event) { processorRecipe(`${grain}_flatbread_dough`, 300, 8, { itemInputs: [`tfc:food/${grain}_flour`], itemOutputs: [`2x tfc:food/${grain}_dough`], - fluidInputs: [Fluid.of('minecraft:water', 100)], itemOutputProvider: TFC.isp.of(`2x tfc:food/${grain}_dough`).copyFood() - }) + }).inputFluids(JsonIO.of({ amount: 100, value: { tag: "tfg:clean_water" }})) // Firmalife dough processorRecipe(`${grain}_dough`, 300, 16, { @@ -260,57 +261,50 @@ function registerTFGFoodRecipes(event) { }) - global.TFC_MILKS.forEach(milk => { - const milkID = milk.id.split(':')[1]; + // Milks - processorRecipe(`white_chocolate_blend_from_${milkID}`, 300, 16, { - circuit: 3, - itemInputs: ['2x firmalife:food/cocoa_butter', '#tfc:sweetener'], - itemOutputs: ['2x firmalife:food/white_chocolate_blend'], - fluidInputs: [Fluid.of(milk.id, 1000)], - itemOutputProvider: TFC.isp.of('2x firmalife:food/white_chocolate_blend').resetFood(), - }) + processorRecipe(`white_chocolate_blend`, 300, 16, { + circuit: 3, + itemInputs: ['2x firmalife:food/cocoa_butter', '#tfc:sweetener'], + itemOutputs: ['2x firmalife:food/white_chocolate_blend'], + itemOutputProvider: TFC.isp.of('2x firmalife:food/white_chocolate_blend').resetFood(), + }).inputFluids(JsonIO.of({ amount: 1000, value: { tag: "tfc:milks" }})) - processorRecipe(`dark_chocolate_blend_from_${milkID}`, 300, 16, { - circuit: 2, - itemInputs: ['2x firmalife:food/cocoa_powder', '#tfc:sweetener'], - itemOutputs: ['2x firmalife:food/dark_chocolate_blend'], - fluidInputs: [Fluid.of(milk.id, 1000)], - itemOutputProvider: TFC.isp.of('2x firmalife:food/dark_chocolate_blend').resetFood(), - }) + processorRecipe(`dark_chocolate_blend`, 300, 16, { + circuit: 2, + itemInputs: ['2x firmalife:food/cocoa_powder', '#tfc:sweetener'], + itemOutputs: ['2x firmalife:food/dark_chocolate_blend'], + itemOutputProvider: TFC.isp.of('2x firmalife:food/dark_chocolate_blend').resetFood(), + }).inputFluids(JsonIO.of({ amount: 1000, value: { tag: "tfc:milks" }})) - processorRecipe(`milk_chocolate_blend_from_${milkID}`, 300, 16, { - circuit: 1, - itemInputs: ['firmalife:food/cocoa_powder', 'firmalife:food/cocoa_butter', '#tfc:sweetener'], - itemOutputs: ['2x firmalife:food/milk_chocolate_blend'], - fluidInputs: [Fluid.of(milk.id, 1000)], - itemOutputProvider: TFC.isp.of('2x firmalife:food/milk_chocolate_blend').resetFood(), - }) + processorRecipe(`milk_chocolate_blend`, 300, 16, { + circuit: 1, + itemInputs: ['firmalife:food/cocoa_powder', 'firmalife:food/cocoa_butter', '#tfc:sweetener'], + itemOutputs: ['2x firmalife:food/milk_chocolate_blend'], + itemOutputProvider: TFC.isp.of('2x firmalife:food/milk_chocolate_blend').resetFood(), + }).inputFluids(JsonIO.of({ amount: 1000, value: { tag: "tfc:milks" }})) - // TODO: this has nutrition dynamically set in the pot recipe, can we do that here? - processorRecipe(`egg_noodles_from_${milkID}`, 50, 8, { - circuit: 6, - itemInputs: ["#tfc:foods/flour", 'tfc:powder/salt', '#forge:eggs'], - itemOutputs: ['firmalife:food/raw_egg_noodles'], - fluidInputs: [Fluid.of(milk.id, 1000)], - itemOutputProvider: TFC.isp.of("firmalife:food/raw_egg_noodles").copyOldestFood(), - }) + // TODO: this has nutrition dynamically set in the pot recipe, can we do that here? + processorRecipe(`egg_noodles`, 50, 8, { + circuit: 6, + itemInputs: ["#tfc:foods/flour", 'tfc:powder/salt', '#forge:eggs'], + itemOutputs: ['firmalife:food/raw_egg_noodles'], + itemOutputProvider: TFC.isp.of("firmalife:food/raw_egg_noodles").copyOldestFood(), + }).inputFluids(JsonIO.of({ amount: 1000, value: { tag: "tfc:milks" }})) - processorRecipe(`rice_noodles_from_${milkID}`, 50, 8, { - itemInputs: ["tfc:food/rice_flour", 'tfc:food/maize_flour', 'tfc:powder/salt'], - fluidInputs: [Fluid.of(milk.id, 1000)], - itemOutputs: ['2x firmalife:food/raw_rice_noodles'], - itemOutputProvider: TFC.isp.of('2x firmalife:food/raw_rice_noodles').copyOldestFood() - }) + processorRecipe(`rice_noodles`, 50, 8, { + itemInputs: ["tfc:food/rice_flour", 'tfc:food/maize_flour', 'tfc:powder/salt'], + itemOutputs: ['2x firmalife:food/raw_rice_noodles'], + itemOutputProvider: TFC.isp.of('2x firmalife:food/raw_rice_noodles').copyOldestFood() + }).inputFluids(JsonIO.of({ amount: 1000, value: { tag: "tfc:milks" }})) - // No ISP needed here - event.recipes.gtceu.fermenter(`tfg:fermenter/cream_from_${milkID}`) - .inputFluids(Fluid.of(milk.id, 1000)) - .outputFluids(Fluid.of('firmalife:cream')) - .circuit(6) - .duration(1200) - .EUt(24) - }) + // No ISP needed here + event.recipes.gtceu.fermenter(`tfg:fermenter/cream`) + .inputFluids(JsonIO.of({ amount: 1000, value: { tag: "tfc:milks" }})) + .outputFluids(Fluid.of('firmalife:cream')) + .circuit(6) + .duration(1200) + .EUt(24) //#endregion @@ -447,23 +441,27 @@ function registerTFGFoodRecipes(event) { circuit: 15, itemInputs: [`4x tfc:food/${name}`, "#tfg:sugars", "#tfc:empty_jar_with_lid"], itemOutputs: [`4x tfc:jar/${name}`], - fluidInputs: [Fluid.of("minecraft:water", 100)], itemOutputProvider: TFC.isp.of(`4x tfc:jar/${name}`).copyFood() - }) + }).inputFluids(JsonIO.of({ amount: 100, value: { tag: "tfg:clean_water" }})) processorRecipe(`${name}_jam_no_seal`, 200, 8, { circuit: 16, itemInputs: [`4x tfc:food/${name}`, "#tfg:sugars", "tfc:empty_jar"], itemOutputs: [`4x tfc:jar/${name}_unsealed`], - fluidInputs: [Fluid.of("minecraft:water", 100)], itemOutputProvider: TFC.isp.of(`4x tfc:jar/${name}_unsealed`).copyFood() - }) + }).inputFluids(JsonIO.of({ amount: 100, value: { tag: "tfg:clean_water" }})) }) - cookingRecipe("pasta", "firmalife:food/raw_egg_noodles", "firmalife:food/cooked_pasta", Fluid.of("minecraft:water", 100)) + cookingRecipe("pasta", "firmalife:food/raw_egg_noodles", "firmalife:food/cooked_pasta") + .inputFluids(JsonIO.of({ amount: 100, value: { tag: "tfg:clean_water" }})) + cookingRecipe("corn_tortilla", "firmalife:food/masa", "firmalife:food/corn_tortilla") - cookingRecipe("boiled_egg", "#firmalife:foods/raw_eggs", "tfc:food/boiled_egg", Fluid.of("minecraft:water", 200)) - cookingRecipe("cooked_rice", "tfc:food/rice_grain", "tfc:food/cooked_rice", Fluid.of("minecraft:water", 200)) + + cookingRecipe("boiled_egg", "#firmalife:foods/raw_eggs", "tfc:food/boiled_egg") + .inputFluids(JsonIO.of({ amount: 200, value: { tag: "tfg:clean_water" }})) + + cookingRecipe("cooked_rice", "tfc:food/rice_grain", "tfc:food/cooked_rice") + .inputFluids(JsonIO.of({ amount: 200, value: { tag: "tfg:clean_water" }})) processorRecipe("pasta_tomato_sauce", 60, 8, { itemInputs: ["firmalife:food/cooked_pasta", "firmalife:food/tomato_sauce"], @@ -474,9 +472,8 @@ function registerTFGFoodRecipes(event) { processorRecipe('firmalife_masa', 300, 2, { itemInputs: ["firmalife:food/masa_flour"], itemOutputs: ["2x firmalife:food/masa"], - fluidInputs: [Fluid.of('minecraft:water', 100)], itemOutputProvider: TFC.isp.of("2x firmalife:food/masa").copyFood() - }) + }).inputFluids(JsonIO.of({ amount: 100, value: { tag: "tfg:clean_water" }})) processorRecipe("tortilla_chips", 40, 16, { itemInputs: ["firmalife:food/taco_shell", "tfc:powder/salt"], @@ -493,9 +490,8 @@ function registerTFGFoodRecipes(event) { processorRecipe("tomato_sauce_from_mix", 200, 8, { itemInputs: ['firmalife:food/tomato_sauce_mix'], itemOutputs: ['firmalife:food/tomato_sauce'], - fluidInputs: [Fluid.of('minecraft:water', 200)], itemOutputProvider: TFC.isp.of('firmalife:food/tomato_sauce').copyOldestFood(), - }) + }).inputFluids(JsonIO.of({ amount: 200, value: { tag: "tfg:clean_water" }})) processorRecipe("olive_paste", 60, 8, { itemInputs: ['tfc:food/olive'], @@ -518,17 +514,17 @@ function registerTFGFoodRecipes(event) { }) // Vinegar - global.TFC_ALCOHOL.forEach(alcohol => { - let name = `vinegar_${alcohol.id.replace(':', '_')}`; - - processorRecipe(name, 600, 32, { - circuit: 5, - itemInputs: ['#tfc:foods/fruits'], - fluidInputs: [Fluid.of(alcohol.id, 250)], - fluidOutputs: [Fluid.of('tfc:vinegar', 250)], - }) - + processorRecipe('vinegar_alcohol', 600, 32, { + circuit: 5, + itemInputs: ['#tfc:foods/fruits'], + fluidOutputs: [Fluid.of('tfc:vinegar', 250)], }) + .inputFluids(JsonIO.of({ + amount: 250, + value: { + tag: "tfc:alcohols" + } + })) processorRecipe("pizza_no_extra", 600, 16, { itemInputs: ["firmalife:food/pizza_dough", "firmalife:food/tomato_sauce", "firmalife:food/shredded_cheese"], @@ -610,17 +606,15 @@ function registerTFGFoodRecipes(event) { circuit: 2, itemInputs: ['#tfc:sweetener', 'firmalife:food/butter', '#tfc:foods/flour'], itemOutputs: ['firmalife:food/pie_dough'], - fluidInputs: [Fluid.of('minecraft:water', 1000)], itemOutputProvider: TFC.isp.of('firmalife:food/pie_dough').copyOldestFood() - }) + }).inputFluids(JsonIO.of({ amount: 1000, value: { tag: "tfg:clean_water" }})) processorRecipe("pumpkin_pie_dough", 300, 16, { circuit: 2, itemInputs: ['#tfc:sweetener', '#forge:eggs', '2x tfc:food/pumpkin_chunks', '#tfc:foods/flour'], itemOutputs: ['firmalife:food/pumpkin_pie_dough'], - fluidInputs: [Fluid.of('minecraft:water', 1000)], itemOutputProvider: TFC.isp.of('firmalife:food/pumpkin_pie_dough').copyOldestFood() - }) + }).inputFluids(JsonIO.of({ amount: 1000, value: { tag: "tfg:clean_water" }})) processorRecipe("raw_pumpkin_pie", 20, 8, { itemInputs: ["firmalife:food/pumpkin_pie_dough", "firmalife:pie_pan"], @@ -643,9 +637,8 @@ function registerTFGFoodRecipes(event) { processorRecipe("hardtack_dough", 300, 16, { itemInputs: ['tfc:powder/salt', '#tfc:foods/flour'], itemOutputs: ['4x firmalife:food/hardtack_dough'], - fluidInputs: [Fluid.of('minecraft:water', 1000)], itemOutputProvider: TFC.isp.of('4x firmalife:food/hardtack_dough').copyOldestFood() - }) + }).inputFluids(JsonIO.of({ amount: 1000, value: { tag: "tfg:clean_water" }})) processorRecipe("yeast_starter", 1200, 8, { circuit: 1, @@ -656,10 +649,9 @@ function registerTFGFoodRecipes(event) { processorRecipe("yeast_starter_from_water", 7200, 8, { circuit: 10, - fluidInputs: [Fluid.of('minecraft:water', 100)], fluidOutputs: [Fluid.of('firmalife:yeast_starter', 600)], itemInputs: ['#tfc:foods/fruits'], - }) + }).inputFluids(JsonIO.of({ amount: 100, value: { tag: "tfg:clean_water" }})) processorRecipe("cocoa_dust", 100, 4, { itemInputs: ["firmalife:food/roasted_cocoa_beans"], @@ -688,10 +680,8 @@ function registerTFGFoodRecipes(event) { processorRecipe("soy_mixture", 300, 8, { itemInputs: ["tfc:food/soybean", 'tfc:powder/salt'], itemOutputs: ["firmalife:food/soy_mixture"], - fluidInputs: [Fluid.of('minecraft:water', 50)], - itemOutputProvider: TFC.isp.of('firmalife:food/soy_mixture').copyOldestFood(), - - }) + itemOutputProvider: TFC.isp.of('firmalife:food/soy_mixture').copyOldestFood() + }).inputFluids(JsonIO.of({ amount: 50, value: { tag: "tfg:clean_water" }})) // These don't need the ISP handling, they're just here to keep all the food recipes together @@ -710,7 +700,7 @@ function registerTFGFoodRecipes(event) { event.recipes.gtceu.fermenter('soybean_oil') .itemInputs('firmalife:food/soybean_paste') - .inputFluids(Fluid.of('minecraft:water', 100)) + .inputFluids(JsonIO.of({ amount: 100, value: { tag: "tfg:clean_water" }})) .outputFluids(Fluid.of('firmalife:soybean_oil', 250)) .EUt(GTValues.VA[GTValues.ULV]) .duration(600) diff --git a/kubejs/server_scripts/tfg/recipes.miscellaneous.js b/kubejs/server_scripts/tfg/recipes.miscellaneous.js index 4a2be2796..4225551a0 100644 --- a/kubejs/server_scripts/tfg/recipes.miscellaneous.js +++ b/kubejs/server_scripts/tfg/recipes.miscellaneous.js @@ -254,7 +254,7 @@ function registerTFGMiscellaneousRecipes(event) { .EUt(GTValues.VA[GTValues.ULV]) event.recipes.gtceu.fluid_solidifier('tfg:ice') - .inputFluids(Fluid.of('minecraft:water', 144)) + .inputFluids(JsonIO.of({ amount: 100, value: { tag: "tfg:clean_water" }})) .notConsumable('gtceu:block_casting_mold') .itemOutputs('minecraft:ice') .duration(200) @@ -452,9 +452,9 @@ function registerTFGMiscellaneousRecipes(event) { .circuit(4) .EUt(GTValues.VA[GTValues.ULV]) - event.recipes.gtceu.ore_washer('tfg:ore_washer/clean_foil_pack') + event.recipes.gtceu.mixer('tfg:clean_foil_pack') .itemInputs('1x tfg:used_foil_pack') - .inputFluids(Fluid.of('minecraft:water', 100)) + .inputFluids(JsonIO.of({ amount: 100, value: { tag: "tfg:clean_water" }})) .itemOutputs('1x tfg:clean_foil_pack') .duration(200) .circuit(1) diff --git a/kubejs/server_scripts/tfg/recipes.space.js b/kubejs/server_scripts/tfg/recipes.space.js index 40631ccae..0a86c1160 100644 --- a/kubejs/server_scripts/tfg/recipes.space.js +++ b/kubejs/server_scripts/tfg/recipes.space.js @@ -170,7 +170,7 @@ function registerTFGSpaceRecipes(event) { event.recipes.gtceu.brewery('biomass_from_twisting_vines') .itemInputs('minecraft:twisting_vines') - .inputFluids(Fluid.of('minecraft:water', 20)) + .inputFluids(JsonIO.of({ amount: 20, value: { tag: "tfg:clean_water" }})) .outputFluids(Fluid.of('gtceu:biomass', 20)) .duration(50) .EUt(3) diff --git a/kubejs/server_scripts/tfg/tags.js b/kubejs/server_scripts/tfg/tags.js index fd0905ec8..ab38793d3 100644 --- a/kubejs/server_scripts/tfg/tags.js +++ b/kubejs/server_scripts/tfg/tags.js @@ -338,6 +338,10 @@ const registerTFGFluidTags = (event) => { event.add('tfc:usable_in_red_steel_bucket', 'tfg:conifer_pitch') event.add('tfc:usable_in_blue_steel_bucket', 'tfg:conifer_pitch') + event.add('tfg:clean_water', 'minecraft:water') + event.add('tfg:clean_water', 'tfc:river_water') + event.add('tfg:clean_water', 'tfc:spring_water') + global.BREATHABLE_COMPRESSED_AIRS.forEach(x => { event.add('tfg:breathable_compressed_air', x) })