TFC Gurman integration (#2298)

* started working on tfc-gurman integration

* updated recipes, should be mostly good now?

* pizza adjustments

* meal bag tags

* ugh these crafting table foods are gonna take 5ever

* milk curdling and automation for new cheeses

* moved these

* Update tags.js

Signed-off-by: Pyritie <pyritie@gmail.com>

---------

Signed-off-by: Pyritie <pyritie@gmail.com>
This commit is contained in:
Pyritie 2025-12-01 00:35:55 +00:00 committed by GitHub
parent d6cf64c67b
commit 53c5a20489
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 888 additions and 72 deletions

View file

@ -270,6 +270,7 @@ ServerEvents.recipes(event => {
registerTFCBetterBFRecipes(event) registerTFCBetterBFRecipes(event)
registerTFCLunchBoxRecipes(event) registerTFCLunchBoxRecipes(event)
registerTFCGroomingStationRecipes(event) registerTFCGroomingStationRecipes(event)
registerTFCGurmanRecipes(event)
registerTFGRecipes(event) registerTFGRecipes(event)
registerTFCTextileRecipes(event) registerTFCTextileRecipes(event)
registerToolBeltRecipes(event) registerToolBeltRecipes(event)

View file

@ -0,0 +1,807 @@
// priority: 0
"use strict";
function registerTFCGurmanRecipes(event) {
const $ISPRecipeLogic = Java.loadClass("su.terrafirmagreg.core.common.data.tfgt.machine.trait.ISPOutputRecipeLogic")
//#region Food Oven Recipes
// Pizzas
event.recipes.gtceu.food_oven('margarita_pizza')
.itemInputs('tfc_gurman:raw_margarita_pizza')
.itemOutputs('tfc_gurman:margarita_pizza')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/margarita_pizza',
[Ingredient.of('tfc_gurman:raw_margarita_pizza')],
TFC.isp.of('tfc_gurman:margarita_pizza').firmaLifeCopyDynamicFood().asCanonClass(),
[])
event.recipes.gtceu.food_oven('pepperoni_pizza')
.itemInputs('tfc_gurman:raw_pepperoni_pizza')
.itemOutputs('tfc_gurman:pepperoni_pizza')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/pepperoni_pizza',
[Ingredient.of('tfc_gurman:raw_pepperoni_pizza')],
TFC.isp.of('tfc_gurman:pepperoni_pizza').firmaLifeCopyDynamicFood().asCanonClass(),
[])
event.recipes.gtceu.food_oven('havai_pizza')
.itemInputs('tfc_gurman:raw_havai_pizza')
.itemOutputs('tfc_gurman:havai_pizza')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/havai_pizza',
[Ingredient.of('tfc_gurman:raw_havai_pizza')],
TFC.isp.of('tfc_gurman:havai_pizza').firmaLifeCopyDynamicFood().asCanonClass(),
[])
event.recipes.gtceu.food_oven('four_cheeses_pizza')
.itemInputs('tfc_gurman:raw_four_cheeses_pizza')
.itemOutputs('tfc_gurman:four_cheeses_pizza')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/four_cheeses_pizza',
[Ingredient.of('tfc_gurman:raw_four_cheeses_pizza')],
TFC.isp.of('tfc_gurman:four_cheeses_pizza').firmaLifeCopyDynamicFood().asCanonClass(),
[])
event.recipes.gtceu.food_oven('four_meats_pizza')
.itemInputs('tfc_gurman:raw_four_meats_pizza')
.itemOutputs('tfc_gurman:four_meats_pizza')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/four_meats_pizza',
[Ingredient.of('tfc_gurman:raw_four_meats_pizza')],
TFC.isp.of('tfc_gurman:four_meats_pizza').firmaLifeCopyDynamicFood().asCanonClass(),
[])
event.recipes.gtceu.food_oven('neapolitano_pizza')
.itemInputs('tfc_gurman:raw_neapolitano_pizza')
.itemOutputs('tfc_gurman:neapolitano_pizza')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/neapolitano_pizza',
[Ingredient.of('tfc_gurman:raw_neapolitano_pizza')],
TFC.isp.of('tfc_gurman:neapolitano_pizza').firmaLifeCopyDynamicFood().asCanonClass(),
[])
event.recipes.gtceu.food_oven('croissants')
.itemInputs('tfc_gurman:raw_croissants')
.itemOutputs('tfc_gurman:croissants')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/croissants',
[Ingredient.of('tfc_gurman:raw_croissants')],
TFC.isp.of('tfc_gurman:croissants').firmaLifeCopyDynamicFood().asCanonClass(),
[])
event.recipes.gtceu.food_oven('kiev_cutlets')
.itemInputs('tfc_gurman:raw_kiev_cutlets')
.itemOutputs('tfc_gurman:kiev_cutlets')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/kiev_cutlets',
[Ingredient.of('tfc_gurman:raw_kiev_cutlets')],
TFC.isp.of('tfc_gurman:kiev_cutlets').firmaLifeCopyDynamicFood().asCanonClass(),
[])
event.recipes.gtceu.food_oven('quiche')
.itemInputs('tfc_gurman:raw_quiche')
.itemOutputs('tfc_gurman:quiche')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/quiche',
[Ingredient.of('tfc_gurman:raw_quiche')],
TFC.isp.of('tfc_gurman:quiche').firmaLifeCopyDynamicFood().asCanonClass(),
[])
event.recipes.gtceu.food_oven('tandoori_chicken')
.itemInputs('tfc_gurman:raw_tandoori_chicken')
.itemOutputs('tfc_gurman:tandoori_chicken')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/tandoori_chicken',
[Ingredient.of('tfc_gurman:raw_tandoori_chicken')],
TFC.isp.of('tfc_gurman:tandoori_chicken').firmaLifeCopyDynamicFood().asCanonClass(),
[])
event.recipes.gtceu.food_oven('placinda')
.itemInputs('tfc_gurman:raw_placinda')
.itemOutputs('tfc_gurman:placinda')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/placinda',
[Ingredient.of('tfc_gurman:raw_placinda')],
TFC.isp.of('tfc_gurman:placinda').firmaLifeCopyDynamicFood().asCanonClass(),
[])
event.recipes.gtceu.food_oven('tonkatsu')
.itemInputs('tfc_gurman:raw_tonkatsu')
.itemOutputs('tfc_gurman:tonkatsu')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/tonkatsu',
[Ingredient.of('tfc_gurman:raw_tonkatsu')],
TFC.isp.of('tfc_gurman:tonkatsu').copyFood().addTrait("firmalife:oven_baked").asCanonClass(),
[])
event.recipes.gtceu.food_oven('takoyaki')
.itemInputs('tfc_gurman:raw_takoyaki')
.itemOutputs('tfc_gurman:takoyaki')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/takoyaki',
[Ingredient.of('tfc_gurman:raw_takoyaki')],
TFC.isp.of('tfc_gurman:takoyaki').copyFood().addTrait("firmalife:oven_baked").asCanonClass(),
[])
event.recipes.gtceu.food_oven('bulgogi')
.itemInputs('tfc_gurman:raw_bulgogi')
.itemOutputs('tfc_gurman:bulgogi')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/bulgogi',
[Ingredient.of('tfc_gurman:raw_bulgogi')],
TFC.isp.of('tfc_gurman:bulgogi').copyFood().addTrait("firmalife:oven_baked").asCanonClass(),
[])
event.recipes.gtceu.food_oven('bratwurst')
.itemInputs('tfc_gurman:raw_bratwurst')
.itemOutputs('tfc_gurman:bratwurst')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/bratwurst',
[Ingredient.of('tfc_gurman:raw_bratwurst')],
TFC.isp.of('tfc_gurman:bratwurst').copyFood().addTrait("firmalife:oven_baked").asCanonClass(),
[])
event.recipes.gtceu.food_oven('crepes')
.itemInputs('tfc_gurman:raw_crepes')
.itemOutputs('tfc_gurman:crepes')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/crepes',
[Ingredient.of('tfc_gurman:raw_crepes')],
TFC.isp.of('tfc_gurman:crepes').copyFood().addTrait("firmalife:oven_baked").asCanonClass(),
[])
event.recipes.gtceu.food_oven('chebureki')
.itemInputs('tfc_gurman:raw_chebureki')
.itemOutputs('tfc_gurman:chebureki')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/chebureki',
[Ingredient.of('tfc_gurman:raw_chebureki')],
TFC.isp.of('tfc_gurman:chebureki').copyFood().addTrait("firmalife:oven_baked").asCanonClass(),
[])
event.recipes.gtceu.food_oven('khachapuri')
.itemInputs('tfc_gurman:raw_khachapuri')
.itemOutputs('tfc_gurman:khachapuri')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/khachapuri',
[Ingredient.of('tfc_gurman:raw_khachapuri')],
TFC.isp.of('tfc_gurman:khachapuri').copyFood().addTrait("firmalife:oven_baked").asCanonClass(),
[])
event.recipes.gtceu.food_oven('lavash_wrap')
.itemInputs('tfc_gurman:raw_lavash_wrap')
.itemOutputs('tfc_gurman:lavash_wrap')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/lavash_wrap',
[Ingredient.of('tfc_gurman:raw_lavash_wrap')],
TFC.isp.of('tfc_gurman:lavash_wrap').copyFood().addTrait("firmalife:oven_baked").asCanonClass(),
[])
event.recipes.gtceu.food_oven('syrniki')
.itemInputs('tfc_gurman:raw_syrniki')
.itemOutputs('tfc_gurman:syrniki')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/syrniki',
[Ingredient.of('tfc_gurman:raw_syrniki')],
TFC.isp.of('tfc_gurman:syrniki').copyFood().addTrait("firmalife:oven_baked").asCanonClass(),
[])
event.recipes.gtceu.food_oven('oladyi')
.itemInputs('tfc_gurman:raw_oladyi')
.itemOutputs('tfc_gurman:oladyi')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/oladyi',
[Ingredient.of('tfc_gurman:raw_oladyi')],
TFC.isp.of('tfc_gurman:oladyi').copyFood().addTrait("firmalife:oven_baked").asCanonClass(),
[])
// Falafel - from soybean (no raw version)
event.recipes.gtceu.food_oven('falafel')
.itemInputs('tfc:food/soybean')
.itemOutputs('tfc_gurman:falafel')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
$ISPRecipeLogic.RegisterRecipeData('food_oven/falafel',
[Ingredient.of('tfc:food/soybean')],
TFC.isp.of('tfc_gurman:falafel').copyFood().addTrait("firmalife:oven_baked").asCanonClass(),
[])
// Pelmeni (cooking raw pelmeni)
event.recipes.gtceu.food_oven('pelmeni')
.itemInputs('tfc_gurman:raw_pelmeni')
.itemOutputs('tfc_gurman:pelmeni')
.inputFluids(Fluid.of('minecraft:water', 500))
.duration(200)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_oven/pelmeni',
[Ingredient.of('tfc_gurman:raw_pelmeni')],
TFC.isp.of('tfc_gurman:pelmeni').copyFood().addTrait("firmalife:oven_baked").asCanonClass(),
[])
// Vareniki (cooking raw vareniki)
event.recipes.gtceu.food_oven('vareniki')
.itemInputs('tfc_gurman:raw_vareniki')
.itemOutputs('tfc_gurman:vareniki')
.inputFluids(Fluid.of('minecraft:water', 500))
.duration(200)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_oven/vareniki',
[Ingredient.of('tfc_gurman:raw_vareniki')],
TFC.isp.of('tfc_gurman:vareniki').copyFood().addTrait("firmalife:oven_baked").asCanonClass(),
[])
//#endregion
//#region Food Processor Recipes
// Borscht
event.recipes.gtceu.food_processor('borscht')
.circuit(20)
.itemInputs('tfc:food/beet', 'tfc:food/cabbage', 'tfc:food/carrot', 'tfc:food/onion', 'tfc:food/tomato')
.itemOutputs('3x tfc_gurman:borscht')
.inputFluids(Fluid.of('minecraft:water', 1000))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/borscht',
[Ingredient.of('tfc:food/beet'), Ingredient.of('tfc:food/cabbage'), Ingredient.of('tfc:food/carrot'), Ingredient.of('tfc:food/onion'), Ingredient.of('tfc:food/tomato')],
TFC.isp.of('tfc_gurman:borscht').copyFood().asCanonClass(),
[])
// Schi
event.recipes.gtceu.food_processor('schi')
.circuit(20)
.itemInputs('tfc:food/cabbage', 'tfc:food/cabbage', 'tfc:food/carrot', 'tfc:food/onion', 'tfc:food/tomato')
.itemOutputs('3x tfc_gurman:schi')
.inputFluids(Fluid.of('minecraft:water', 1000))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/schi',
[Ingredient.of('tfc:food/cabbage'), Ingredient.of('tfc:food/cabbage'), Ingredient.of('tfc:food/carrot'), Ingredient.of('tfc:food/onion'), Ingredient.of('tfc:food/tomato')],
TFC.isp.of('tfc_gurman:schi').copyFood().asCanonClass(),
[])
// Coffee
event.recipes.gtceu.food_processor('coffee')
.circuit(2)
.itemInputs('firmalife:food/roasted_cocoa_beans', 'firmalife:food/roasted_cocoa_beans')
.inputFluids(Fluid.of('minecraft:water', 1000))
.outputFluids(Fluid.of('tfc_gurman:coffee', 1000))
.duration(300)
.EUt(8)
// Cocoa
event.recipes.gtceu.food_processor('cocoa')
.circuit(1)
.itemInputs('firmalife:food/cocoa_powder', 'firmalife:food/cocoa_powder', 'minecraft:sugar')
.inputFluids('#tfc:milks 1000')
.outputFluids(Fluid.of('tfc_gurman:cocoa', 1000))
.duration(300)
.EUt(8)
// Compote
event.recipes.gtceu.food_processor('compote')
.circuit(2)
.itemInputs('#tfc:foods/fruits', '#tfc:foods/fruits')
.inputFluids(Fluid.of('minecraft:water', 1000))
.outputFluids(Fluid.of('tfc_gurman:compote', 1000))
.duration(300)
.EUt(8)
// Lemonade
event.recipes.gtceu.food_processor('lemonade')
.circuit(2)
.itemInputs('tfc:food/lemon', 'tfc:food/lemon')
.inputFluids(Fluid.of('minecraft:water', 1000))
.outputFluids(Fluid.of('tfc_gurman:lemonade', 1000))
.duration(1500)
.EUt(8)
// Kvass
event.recipes.gtceu.food_processor('kvass')
.circuit(2)
.itemInputs('2x #tfc:foods/grains')
.inputFluids(Fluid.of('minecraft:water', 1000))
.outputFluids(Fluid.of('tfc_gurman:kvass', 1000))
.duration(2400)
.EUt(8)
// Tea Mint
event.recipes.gtceu.food_processor('tea_mint')
.circuit(2)
.itemInputs('tfc_gurman:dried_mint_leaves', 'tfc_gurman:dried_mint_leaves')
.inputFluids(Fluid.of('minecraft:water', 1000))
.outputFluids(Fluid.of('tfc_gurman:tea_mint', 1000))
.duration(300)
.EUt(8)
// Tea Chamomile
event.recipes.gtceu.food_processor('tea_chamomile')
.circuit(2)
.itemInputs('tfc_gurman:dried_chamomile_leaves', 'tfc_gurman:dried_chamomile_leaves')
.inputFluids(Fluid.of('minecraft:water', 1000))
.outputFluids(Fluid.of('tfc_gurman:tea_chamomile', 1000))
.duration(300)
.EUt(8)
// Tea Rosehip
event.recipes.gtceu.food_processor('tea_rosehip')
.circuit(2)
.itemInputs('tfc_gurman:dried_rosehip_leaves', 'tfc_gurman:dried_rosehip_leaves')
.inputFluids(Fluid.of('minecraft:water', 1000))
.outputFluids(Fluid.of('tfc_gurman:tea_rosehip', 1000))
.duration(300)
.EUt(8)
// Tea Nettle
event.recipes.gtceu.food_processor('tea_nettle')
.circuit(2)
.itemInputs('tfc_gurman:dried_nettle_leaves', 'tfc_gurman:dried_nettle_leaves')
.inputFluids(Fluid.of('minecraft:water', 1000))
.outputFluids(Fluid.of('tfc_gurman:tea_nettle', 1000))
.duration(300)
.EUt(8)
// Solyanka
event.recipes.gtceu.food_processor('solyanka')
.circuit(20)
.itemInputs('#tfc:foods/meats', 'tfc:food/cabbage', 'tfc:food/onion', 'tfc:food/tomato', 'tfc:food/olive')
.itemOutputs('3x tfc_gurman:solyanka')
.inputFluids(Fluid.of('minecraft:water', 1000))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/solyanka',
[Ingredient.of('#tfc:foods/meats'), Ingredient.of('tfc:food/cabbage'), Ingredient.of('tfc:food/onion'), Ingredient.of('tfc:food/tomato'), Ingredient.of('tfc:food/olive')],
TFC.isp.of('tfc_gurman:solyanka').copyFood().asCanonClass(),
[])
// Okroshka
event.recipes.gtceu.food_processor('okroshka')
.circuit(20)
.itemInputs('tfc:food/cabbage', 'tfc:food/tomato', 'tfc:food/potato', 'tfc:food/onion', 'minecraft:egg')
.itemOutputs('3x tfc_gurman:okroshka')
.inputFluids(Fluid.of('tfc_gurman:kvass', 1000))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/okroshka',
[Ingredient.of('tfc:food/cabbage'), Ingredient.of('tfc:food/tomato'), Ingredient.of('tfc:food/potato'), Ingredient.of('tfc:food/onion'), Ingredient.of('minecraft:egg')],
TFC.isp.of('tfc_gurman:okroshka').copyFood().asCanonClass(),
[])
// Zama
event.recipes.gtceu.food_processor('zama')
.circuit(20)
.itemInputs('tfc:food/chicken', 'tfc:food/carrot', 'tfc:food/onion', 'tfc:powder/salt', 'tfc:food/garlic')
.itemOutputs('3x tfc_gurman:zama')
.inputFluids(Fluid.of('minecraft:water', 1000))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/zama',
[Ingredient.of('tfc:food/chicken'), Ingredient.of('tfc:food/carrot'), Ingredient.of('tfc:food/onion'), Ingredient.of('tfc:powder/salt'), Ingredient.of('tfc:food/garlic')],
TFC.isp.of('tfc_gurman:zama').copyFood().asCanonClass(),
[])
// Curry
event.recipes.gtceu.food_processor('curry')
.circuit(16)
.itemInputs('#tfc:foods/cooked_meats', '#tfc:foods/vegetables', 'tfc:powder/salt', 'tfc:food/cooked_rice')
.itemOutputs('3x tfc_gurman:curry')
.inputFluids('#tfc:milks 1000')
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/curry',
[Ingredient.of('#tfc:foods/cooked_meats'), Ingredient.of('#tfc:foods/vegetables'), Ingredient.of('tfc:powder/salt'), Ingredient.of('tfc:food/cooked_rice')],
TFC.isp.of('tfc_gurman:curry').copyFood().asCanonClass(),
[])
// Goulash
event.recipes.gtceu.food_processor('goulash')
.circuit(16)
.itemInputs('#tfc:foods/raw_meats', 'tfc:food/onion', 'tfc:food/potato', 'tfc:powder/salt')
.itemOutputs('3x tfc_gurman:goulash')
.inputFluids(Fluid.of('minecraft:water', 100))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/goulash',
[Ingredient.of('#tfc:foods/raw_meats'), Ingredient.of('tfc:food/onion'), Ingredient.of('tfc:food/potato'), Ingredient.of('tfc:powder/salt')],
TFC.isp.of('tfc_gurman:goulash').copyFood().asCanonClass(),
[])
// Pho
event.recipes.gtceu.food_processor('pho')
.circuit(16)
.itemInputs('firmalife:food/cooked_pasta', '#tfc:foods/cooked_meats', 'tfc:food/garlic', 'tfc:powder/salt')
.itemOutputs('3x tfc_gurman:pho')
.inputFluids(Fluid.of('minecraft:water', 100))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/pho',
[Ingredient.of('firmalife:food/cooked_pasta'), Ingredient.of('#tfc:foods/cooked_meats'), Ingredient.of('tfc:food/garlic'), Ingredient.of('tfc:powder/salt')],
TFC.isp.of('tfc_gurman:pho').copyFood().asCanonClass(),
[])
// Bouillabaisse
event.recipes.gtceu.food_processor('bouillabaisse')
.circuit(16)
.itemInputs('#firmalife:foods/raw_fish', 'tfc:food/tomato', 'tfc:food/onion', 'tfc:food/garlic', 'tfc:powder/salt')
.itemOutputs('3x tfc_gurman:bouillabaisse')
.inputFluids(Fluid.of('minecraft:water', 1000))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/bouillabaisse',
[Ingredient.of('#firmalife:foods/raw_fish'), Ingredient.of('tfc:food/tomato'), Ingredient.of('tfc:food/onion'), Ingredient.of('tfc:food/garlic'), Ingredient.of('tfc:powder/salt')],
TFC.isp.of('tfc_gurman:bouillabaisse').copyFood().asCanonClass(),
[])
// Ramen with Beef
event.recipes.gtceu.food_processor('ramen_beef')
.circuit(21)
.itemInputs('firmalife:food/raw_egg_noodles', 'minecraft:egg', 'tfc:food/beef', 'tfc:food/onion')
.itemOutputs('2x tfc_gurman:ramen_with_beef')
.inputFluids(Fluid.of('minecraft:water', 1000))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/ramen_beef',
[Ingredient.of('firmalife:food/raw_egg_noodles'), Ingredient.of('minecraft:egg'), Ingredient.of('tfc:food/beef'), Ingredient.of('tfc:food/onion')],
TFC.isp.of('tfc_gurman:ramen_with_beef').copyFood().asCanonClass(),
[])
// Ramen with Camelidae
event.recipes.gtceu.food_processor('ramen_camelidae')
.circuit(21)
.itemInputs('firmalife:food/raw_egg_noodles', 'minecraft:egg', 'tfc:food/camelidae', 'tfc:food/onion')
.itemOutputs('2x tfc_gurman:ramen_with_camelidae')
.inputFluids(Fluid.of('minecraft:water', 1000))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/ramen_camelidae',
[Ingredient.of('firmalife:food/raw_egg_noodles'), Ingredient.of('minecraft:egg'), Ingredient.of('tfc:food/camelidae'), Ingredient.of('tfc:food/onion')],
TFC.isp.of('tfc_gurman:ramen_with_camelidae').copyFood().asCanonClass(),
[])
// Ramen with Chevon
event.recipes.gtceu.food_processor('ramen_chevon')
.circuit(21)
.itemInputs('firmalife:food/raw_egg_noodles', 'minecraft:egg', 'tfc:food/chevon', 'tfc:food/onion')
.itemOutputs('2x tfc_gurman:ramen_with_chevon')
.inputFluids(Fluid.of('minecraft:water', 1000))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/ramen_chevon',
[Ingredient.of('firmalife:food/raw_egg_noodles'), Ingredient.of('minecraft:egg'), Ingredient.of('tfc:food/chevon'), Ingredient.of('tfc:food/onion')],
TFC.isp.of('tfc_gurman:ramen_with_chevon').copyFood().asCanonClass(),
[])
// Ramen with Bacon
event.recipes.gtceu.food_processor('ramen_bacon')
.circuit(21)
.itemInputs('firmalife:food/raw_egg_noodles', 'minecraft:egg', 'firmalife:food/bacon', 'tfc:food/onion')
.itemOutputs('2x tfc_gurman:ramen_with_bacon')
.inputFluids(Fluid.of('minecraft:water', 1000))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/ramen_bacon',
[Ingredient.of('firmalife:food/raw_egg_noodles'), Ingredient.of('minecraft:egg'), Ingredient.of('firmalife:food/bacon'), Ingredient.of('tfc:food/onion')],
TFC.isp.of('tfc_gurman:ramen_with_bacon').copyFood().asCanonClass(),
[])
// Biryani
event.recipes.gtceu.food_processor('biryani')
.circuit(20)
.itemInputs('tfc:food/rice_grain', '#tfc:foods/meats', 'tfc:food/onion', 'tfc:food/carrot', 'tfc:food/tomato')
.itemOutputs('3x tfc_gurman:biryani')
.inputFluids(Fluid.of('minecraft:water', 1000))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/biryani',
[Ingredient.of('tfc:food/rice_grain'), Ingredient.of('#tfc:foods/meats'), Ingredient.of('tfc:food/onion'), Ingredient.of('tfc:food/carrot'), Ingredient.of('tfc:food/tomato')],
TFC.isp.of('tfc_gurman:biryani').copyFood().asCanonClass(),
[])
// Fried Rice
event.recipes.gtceu.food_processor('fried_rice')
.circuit(16)
.itemInputs('tfc:food/cooked_rice', '#forge:eggs', '#tfc:foods/vegetables', 'tfc:powder/salt')
.itemOutputs('3x tfc_gurman:fried_rice')
.inputFluids(Fluid.of('minecraft:water', 100))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/fried_rice',
[Ingredient.of('tfc:food/cooked_rice'), Ingredient.of('#forge:eggs'), Ingredient.of('#tfc:foods/vegetables'), Ingredient.of('tfc:powder/salt')],
TFC.isp.of('tfc_gurman:fried_rice').copyFood().asCanonClass(),
[])
// Kimchi
event.recipes.gtceu.food_processor('kimchi')
.circuit(20)
.itemInputs('tfc:food/cabbage', 'tfc:food/carrot', 'tfc:food/onion', 'tfc:food/garlic', 'tfc:powder/salt')
.itemOutputs('3x tfc_gurman:kimchi')
.inputFluids(Fluid.of('minecraft:water', 1000))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/kimchi',
[Ingredient.of('tfc:food/cabbage'), Ingredient.of('tfc:food/carrot'), Ingredient.of('tfc:food/onion'), Ingredient.of('tfc:food/garlic'), Ingredient.of('tfc:powder/salt')],
TFC.isp.of('tfc_gurman:kimchi').copyFood().asCanonClass(),
[])
// Dolma
event.recipes.gtceu.food_processor('dolma')
.circuit(16)
.itemInputs('#tfc:foods/meats', 'tfc:food/rice_grain', 'tfc:powder/salt')
.itemOutputs('2x tfc_gurman:dolma')
.inputFluids(Fluid.of('minecraft:water', 1000))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/dolma',
[Ingredient.of('#tfc:foods/meats'), Ingredient.of('tfc:food/rice_grain'), Ingredient.of('tfc:powder/salt')],
TFC.isp.of('tfc_gurman:dolma').copyFood().asCanonClass(),
[])
// Spaghetti Bolognese
event.recipes.gtceu.food_processor('spaghetti_bolognese')
.circuit(18)
.itemInputs('firmalife:food/cooked_pasta', '#tfc:foods/cooked_meats', 'tfc:food/tomato', 'tfc:food/onion', 'tfc:food/garlic')
.itemOutputs('3x tfc_gurman:spaghetti_bolognese')
.inputFluids(Fluid.of('minecraft:water', 500))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/spaghetti_bolognese',
[Ingredient.of('firmalife:food/cooked_pasta'), Ingredient.of('#tfc:foods/cooked_meats'), Ingredient.of('tfc:food/tomato'), Ingredient.of('tfc:food/onion'), Ingredient.of('tfc:food/garlic')],
TFC.isp.of('tfc_gurman:spaghetti_bolognese').copyFood().asCanonClass(),
[])
// Pasta Carbonara
event.recipes.gtceu.food_processor('pasta_carbonara')
.circuit(18)
.itemInputs('firmalife:food/cooked_pasta', 'firmalife:food/bacon', 'minecraft:egg', 'firmalife:food/shredded_cheese', 'tfc:powder/salt')
.itemOutputs('3x tfc_gurman:pasta_carbonara')
.inputFluids(Fluid.of('minecraft:water', 500))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/pasta_carbonara',
[Ingredient.of('firmalife:food/cooked_pasta'), Ingredient.of('firmalife:food/bacon'), Ingredient.of('minecraft:egg'), Ingredient.of('firmalife:food/shredded_cheese'), Ingredient.of('tfc:powder/salt')],
TFC.isp.of('tfc_gurman:pasta_carbonara').copyFood().asCanonClass(),
[])
// Ratatouille
event.recipes.gtceu.food_processor('ratatouille')
.circuit(18)
.itemInputs('tfc:food/tomato', 'tfc:food/pumpkin_chunks', 'tfc:food/carrot', 'tfc:food/onion', 'tfc:food/garlic')
.itemOutputs('3x tfc_gurman:ratatouille')
.inputFluids(Fluid.of('minecraft:water', 500))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/ratatouille',
[Ingredient.of('tfc:food/tomato'), Ingredient.of('tfc:food/pumpkin_chunks'), Ingredient.of('tfc:food/carrot'), Ingredient.of('tfc:food/onion'), Ingredient.of('tfc:food/garlic')],
TFC.isp.of('tfc_gurman:ratatouille').copyFood().asCanonClass(),
[])
// Risotto
event.recipes.gtceu.food_processor('risotto')
.circuit(18)
.itemInputs('tfc:food/rice_grain', '#firmalife:foods/cheeses', '#tfc:foods/vegetables')
.itemOutputs('3x tfc_gurman:risotto')
.inputFluids(Fluid.of('minecraft:water', 100))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/risotto',
[Ingredient.of('tfc:food/rice_grain'), Ingredient.of('#firmalife:foods/cheeses'), Ingredient.of('#tfc:foods/vegetables')],
TFC.isp.of('tfc_gurman:risotto').copyFood().asCanonClass(),
[])
// Porridge
event.recipes.gtceu.food_processor('porridge')
.circuit(18)
.itemInputs('#tfc:foods/grains', 'tfc:powder/salt')
.itemOutputs('tfc_gurman:porridge')
.inputFluids(Fluid.of('minecraft:water', 250))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/porridge',
[Ingredient.of('#tfc:foods/grains'), Ingredient.of('tfc:powder/salt')],
TFC.isp.of('tfc_gurman:porridge').copyFood().asCanonClass(),
[])
// Mamaliga
event.recipes.gtceu.food_processor('mamaliga')
.circuit(16)
.itemInputs('tfc:food/maize_grain', 'tfc:powder/salt')
.itemOutputs('tfc_gurman:mamaliga')
.inputFluids(Fluid.of('minecraft:water', 250))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/mamaliga',
[Ingredient.of('tfc:food/maize_grain'), Ingredient.of('tfc:powder/salt')],
TFC.isp.of('tfc_gurman:mamaliga').copyFood().asCanonClass(),
[])
event.recipes.gtceu.food_processor('mamaliga_2')
.circuit(16)
.itemInputs('tfc:food/maize_grain', 'tfc:food/maize_grain', 'tfc:powder/salt')
.itemOutputs('2x tfc_gurman:mamaliga')
.inputFluids(Fluid.of('minecraft:water', 250))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/mamaliga_2',
[Ingredient.of('tfc:food/maize_grain'), Ingredient.of('tfc:powder/salt')],
TFC.isp.of('tfc_gurman:mamaliga').copyFood().asCanonClass(),
[])
event.recipes.gtceu.food_processor('mamaliga_3')
.circuit(16)
.itemInputs('tfc:food/maize_grain', 'tfc:food/maize_grain', 'tfc:food/maize_grain', 'tfc:powder/salt')
.itemOutputs('3x tfc_gurman:mamaliga')
.inputFluids(Fluid.of('minecraft:water', 250))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/mamaliga_3',
[Ingredient.of('tfc:food/maize_grain'), Ingredient.of('tfc:powder/salt')],
TFC.isp.of('tfc_gurman:mamaliga').copyFood().asCanonClass(),
[])
event.recipes.gtceu.food_processor('mamaliga_4')
.circuit(16)
.itemInputs('tfc:food/maize_grain', 'tfc:food/maize_grain', 'tfc:food/maize_grain', 'tfc:food/maize_grain', 'tfc:powder/salt')
.itemOutputs('4x tfc_gurman:mamaliga')
.inputFluids(Fluid.of('minecraft:water', 250))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/mamaliga_4',
[Ingredient.of('tfc:food/maize_grain'), Ingredient.of('tfc:powder/salt')],
TFC.isp.of('tfc_gurman:mamaliga').copyFood().asCanonClass(),
[])
// Adjika
event.recipes.gtceu.food_processor('adjika')
.circuit(8)
.itemInputs('tfc:food/green_bell_pepper', 'tfc:food/red_bell_pepper', 'tfc:powder/salt', 'tfc:food/garlic', 'firmalife:plant/cilantro')
.itemOutputs('5x tfc_gurman:adjika')
.inputFluids(Fluid.of('minecraft:water', 500))
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/adjika',
[Ingredient.of('tfc:food/green_bell_pepper'), Ingredient.of('tfc:food/red_bell_pepper'), Ingredient.of('tfc:powder/salt'), Ingredient.of('tfc:food/garlic'), Ingredient.of('firmalife:plant/cilantro')],
TFC.isp.of('tfc_gurman:adjika').copyFood().asCanonClass(),
[])
//#endregion
// #region Drying
event.recipes.gtceu.food_processor("dried_mint")
.itemInputs("tfc:plant/foxglove")
.itemOutputs("tfc_gurman:dried_mint_leaves")
.inputFluids(Fluid.of('gtceu:nitrogen', 100))
.EUt(8)
.duration(200)
.circuit(6)
.addDataString("action", "tfg.food_recipe.drying")
event.recipes.gtceu.food_processor("dried_chamomile")
.itemInputs("tfc:plant/lilac")
.itemOutputs("tfc_gurman:dried_chamomile_leaves")
.inputFluids(Fluid.of('gtceu:nitrogen', 100))
.EUt(8)
.duration(200)
.circuit(6)
.addDataString("action", "tfg.food_recipe.drying")
event.recipes.gtceu.food_processor("dried_rosehip")
.itemInputs("tfc:plant/rose")
.itemOutputs("tfc_gurman:dried_rosehip_leaves")
.inputFluids(Fluid.of('gtceu:nitrogen', 100))
.EUt(8)
.duration(200)
.circuit(6)
.addDataString("action", "tfg.food_recipe.drying")
event.recipes.gtceu.food_processor("dried_nettle")
.itemInputs("tfc:plant/trillium")
.itemOutputs("tfc_gurman:dried_nettle_leaves")
.inputFluids(Fluid.of('gtceu:nitrogen', 100))
.EUt(8)
.duration(200)
.circuit(6)
.addDataString("action", "tfg.food_recipe.drying")
// #endregion Drying
// #region Crafting table foods
event.recipes.gtceu.food_processor('margarita_pizza')
.circuit(4)
.itemInputs('firmalife:food/pizza_dough', 'firmalife:food/shredded_cheese', 'tfc:food/tomato', 'tfc:food/red_bell_pepper', 'tfc_gurman:plant_mix', 'firmalife:food/tomato_sauce')
.itemOutputs('tfc_gurman:raw_margarita_pizza')
.duration(300)
.EUt(8)
$ISPRecipeLogic.RegisterRecipeData('food_processor/margarita_pizza',
[Ingredient.of('firmalife:food/pizza_dough'), Ingredient.of('firmalife:food/shredded_cheese'), Ingredient.of('tfc:food/tomato'), Ingredient.of('tfc:food/red_bell_pepper'), Ingredient.of('tfc_gurman:plant_mix'), Ingredient.of('firmalife:food/tomato_sauce')],
TFC.isp.of('tfc_gurman:raw_margarita_pizza').copyFood().asCanonClass(),
[])
// #endregion
// #region Replacements
event.replaceInput({ id: "tfc_gurman:crafting/tiramisu" }, "minecraft:sugar", "#tfg:sugars");
event.shapeless('4x tfc_gurman:raw_takoyaki', ['tfg:food/raw_crawlermari', '#tfc:foods/flour', '#forge:eggs', 'tfc:powder/salt']);
// #endregion
// TODO:
// buffs for the various drinks?
}

View file

@ -260,38 +260,55 @@ function registerTFGFoodRecipes(event) {
global.TFC_CURDS_AND_CHEESES.forEach(item => { global.TFC_CURDS_AND_CHEESES.forEach(item => {
processorRecipe(`${item.curd}_curd`, 1200, 16, { event.recipes.gtceu.fermenter(`tfg:curdled_${item.id}`)
.inputFluids(Fluid.of(item.milk, 2000))
.itemInputs('firmalife:rennet')
.outputFluids(Fluid.of(item.curdled_fluid, 2000))
.duration(2400)
.EUt(16)
event.recipes.gtceu.mixer(`lactose_milk_${item.id}`)
.circuit(1)
.inputFluids(Fluid.of(item.milk, 1000), Fluid.of('gtceu:acetic_acid', 25))
.itemOutputs('1x gtceu:lactose_dust')
.outputFluids(Fluid.of(item.curdled_fluid, 1000))
.duration(300)
.EUt(GTValues.VA[GTValues.LV])
processorRecipe(`${item.id}_curd`, 1200, 16, {
itemOutputs: [item.curd], itemOutputs: [item.curd],
fluidInputs: [Fluid.of(item.input_fluid, 1000)], fluidInputs: [Fluid.of(item.curdled_fluid, 1000)],
itemOutputProvider: TFC.isp.of(item.curd).resetFood() itemOutputProvider: TFC.isp.of(item.curd).resetFood()
}) })
processorRecipe(`${item.cheese1}_cheese_wheel_1`, 8000, 16, { processorRecipe(`${item.id}_unsalted_cheese_wheel`, 8000, 16, {
itemInputs: [`3x ${item.curd}`], itemInputs: [`3x ${item.curd}`],
itemOutputs: [`firmalife:${item.cheese1}_wheel`], itemOutputs: [item.unsalted_wheel],
fluidInputs: [Fluid.of('tfc:salt_water', 750)], fluidInputs: [Fluid.of('tfc:salt_water', 750)],
itemOutputProvider: TFC.isp.of(`firmalife:${item.cheese1}_wheel`).copyOldestFood() itemOutputProvider: TFC.isp.of(item.unsalted_wheel).copyOldestFood()
}) })
processorRecipe(`${item.cheese2}_cheese_wheel_2`, 1000, 16, { processorRecipe(`${item.id}_unsalted_cheese_cutting`, 100, 8, {
itemInputs: [item.unsalted_wheel],
itemOutputs: [`4x ${item.unsalted_cheese}`],
itemOutputProvider: TFC.isp.of(`4x ${item.unsalted_cheese}`).copyOldestFood()
})
if (item.salted_wheel === null || item.salted_cheese === null)
return;
processorRecipe(`${item.id}_salted_cheese_wheel`, 1000, 16, {
circuit: 2, circuit: 2,
itemInputs: [`3x ${item.curd}`, `6x tfc:powder/salt`], itemInputs: [`3x ${item.curd}`, `6x tfc:powder/salt`],
itemOutputs: [`firmalife:${item.cheese2}_wheel`], itemOutputs: [item.salted_wheel],
itemOutputProvider: TFC.isp.of(`firmalife:${item.cheese2}_wheel`).copyOldestFood() itemOutputProvider: TFC.isp.of(item.salted_wheel).copyOldestFood()
}) })
processorRecipe(`${item.cheese1}_cheese_cutting_1`, 100, 8, { processorRecipe(`${item.id}_salted_cheese_cutting`, 100, 8, {
itemInputs: [`firmalife:${item.cheese1}_wheel`], itemInputs: [item.salted_wheel],
itemOutputs: [`4x firmalife:food/${item.cheese1}`], itemOutputs: [`4x ${item.salted_cheese}`],
itemOutputProvider: TFC.isp.of(`4x firmalife:food/${item.cheese1}`).copyOldestFood() itemOutputProvider: TFC.isp.of(`4x ${item.salted_cheese}`).copyOldestFood()
}) })
processorRecipe(`${item.cheese2}_cheese_cutting_2`, 100, 8, {
itemInputs: [`firmalife:${item.cheese2}_wheel`],
itemOutputs: [`4x firmalife:food/${item.cheese2}`],
itemOutputProvider: TFC.isp.of(`4x firmalife:food/${item.cheese2}`).copyOldestFood()
})
}) })
// Milks // Milks
@ -670,6 +687,7 @@ function registerTFGFoodRecipes(event) {
//#region Pizza //#region Pizza
processorRecipe("pizza_no_extra", 600, 16, { processorRecipe("pizza_no_extra", 600, 16, {
circuit: 3,
itemInputs: ["firmalife:food/pizza_dough", "firmalife:food/tomato_sauce", "firmalife:food/shredded_cheese"], itemInputs: ["firmalife:food/pizza_dough", "firmalife:food/tomato_sauce", "firmalife:food/shredded_cheese"],
itemOutputs: ["firmalife:food/raw_pizza"], itemOutputs: ["firmalife:food/raw_pizza"],
itemOutputProvider: TFC.isp.of("firmalife:food/raw_pizza").meal( itemOutputProvider: TFC.isp.of("firmalife:food/raw_pizza").meal(
@ -678,7 +696,7 @@ function registerTFGFoodRecipes(event) {
) )
}) })
processorRecipe("pizza_1_extra", 600, 16, { processorRecipe("pizza_1_extra", 600, GTValues.VHA[GTValues.MV], {
circuit: 1, circuit: 1,
itemInputs: ["firmalife:food/pizza_dough", "firmalife:food/tomato_sauce", "firmalife:food/shredded_cheese", "#firmalife:foods/pizza_ingredients"], itemInputs: ["firmalife:food/pizza_dough", "firmalife:food/tomato_sauce", "firmalife:food/shredded_cheese", "#firmalife:foods/pizza_ingredients"],
itemOutputs: ["firmalife:food/raw_pizza"], itemOutputs: ["firmalife:food/raw_pizza"],
@ -688,7 +706,7 @@ function registerTFGFoodRecipes(event) {
) )
}) })
processorRecipe("pizza_2_extra", 600, 16, { processorRecipe("pizza_2_extra", 600, GTValues.VHA[GTValues.MV], {
circuit: 2, circuit: 2,
itemInputs: ["firmalife:food/pizza_dough", "firmalife:food/tomato_sauce", "firmalife:food/shredded_cheese", "2x #firmalife:foods/pizza_ingredients"], itemInputs: ["firmalife:food/pizza_dough", "firmalife:food/tomato_sauce", "firmalife:food/shredded_cheese", "2x #firmalife:foods/pizza_ingredients"],
itemOutputs: ["firmalife:food/raw_pizza"], itemOutputs: ["firmalife:food/raw_pizza"],
@ -1111,27 +1129,6 @@ function registerTFGFoodRecipes(event) {
.EUt(GTValues.VA[GTValues.ULV]) .EUt(GTValues.VA[GTValues.ULV])
.duration(600) .duration(600)
event.recipes.gtceu.fermenter('tfg:fermenter/curdled_milk')
.inputFluids(Fluid.of('minecraft:milk', 2000))
.itemInputs('firmalife:rennet')
.outputFluids(Fluid.of('tfc:curdled_milk', 2000))
.duration(2400)
.EUt(16)
event.recipes.gtceu.fermenter('tfg:fermenter/curdled_yak_milk')
.inputFluids(Fluid.of('firmalife:yak_milk', 2000))
.itemInputs('firmalife:rennet')
.outputFluids(Fluid.of('firmalife:curdled_yak_milk', 2000))
.duration(2400)
.EUt(16)
event.recipes.gtceu.fermenter('tfg:fermenter/curdled_goat_milk')
.inputFluids(Fluid.of('firmalife:goat_milk', 2000))
.itemInputs('firmalife:rennet')
.outputFluids(Fluid.of('firmalife:curdled_goat_milk', 2000))
.duration(2400)
.EUt(16)
// GT cocoa dust compat // GT cocoa dust compat
event.recipes.gtceu.macerator('firmalife:food/cocoa_powder') event.recipes.gtceu.macerator('firmalife:food/cocoa_powder')
.itemInputs('gtceu:cocoa_dust') .itemInputs('gtceu:cocoa_dust')

View file

@ -108,31 +108,6 @@ function registerTFGMiscellaneousRecipes(event) {
.id('tfg:knapping/decorative_vase/unfired') .id('tfg:knapping/decorative_vase/unfired')
// lactose & curd
event.recipes.gtceu.mixer('lactose_milk_cow')
.circuit(1)
.inputFluids(Fluid.of('minecraft:milk', 1000), Fluid.of('gtceu:acetic_acid', 25))
.itemOutputs('1x gtceu:lactose_dust')
.outputFluids(Fluid.of('tfc:curdled_milk', 1000))
.duration(300)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer('lactose_milk_yak')
.circuit(1)
.inputFluids(Fluid.of('firmalife:yak_milk', 1000), Fluid.of('gtceu:acetic_acid', 25))
.itemOutputs('1x gtceu:lactose_dust')
.outputFluids(Fluid.of('firmalife:curdled_yak_milk', 1000))
.duration(300)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer('lactose_milk_goat')
.circuit(1)
.inputFluids(Fluid.of('firmalife:goat_milk', 1000), Fluid.of('gtceu:acetic_acid', 25))
.itemOutputs('1x gtceu:lactose_dust')
.outputFluids(Fluid.of('firmalife:curdled_goat_milk', 1000))
.duration(300)
.EUt(GTValues.VA[GTValues.LV])
//Scaffolding Frame //Scaffolding Frame
event.shaped('tfg:scaffolding_frame', event.shaped('tfg:scaffolding_frame',
[ [

View file

@ -363,7 +363,10 @@ const registerTFGItemTags = (event) => {
const cheeseCurds = [ const cheeseCurds = [
'firmalife:food/yak_curd', 'firmalife:food/yak_curd',
'firmalife:food/goat_curd', 'firmalife:food/goat_curd',
'firmalife:food/milk_curd' 'firmalife:food/milk_curd',
'tfc_gurman:ox_curd',
'tfc_gurman:sheep_curd',
'tfc_gurman:alpaca_curd'
]; ];
cheeseCurds.forEach(item => { cheeseCurds.forEach(item => {
event.add('tfg:foods/cheese_curds', item); event.add('tfg:foods/cheese_curds', item);
@ -478,7 +481,13 @@ const registerTFGItemTags = (event) => {
'firmalife:food/toast', 'firmalife:food/toast',
'firmalife:food/toast_with_butter', 'firmalife:food/toast_with_butter',
'firmalife:food/toast_with_jam', 'firmalife:food/toast_with_jam',
'firmalife:food/butter' 'firmalife:food/butter',
'tfc_gurman:adjika',
'tfc_gurman:tzatziki',
'tfc_gurman:falafel',
'tfc_gurman:hummus',
'tfc_gurman:sauerkraut',
'tfc_gurman:bratwurst'
]; ];
usable_in_meal_bag.forEach(item => { usable_in_meal_bag.forEach(item => {
event.add('tfg:foods/usable_in_meal_bag', item); event.add('tfg:foods/usable_in_meal_bag', item);

View file

@ -1048,9 +1048,36 @@ global.TFC_MILKS = /** @type {const} */ ([
]); ]);
global.TFC_CURDS_AND_CHEESES = /** @type {const} */ ([ global.TFC_CURDS_AND_CHEESES = /** @type {const} */ ([
{ id: "milk", input_fluid: "tfc:curdled_milk", curd: "firmalife:food/milk_curd", cheese1: "gouda", cheese2: "cheddar"}, {
{ id: "yak", input_fluid: "firmalife:curdled_yak_milk", curd: "firmalife:food/yak_curd", cheese1: "shosha", cheese2: "rajya_metok"}, id: "cow", milk: "minecraft:milk", curdled_fluid: "tfc:curdled_milk", curd: "firmalife:food/milk_curd",
{ id: "goat", input_fluid: "firmalife:curdled_goat_milk", curd: "firmalife:food/goat_curd", cheese1: "feta", cheese2: "chevre"} unsalted_cheese: "firmalife:food/gouda", unsalted_wheel: "firmalife:gouda_wheel",
salted_cheese: "firmalife:food/cheddar", salted_wheel: "firmalife:cheddar_wheel"
},
{
id: "yak", milk: "firmalife:yak_milk", curdled_fluid: "firmalife:curdled_yak_milk", curd: "firmalife:food/yak_curd",
unsalted_cheese: "firmalife:food/shosha", unsalted_wheel: "firmalife:shosha_wheel",
salted_cheese: "firmalife:food/rajya_metok", salted_wheel: "firmalife:rajya_metok_wheel"
},
{
id: "goat", milk: "firmalife:goat_milk", curdled_fluid: "firmalife:curdled_goat_milk", curd: "firmalife:food/goat_curd",
unsalted_cheese: "firmalife:food/feta", unsalted_wheel: "firmalife:feta_wheel",
salted_cheese: "firmalife:food/chevre", salted_wheel: "firmalife:chevre_wheel"
},
{
id: "ox", milk: "tfc_gurman:ox_milk", curdled_fluid: "tfc_gurman:curdled_ox_milk", curd: "tfc_gurman:ox_curd",
unsalted_cheese: "tfc_gurman:ox_brinza_slice", unsalted_wheel: "tfc_gurman:ox_brinza_wheel",
salted_cheese: null, salted_wheel: null
},
{
id: "sheep", milk: "tfc_gurman:sheep_milk", curdled_fluid: "tfc_gurman:curdled_sheep_milk", curd: "tfc_gurman:sheep_curd",
unsalted_cheese: "tfc_gurman:sheep_brinza_slice", unsalted_wheel: "tfc_gurman:sheep_brinza_wheel",
salted_cheese: null, salted_wheel: null
},
{
id: "alpaca", milk: "tfc_gurman:alpaca_milk", curdled_fluid: "tfc_gurman:curdled_alpaca_milk", curd: "tfc_gurman:alpaca_curd",
unsalted_cheese: "tfc_gurman:alpaca_brinza_slice", unsalted_wheel: "tfc_gurman:alpaca_brinza_wheel",
salted_cheese: null, salted_wheel: null
}
]); ]);
global.TFC_DRY_MUD_BRICKS = /** @type {const} */ ([ global.TFC_DRY_MUD_BRICKS = /** @type {const} */ ([