This commit is contained in:
Pyritie 2025-05-21 20:59:36 +01:00
commit ae4abcadec
207 changed files with 2521 additions and 1286 deletions

View file

@ -170,20 +170,20 @@ const registerAFCRecipes = (event) => {
event.recipes.gtceu.extractor('latex_from_log')
.itemInputs('4x #tfg:latex_logs')
.outputFluids(Fluid.of('tfg:latex', 1000))
.itemInputs('#tfg:latex_logs')
.outputFluids(Fluid.of('tfg:latex', 250))
.duration(600)
.EUt(20)
event.recipes.gtceu.extractor('latex_from_sapling')
.itemInputs('10x #tfg:rubber_saplings')
.outputFluids(Fluid.of('tfg:latex', 1000))
.itemInputs('#tfg:rubber_saplings')
.outputFluids(Fluid.of('tfg:latex', 100))
.duration(750)
.EUt(20)
event.recipes.gtceu.extractor('latex_from_leaves')
.itemInputs('20x #tfg:rubber_leaves')
.outputFluids(Fluid.of('tfg:latex', 1000))
.itemInputs('#tfg:rubber_leaves')
.outputFluids(Fluid.of('tfg:latex', 50))
.duration(750)
.EUt(20)

View file

@ -1449,6 +1449,7 @@ const registerCreateRecipes = (event) => {
.itemOutputs('create:windmill_bearing')
.duration(50)
.EUt(GTValues.VA[GTValues.ULV])
.circuit(1)
// #endregion
@ -1848,6 +1849,7 @@ const registerCreateRecipes = (event) => {
.itemOutputs('create:gantry_carriage')
.duration(50)
.EUt(GTValues.VA[GTValues.ULV])
.circuit(2)
event.shaped('create:weighted_ejector', [
' B ',

View file

@ -80,6 +80,12 @@ const registerCreateBlockTags = (event) => {
// Disable bulk blasting
event.removeAll('create:fan_processing_catalysts/blasting')
// Waters for bulk washing
event.add('create:fan_processing_catalysts/splashing', 'tfc:fluid/river_water')
event.add('create:fan_processing_catalysts/splashing', 'tfc:fluid/salt_water')
event.add('create:fan_processing_catalysts/splashing', 'tfc:fluid/spring_water')
// Lets the basin be put on top of a charcoal forge
event.add('tfc:forge_invisible_whitelist', 'create:basin')
}
@ -96,4 +102,9 @@ const registerCreateFluidTags = (event) => {
// Disable bulk blasting
event.removeAll('create:fan_processing_catalysts/blasting')
// Waters for bulk washing
event.add('create:fan_processing_catalysts/splashing', 'tfc:river_water')
event.add('create:fan_processing_catalysts/splashing', 'tfc:salt_water')
event.add('create:fan_processing_catalysts/splashing', 'tfc:spring_water')
}

View file

@ -1,4 +1,6 @@
const registerCreatedecoItemTags = (event) => {
const metalBars = ['andesite', 'brass', 'iron', 'copper', 'industrial_iron', 'zinc'];
const registerCreateDecoItemTags = (event) => {
//#region Hidden Items
global.CREATEDECO_DISABLED_ITEMS.forEach(item => {
@ -10,8 +12,6 @@ const registerCreatedecoItemTags = (event) => {
event.remove('createdeco:internal/blocks/iron_blocks', '#forge:storage_blocks/iron')
//#region Apply Tags
const metalBars = ['andesite', 'brass', 'iron', 'copper', 'industrial_iron', 'zinc'];
metalBars.forEach(metalBars => {
event.add('tfg:metal_bars', `createdeco:${metalBars}_bars`)
event.add('tfg:metal_bars', `createdeco:${metalBars}_bars_overlay`)
@ -45,4 +45,12 @@ const registerCreatedecoItemTags = (event) => {
event.add("createdeco:internal/blocks/zinc_blocks", "#forge:storage_blocks/zinc")
event.add("createdeco:internal/blocks/andesite_blocks", "#forge:storage_blocks/tin_alloy")
//#endregion
};
};
const registerCreateDecoBlockTags = (event) => {
metalBars.forEach(metalBars => {
// The bars are missing mineable tags for some reason
event.add('minecraft:mineable/pickaxe', `createdeco:${metalBars}_bars`)
event.add('minecraft:mineable/pickaxe', `createdeco:${metalBars}_bars_overlay`)
});
}

View file

@ -164,7 +164,6 @@ const registerDomumOrnamentumBlockTags = (event) => {
event.add('domum_ornamentum:timber_frames_center', `${material}`)
event.add('domum_ornamentum:timber_frames_frame', `${material}`)
event.add('domum_ornamentum:trapdoors_materials', `${material}`)
event.add('domum_ornamentum:framed_light_center', `${material}`)
});
// Gregtech storage blocks don't work here

View file

@ -4,5 +4,14 @@ function registerEndermanOverhaulRecipes(event) {
event.remove({ id: 'endermanoverhaul:corrupted_shield' })
event.remove({ id: 'endermanoverhaul:corrupted_blade' })
event.shapeless('ae2:ender_dust', ['#forge:ender_pearls', '#forge:tools/mortars'])
.id('tfg:shapeless/mortar_ender_pearls')
event.recipes.gtceu.macerator('tfg:macerate_ender_pearls')
.itemInputs('#forge:ender_pearls')
.itemOutputs('ae2:ender_dust')
.category(GTRecipeCategories.MACERATOR_RECYCLING)
.duration(50)
.EUt(GTValues.VA[GTValues.ULV])
}

View file

@ -447,15 +447,19 @@ const registerFirmaLifeRecipes = (event) => {
//#region Смешивание в миске
// Тесто для пиццы
event.recipes.gtceu.mixer('firmalife:food/pizza_dough')
event.recipes.gtceu.mixer('firmalife:food/pizza_dough_olive_oil')
.itemInputs('firmalife:spice/basil_leaves', '#tfc:foods/dough', 'tfc:powder/salt')
.inputFluids(Fluid.of('tfc:olive_oil', 1000))
.itemOutputs('4x firmalife:food/pizza_dough')
.duration(300)
.EUt(16)
event.recipes.create.mixing('4x firmalife:food/pizza_dough', ['firmalife:spice/basil_leaves', '#tfc:foods/dough', 'tfc:powder/salt', Fluid.of('tfc:olive_oil', 1000)])
.id('firmalife:create/mixer/food/pizza_dough')
event.recipes.gtceu.mixer('firmalife:food/pizza_dough_soybean_oil')
.itemInputs('firmalife:spice/basil_leaves', '#tfc:foods/dough', 'tfc:powder/salt')
.inputFluids(Fluid.of('firmalife:soybean_oil', 1000))
.itemOutputs('4x firmalife:food/pizza_dough')
.duration(300)
.EUt(16)
// Vanilla Ice Cream
event.recipes.gtceu.mixer('firmalife:food/vanilla_ice_cream')
@ -465,9 +469,6 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('2x firmalife:food/vanilla_ice_cream', ['firmalife:ice_shavings', '#tfc:sweetener', 'firmalife:spice/vanilla', Fluid.of('firmalife:cream', 1000)])
.id('firmalife:create/mixer/food/vanilla_ice_cream')
// Pumpkin Pie Dough
event.recipes.gtceu.mixer('firmalife:food/pumpkin_pie_dough')
.itemInputs('#tfc:sweetener', '#forge:eggs', '2x tfc:food/pumpkin_chunks', '#tfc:foods/flour')
@ -477,9 +478,6 @@ const registerFirmaLifeRecipes = (event) => {
.EUt(16)
.circuit(2)
event.recipes.create.mixing('firmalife:food/pumpkin_pie_dough', ['#tfc:sweetener', '#forge:eggs', '2x tfc:food/pumpkin_chunks', '#tfc:foods/flour', Fluid.of('minecraft:water', 1000)]
).id('firmalife:create/mixer/food/pumpkin_pie_dough')
// Butter
event.recipes.gtceu.mixer('firmalife:food/butter')
.itemInputs('tfc:powder/salt')
@ -488,9 +486,6 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('firmalife:food/butter', ['tfc:powder/salt', Fluid.of('firmalife:cream', 1000)])
.id('firmalife:create/mixer/food/butter')
// Pie Dough
event.recipes.gtceu.mixer('firmalife:food/pie_dough')
.itemInputs('#tfc:sweetener', 'firmalife:food/butter', '#tfc:foods/flour')
@ -500,9 +495,6 @@ const registerFirmaLifeRecipes = (event) => {
.EUt(16)
.circuit(2)
event.recipes.create.mixing('firmalife:food/pie_dough', ['#tfc:sweetener', 'firmalife:food/butter', '#tfc:foods/flour', Fluid.of('minecraft:water', 1000)])
.id('firmalife:create/mixer/food/pie_dough')
// Cookie Dough
event.recipes.gtceu.mixer('firmalife:food/cookie_dough')
.itemInputs('#tfc:sweetener', 'firmalife:food/butter', '#tfc:foods/flour', '#forge:eggs', 'firmalife:spice/vanilla')
@ -510,9 +502,6 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('4x firmalife:food/cookie_dough', ['#tfc:sweetener', 'firmalife:food/butter', '#tfc:foods/flour', '#forge:eggs', 'firmalife:spice/vanilla'])
.id('firmalife:create/mixer/food/cookie_dough')
// Hardtack Dough
event.recipes.gtceu.mixer('firmalife:food/hardtack_dough')
.itemInputs('tfc:powder/salt', '#tfc:foods/flour')
@ -522,9 +511,6 @@ const registerFirmaLifeRecipes = (event) => {
.EUt(16)
.circuit(2)
event.recipes.create.mixing('4x firmalife:food/hardtack_dough', ['tfc:powder/salt', '#tfc:foods/flour', Fluid.of('minecraft:water', 1000)])
.id('firmalife:create/mixer/food/hardtack_dough')
// Yeast starter
event.recipes.gtceu.mixer('firmalife:yeast_starter')
.inputFluids(Fluid.of('firmalife:yeast_starter', 100))
@ -534,9 +520,6 @@ const registerFirmaLifeRecipes = (event) => {
.EUt(8)
.circuit(1)
event.recipes.create.mixing(Fluid.of('firmalife:yeast_starter', 600), ['#tfc:foods/flour', Fluid.of('firmalife:yeast_starter', 100)])
.id('firmalife:create/mixer/yeast_starter')
// Cocoa Powder
event.recipes.gtceu.macerator('firmalife:food/cocoa_powder')
.itemInputs('gtceu:cocoa_dust')
@ -558,9 +541,6 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('firmalife:food/chocolate_ice_cream', ['firmalife:food/vanilla_ice_cream', Fluid.of('firmalife:chocolate', 1000)])
.id('firmalife:create/mixer/food/chocolate_ice_cream')
// White Chocolate Blend
event.recipes.gtceu.mixer('firmalife:food/white_chocolate_blend/milk')
.itemInputs('2x firmalife:food/cocoa_butter', '#tfc:sweetener')
@ -569,9 +549,6 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('2x firmalife:food/white_chocolate_blend', ['2x firmalife:food/cocoa_butter', '#tfc:sweetener', Fluid.of('minecraft:milk', 1000)])
.id('firmalife:create/mixer/food/white_chocolate_blend/milk')
event.recipes.gtceu.mixer('firmalife:food/white_chocolate_blend/yak_milk')
.itemInputs('2x firmalife:food/cocoa_butter', '#tfc:sweetener')
.inputFluids(Fluid.of('firmalife:yak_milk', 1000))
@ -579,9 +556,6 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('2x firmalife:food/white_chocolate_blend', ['2x firmalife:food/cocoa_butter', '#tfc:sweetener', Fluid.of('firmalife:yak_milk', 1000)])
.id('firmalife:create/mixer/food/white_chocolate_blend/yak_milk')
event.recipes.gtceu.mixer('firmalife:food/white_chocolate_blend/goat_milk')
.itemInputs('2x firmalife:food/cocoa_butter', '#tfc:sweetener')
.inputFluids(Fluid.of('firmalife:goat_milk', 1000))
@ -589,9 +563,6 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('2x firmalife:food/white_chocolate_blend', ['2x firmalife:food/cocoa_butter', '#tfc:sweetener', Fluid.of('firmalife:goat_milk', 1000)])
.id('firmalife:create/mixer/food/white_chocolate_blend/goat_milk')
event.recipes.gtceu.mixer('firmalife:food/white_chocolate_blend/coconut_milk')
.itemInputs('2x firmalife:food/cocoa_butter', '#tfc:sweetener')
.inputFluids(Fluid.of('firmalife:coconut_milk', 1000))
@ -599,8 +570,7 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('2x firmalife:food/white_chocolate_blend', ['2x firmalife:food/cocoa_butter', '#tfc:sweetener', Fluid.of('firmalife:coconut_milk', 1000)])
.id('firmalife:create/mixer/food/white_chocolate_blend/coconut_milk')
event.smelting('firmalife:food/white_chocolate', 'firmalife:food/white_chocolate_blend')
// Dark Chocolate Blend
event.recipes.gtceu.mixer('firmalife:food/dark_chocolate_blend/milk')
@ -610,9 +580,6 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('2x firmalife:food/dark_chocolate_blend', ['2x firmalife:food/cocoa_powder', '#tfc:sweetener', Fluid.of('minecraft:milk', 1000)])
.id('firmalife:create/mixer/food/dark_chocolate_blend/milk')
event.recipes.gtceu.mixer('firmalife:food/dark_chocolate_blend/yak_milk')
.itemInputs('2x firmalife:food/cocoa_powder', '#tfc:sweetener')
.inputFluids(Fluid.of('firmalife:yak_milk', 1000))
@ -620,9 +587,6 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('2x firmalife:food/dark_chocolate_blend', ['2x firmalife:food/cocoa_powder', '#tfc:sweetener', Fluid.of('firmalife:yak_milk', 1000)])
.id('firmalife:create/mixer/food/dark_chocolate_blend/yak_milk')
event.recipes.gtceu.mixer('firmalife:food/dark_chocolate_blend/goat_milk')
.itemInputs('2x firmalife:food/cocoa_powder', '#tfc:sweetener')
.inputFluids(Fluid.of('firmalife:goat_milk', 1000))
@ -630,8 +594,6 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('2x firmalife:food/dark_chocolate_blend', ['2x firmalife:food/cocoa_powder', '#tfc:sweetener', Fluid.of('firmalife:goat_milk', 1000)])
.id('firmalife:create/mixer/food/dark_chocolate_blend/goat_milk')
event.recipes.gtceu.mixer('firmalife:food/dark_chocolate_blend/coconut_milk')
.itemInputs('2x firmalife:food/cocoa_powder', '#tfc:sweetener')
@ -640,8 +602,7 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('2x firmalife:food/dark_chocolate_blend', ['2x firmalife:food/cocoa_powder', '#tfc:sweetener', Fluid.of('firmalife:coconut_milk', 1000)])
.id('firmalife:create/mixer/food/dark_chocolate_blend/coconut_milk')
event.smelting('firmalife:food/dark_chocolate', 'firmalife:food/dark_chocolate_blend')
// Milk Chocolate Blend
event.recipes.gtceu.mixer('firmalife:food/milk_chocolate_blend/milk')
@ -651,9 +612,6 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('2x firmalife:food/milk_chocolate_blend', ['firmalife:food/cocoa_powder', 'firmalife:food/cocoa_butter', '#tfc:sweetener', Fluid.of('minecraft:milk', 1000)])
.id('firmalife:create/mixer/food/milk_chocolate_blend/milk')
event.recipes.gtceu.mixer('firmalife:food/milk_chocolate_blend/yak_milk')
.itemInputs('firmalife:food/cocoa_powder', 'firmalife:food/cocoa_butter', '#tfc:sweetener')
.inputFluids(Fluid.of('firmalife:yak_milk', 1000))
@ -661,9 +619,6 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('2x firmalife:food/milk_chocolate_blend', ['firmalife:food/cocoa_powder', 'firmalife:food/cocoa_butter', '#tfc:sweetener', Fluid.of('firmalife:yak_milk', 1000)])
.id('firmalife:create/mixer/food/milk_chocolate_blend/yak_milk')
event.recipes.gtceu.mixer('firmalife:food/milk_chocolate_blend/goat_milk')
.itemInputs('firmalife:food/cocoa_powder', 'firmalife:food/cocoa_butter', '#tfc:sweetener')
.inputFluids(Fluid.of('firmalife:goat_milk', 1000))
@ -671,9 +626,6 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('2x firmalife:food/milk_chocolate_blend', ['firmalife:food/cocoa_powder', 'firmalife:food/cocoa_butter', '#tfc:sweetener', Fluid.of('firmalife:goat_milk', 1000)])
.id('firmalife:create/mixer/food/milk_chocolate_blend/goat_milk')
event.recipes.gtceu.mixer('firmalife:food/milk_chocolate_blend/coconut_milk')
.itemInputs('firmalife:food/cocoa_powder', 'firmalife:food/cocoa_butter', '#tfc:sweetener')
.inputFluids(Fluid.of('firmalife:coconut_milk', 1000))
@ -681,8 +633,7 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('2x firmalife:food/milk_chocolate_blend', ['firmalife:food/cocoa_powder', 'firmalife:food/cocoa_butter', '#tfc:sweetener', Fluid.of('firmalife:coconut_milk', 1000)])
.id('firmalife:create/mixer/food/milk_chocolate_blend/coconut_milk')
event.smelting('firmalife:food/milk_chocolate', 'firmalife:food/milk_chocolate_blend')
// Strawberry Ice Cream
event.recipes.gtceu.mixer('firmalife:food/strawberry_ice_cream')
@ -691,9 +642,6 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('firmalife:food/strawberry_ice_cream', ['firmalife:food/vanilla_ice_cream', '2x tfc:food/strawberry']
).id('firmalife:create/mixer/food/strawberry_ice_cream')
// Hardtack Dough
event.recipes.gtceu.mixer('firmalife:food/chocolate_chip_cookie_dough')
.itemInputs('4x firmalife:food/cookie_dough', '#firmalife:chocolate_blends')
@ -701,9 +649,6 @@ const registerFirmaLifeRecipes = (event) => {
.duration(300)
.EUt(16)
event.recipes.create.mixing('4x firmalife:food/chocolate_chip_cookie_dough', ['4x firmalife:food/cookie_dough', '#firmalife:chocolate_blends'])
.id('firmalife:create/mixer/food/chocolate_chip_cookie_dough')
//#endregion
//#region Обжарка некоторой еды
@ -797,4 +742,21 @@ const registerFirmaLifeRecipes = (event) => {
event.shaped('firmalife:drying_mat', ['AAA'], { A: 'tfc:plant/winged_kelp' }).id('tfg:shaped/drying_mat_winged_kelp')
// #endregion
event.recipes.gtceu.mixer('sugar_water')
.itemInputs('#tfc:sweetener')
.inputFluids(Fluid.of('minecraft:water', 1000))
.outputFluids(Fluid.of('firmalife:sugar_water', 500))
.circuit(5)
.EUt(GTValues.VA[GTValues.ULV])
.duration(200)
event.smelting('firmalife:food/dehydrated_soybeans', 'tfc:food/soybean')
event.recipes.gtceu.fermenter('soybean_oil')
.itemInputs('firmalife:food/soybean_paste')
.inputFluids(Fluid.of('minecraft:water', 100))
.outputFluids(Fluid.of('firmalife:soybean_oil', 250))
.EUt(GTValues.VA[GTValues.ULV])
.duration(600)
}

View file

@ -59,7 +59,7 @@ const registerFramedBlocksRecipes = (event) => {
event.shapeless(
Item.of('framedblocks:framed_pressure_plate', 1),
[
'#minecraft:pressure_plates',
'#minecraft:wooden_pressure_plates',
'framedblocks:framed_cube',
]
).id('framedblocks:framed_pressure_plate')
@ -70,17 +70,43 @@ const registerFramedBlocksRecipes = (event) => {
{
"count": 1,
"ingredient": {
tag: "minecraft:pressure_plates"
tag: "minecraft:wooden_pressure_plates"
}
}
],
material: 1536,
material: 6144,
result: {
item: "framedblocks:framed_pressure_plate"
}
}).id('framedblocks:framing_saw/framed_pressure_plate')
//#endregion
//#region Framed Pressure Plate
event.shapeless(
Item.of('framedblocks:framed_stone_pressure_plate', 1),
[
'#minecraft:stone_pressure_plates',
'framedblocks:framed_cube',
]
).id('framedblocks:framed_stone_pressure_plate')
event.custom({
type: "framedblocks:frame",
additives: [
{
"count": 1,
"ingredient": {
tag: "minecraft:stone_pressure_plates"
}
}
],
material: 6144,
result: {
item: "framedblocks:framed_stone_pressure_plate"
}
}).id('framedblocks:framing_saw/framed_stone_pressure_plate')
//#endregion
//#region Framed Gold Pressure Plate
event.shaped('framedblocks:framed_gold_pressure_plate', [
'AA',
@ -100,7 +126,7 @@ const registerFramedBlocksRecipes = (event) => {
}
}
],
material: 1536,
material: 6144,
result: {
item: "framedblocks:framed_gold_pressure_plate"
}
@ -112,7 +138,7 @@ const registerFramedBlocksRecipes = (event) => {
'AA',
'BB'
], {
A: '#forge:plates/wrought_iron',
A: '#forge:plates/iron',
B: 'framedblocks:framed_cube'
}).id('framedblocks:framed_iron_pressure_plate')
@ -126,7 +152,7 @@ const registerFramedBlocksRecipes = (event) => {
}
}
],
material: 1536,
material: 6144,
result: {
item: "framedblocks:framed_iron_pressure_plate"
}

View file

@ -99,6 +99,10 @@ const registerGTCEURecipes = (event) => {
.duration(720)
.EUt(30)
// Add circuit to gregtech salt water mixer recipe
event.remove({ id: 'gtceu:mixer/salt_water' })
generateMixerRecipe(event, ['2x #forge:dusts/salt'], Fluid.of('minecraft:water', 1000), [], 1, Fluid.of('gtceu:salt_water', 1000), 40, 7, 64, 'tfg:gtceu/salt_water')
//#endregion
//#region Выход: Каменный стержень
@ -1085,6 +1089,42 @@ const registerGTCEURecipes = (event) => {
//#endregion
//#region Credits
event.remove({ id: 'gtceu:forming_press/credit_cupronickel' })
event.recipes.gtceu.forming_press('gtceu:copper_credit')
.itemInputs('#forge:ingots/copper')
.notConsumable('gtceu:credit_casting_mold')
.itemOutputs('8x gtceu:copper_credit')
.duration(50)
.EUt(2)
event.recipes.tfc.anvil('8x gtceu:copper_credit', '#forge:ingots/copper', ['bend_last', 'punch_not_last', 'draw_not_last'])
.tier(1)
.id(`tfc:anvil/copper_credit`)
event.recipes.tfc.heating('gtceu:copper_credit', GTMaterials.Copper.getProperty(TFGPropertyKey.TFC_PROPERTY).getMeltTemp())
.resultFluid(Fluid.of(GTMaterials.Copper.getFluid(), 144 / 8))
.id(`tfc:heating/copper_credit`)
event.custom({
type: 'vintageimprovements:curving',
ingredients: [{ tag: 'forge:ingots/copper' }],
itemAsHead: 'gtceu:credit_casting_mold',
results: [{ item: 'gtceu:copper_credit', count: 8 }],
processingTime: 50
}).id(`tfg:vi/curving/copper_credit`)
event.recipes.gtceu.extractor('gtceu:copper_credit')
.itemInputs('gtceu:copper_credit')
.outputFluids(Fluid.of(GTMaterials.Copper.getFluid(), 144 / 8))
.category(GTRecipeCategories.EXTRACTOR_RECYCLING)
.duration(10)
.EUt(2)
//#endregion
// TODO: Greate again...
event.shapeless('gtceu:programmed_circuit', ['minecraft:stick', '#forge:tools/wrenches'])
.id('tfg:shapeless/programmed_circuit_from_stick')

View file

@ -401,6 +401,10 @@ function registerGTCEUMetalRecipes(event) {
if (!material.hasProperty(PropertyKey.BLAST)) {
event.smelting(ingotItem, normalOreItem).id(`gtceu:smelting/smelt_raw_${material.getName()}_ore_to_ingot`)
}
// Remove ore block recipes
event.remove({ id: `gtceu:compressor/compress_${material.getName()}_to_raw_ore_block` })
event.remove({ id: `gtceu:forge_hammer/decompress_${material.getName()}_to_raw_ore` })
}
const processRichRawOre = (material) => {

View file

@ -2,7 +2,7 @@
function registerGTCEuTFCMetalsRecipes(event)
{
//#region LV hull
//#region LV hull
event.replaceInput('gtceu:shaped/lv_machine_hull', '#forge:plates/wrought_iron', '#forge:plates/red_steel')

View file

@ -34,7 +34,7 @@ const generateGreenHouseRecipe = (event, input, fluid_amount, output, id) => {
.chancedOutput(input, 7500, 0)
.chancedOutput(input, 5000, 0)
.duration(36000) // 30 mins
.EUt(72)
.EUt(GTValues.VA[GTValues.LV])
// С удобрением
event.recipes.gtceu.greenhouse(`${id}_fertilized`)
@ -46,7 +46,7 @@ const generateGreenHouseRecipe = (event, input, fluid_amount, output, id) => {
.chancedOutput(input, 8500, 0)
.chancedOutput(input, 6000, 0)
.duration(12000) // 10 mins
.EUt(196)
.EUt(GTValues.VA[GTValues.LV])
}
const getFillingNBT = (material, amount) => {
@ -164,12 +164,8 @@ function generatePlatedBlockRecipe(event, material) {
.EUt(GTValues.VA[GTValues.LV])
}
//const $MRM = Java.loadClass('com.gregtechceu.gtceu.api.data.chemical.material.IMaterialRegistryManager')
function forEachMaterial(iterator) {
//if (GTMaterialRegistry.getPhase() === $MRM.Phase.CLOSED || GTMaterialRegistry.getPhase() === $MRM.Phase.FROZEN) {
GTMaterialRegistry.getRegisteredMaterials().forEach(material => {
iterator(material)
})
//}
for (var material of GTCEuAPI.materialManager.getRegisteredMaterials()) {
iterator(material)
}
}

View file

@ -340,7 +340,7 @@ function registerImmersiveAircraftRecipes(event) {
C: 'gtceu:blue_steel_plate',
D: 'gtceu:lv_electric_piston',
E: 'immersive_aircraft:engine',
F: 'gtceu:red_alloy_single_cable',
F: 'gtceu:tin_single_cable',
G: 'gtceu:lv_electric_pump'
}).id('tfg:shaped/lv_aircraft_engine')
@ -376,7 +376,7 @@ function registerImmersiveAircraftRecipes(event) {
A: 'vintageimprovements:aluminum_sheet',
B: 'gtceu:mv_electric_piston',
C: 'immersive_aircraft:engine',
D: 'gtceu:aluminium_single_cable',
D: 'gtceu:copper_single_cable',
E: 'gtceu:mv_electric_pump'
}).id('tfg:immersive_aircraft/shaped/nether_engine')
@ -408,7 +408,7 @@ function registerImmersiveAircraftRecipes(event) {
A: 'gtceu:stainless_steel_plate',
B: 'gtceu:hv_electric_piston',
C: 'immersive_aircraft:engine',
D: 'gtceu:aluminium_double_cable',
D: 'gtceu:silver_double_cable',
E: 'gtceu:hv_electric_pump',
}).id('tfg:shaped/hv_aircraft_engine')
@ -419,18 +419,16 @@ function registerImmersiveAircraftRecipes(event) {
GTMaterials.Silver,
GTMaterials.Steel,
GTMaterials.Gold,
GTMaterials.Aluminium,
GTMaterials.TinAlloy,
GTMaterials.WroughtIron
], [
createMaterialsToResults(TagPrefix.dust, TagPrefix.ingot, 14),
createMaterialsToResults(TagPrefix.dust, TagPrefix.ingot, 9),
createMaterialsToResults(TagPrefix.dust, TagPrefix.ingot, 4),
createMaterialsToResults(TagPrefix.dust, TagPrefix.ingot, 5),
createMaterialsToResults(TagPrefix.dust, TagPrefix.ingot, 3),
createMaterialsToResults(TagPrefix.dust, TagPrefix.ingot, 1),
createMaterialsToResults(TagPrefix.dust, TagPrefix.ingot, 1),
createMaterialsToResults(TagPrefix.dust, TagPrefix.ingot, 1),
createMaterialsToResults(TagPrefix.dust, TagPrefix.ingot, 1),
])
)

View file

@ -19,7 +19,7 @@ ServerEvents.tags('item', event => {
registerCreateItemTags(event)
registerCreateAdditionsItemTags(event)
registerCreateConnectedItemTags(event)
registerCreatedecoItemTags(event)
registerCreateDecoItemTags(event)
registerDiggerHelmetItemTags(event)
registerEndermanOverhaulItemTags(event)
registerEveryCompatItemTags(event)
@ -60,6 +60,7 @@ ServerEvents.tags('block', event => {
registerComputerCraftBlockTags(event)
registerCreateBlockTags(event)
registerCreateAdditionsBlockTags(event)
registerCreateDecoBlockTags(event)
registerDomumOrnamentumBlockTags(event)
registerEndermanOverhaulBlockTags(event)
registerExtendedAE2BlockTags(event)
@ -223,6 +224,8 @@ ServerEvents.recipes(event => {
registerTFCBetterBFRecipes(event)
registerTFCGroomingStationRecipes(event)
registerTFGRecipes(event)
registerTFCGroomingStationRecipes(event)
registerTFCTextileRecipes(event)
registerToolBeltRecipes(event)
registerTreeTapRecipes(event)
registerVintageImprovementsRecipes(event)

View file

@ -986,4 +986,26 @@ const registerMinecraftRecipes = (event) => {
event.shapeless('4x minecraft:clay_ball', ['minecraft:clay'])
.id('tfg:shapeless/clay_block_to_balls')
// Mushrooms
event.shapeless('4x minecraft:red_mushroom', ['minecraft:red_mushroom_block', '#forge:tools/knives'])
.id('tfg:shapeless/cut_red_mushroom_block')
event.shapeless('4x minecraft:brown_mushroom', ['minecraft:brown_mushroom_block', '#forge:tools/knives'])
.id('tfg:shapeless/cut_brown_mushroom_block')
event.recipes.gtceu.chemical_bath('tfg:red_mushroom_to_shroomlight')
.itemInputs('minecraft:red_mushroom_block')
.inputFluids(Fluid.of('gtceu:glowstone', 144))
.itemOutputs('minecraft:shroomlight')
.duration(200)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.chemical_bath('tfg:brown_mushroom_to_shroomlight')
.itemInputs('minecraft:brown_mushroom_block')
.inputFluids(Fluid.of('gtceu:glowstone', 144))
.itemOutputs('minecraft:shroomlight')
.duration(200)
.EUt(GTValues.VA[GTValues.ULV])
}

View file

@ -57,6 +57,9 @@ const registerMinecraftItemTags = (event) => {
event.remove('forge:gems', 'minecraft:charcoal')
event.remove('forge:gems', 'minecraft:coal')
event.remove('minecraft:dirt', 'minecraft:moss_block')
event.add('tfc:compost_greens_high', 'minecraft:red_mushroom_block')
event.add('tfc:compost_greens_high', 'minecraft:brown_mushroom_block')
}
const registerMinecraftBlockTags = (event) => {

View file

@ -3,8 +3,10 @@
function registerPrimitiveCreatesLoots(event) {
event.addEntityLootModifier('kaolinclayze:tfc')
.addWeightedLoot([7,15], ['tfc:kaolin_clay', 'minecraft:clay_ball'])
.removeLoot(ItemFilter.ALWAYS_TRUE)
.addWeightedLoot([12,16], ['tfc:kaolin_clay', 'minecraft:clay_ball'])
event.addEntityLootModifier('kaolinclayze:golem_2')
.addWeightedLoot([7,15], ['gtceu:poor_raw_graphite', 'gtceu:raw_graphite', 'gtceu:rich_raw_graphite'])
.removeLoot(ItemFilter.ALWAYS_TRUE)
.addWeightedLoot([4,6], ['gtceu:rich_raw_graphite'])
}

View file

@ -1,64 +1,261 @@
// priority: 0
function registerTFCLoots(event)
{
function registerTFCLoots(event) {
// Hostile animals
event.addEntityLootModifier('tfc:black_bear')
.addWeightedLoot([8,12], ['tfc:food/bear'])
.addWeightedLoot([8, 12], ['tfc:food/bear'])
event.addEntityLootModifier('tfc:black_bear')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([4, 6], ['tfc:food/bear'])
event.addEntityLootModifier('tfc:grizzly_bear')
.addWeightedLoot([10,16], ['tfc:food/bear'])
.addWeightedLoot([10, 16], ['tfc:food/bear'])
event.addEntityLootModifier('tfc:grizzly_bear')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([5, 8], ['tfc:food/bear'])
event.addEntityLootModifier('tfc:polar_bear')
.addWeightedLoot([14,20], ['tfc:food/bear'])
.addWeightedLoot([2,5], ['tfc:blubber'])
.addWeightedLoot([14, 20], ['tfc:food/bear'])
.addWeightedLoot([2, 5], ['tfc:blubber'])
event.addEntityLootModifier('tfc:polar_bear')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([7, 10], ['tfc:food/bear'])
event.addEntityLootModifier('tfc:cougar')
.addWeightedLoot([6,10], ['tfc:food/gran_feline'])
.addWeightedLoot([6, 10], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:cougar')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([3, 5], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:panther')
.addWeightedLoot([6,10], ['tfc:food/gran_feline'])
.addWeightedLoot([6, 10], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:panther')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([3, 5], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:sabertooth')
.addWeightedLoot([9,14], ['tfc:food/gran_feline'])
.addWeightedLoot([9, 14], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:sabertooth')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([4, 7], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:lion')
.addWeightedLoot([9,14], ['tfc:food/gran_feline'])
.addWeightedLoot([9, 14], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:lion')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([4, 7], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:tiger')
.addWeightedLoot([9,14], ['tfc:food/gran_feline'])
.addWeightedLoot([9, 14], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:tiger')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([4, 7], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:ocelot')
.addWeightedLoot([2,5], ['tfc:food/gran_feline'])
.addWeightedLoot([2, 5], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:ocelot')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([1, 2], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:cat')
.addWeightedLoot([2,5], ['tfc:food/gran_feline'])
.addWeightedLoot([2, 5], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:cat')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([1, 2], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:sabertooth')
.addWeightedLoot([9,14], ['tfc:food/gran_feline'])
.addWeightedLoot([9, 14], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:sabertooth')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([4, 7], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:dog')
.addWeightedLoot([5,9], ['tfc:food/wolf'])
.addWeightedLoot([5, 8], ['tfc:food/wolf'])
event.addEntityLootModifier('tfc:dog')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([2, 4], ['tfc:food/wolf'])
event.addEntityLootModifier('tfc:wolf')
.addWeightedLoot([5,9], ['tfc:food/wolf'])
.addWeightedLoot([5, 8], ['tfc:food/wolf'])
event.addEntityLootModifier('tfc:wolf')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([2, 4], ['tfc:food/wolf'])
event.addEntityLootModifier('tfc:direwolf')
.addWeightedLoot([10,15], ['tfc:food/wolf'])
.addWeightedLoot([8, 12], ['tfc:food/wolf'])
event.addEntityLootModifier('tfc:direwolf')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([4, 6], ['tfc:food/wolf'])
event.addEntityLootModifier('tfc:wolf')
.addWeightedLoot([5,9], ['tfc:food/wolf'])
event.addEntityLootModifier('tfc:hyena')
.addWeightedLoot([5,9], ['tfc:food/hyena'])
.addWeightedLoot([4, 7], ['tfc:food/hyena'])
event.addEntityLootModifier('tfc:hyena')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([2, 4], ['tfc:food/hyena'])
event.addEntityLootModifier('tfc:fox')
.addWeightedLoot([5,9], ['tfc:food/fox'])
.addWeightedLoot([4, 7], ['tfc:food/fox'])
event.addEntityLootModifier('tfc:fox')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([2, 4], ['tfc:food/fox'])
event.addEntityLootModifier('tfc:crocodile')
.addWeightedLoot([5,10], ['tfc:food/bluegill', 'tfc:food/crappie', 'tfc:food/lake_trout', 'tfc:food/rainbow_trout', 'tfc:food/frog_legs'])
.addWeightedLoot([5, 10], ['tfc:food/bluegill', 'tfc:food/crappie', 'tfc:food/lake_trout', 'tfc:food/rainbow_trout', 'tfc:food/frog_legs'])
.addSequenceLoot(LootEntry.of('tfc:metal/fish_hook/copper').when(c => c.randomChance(0.2)))
event.addEntityLootModifier('tfc:crocodile')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([2, 5], ['tfc:food/bluegill', 'tfc:food/crappie', 'tfc:food/lake_trout', 'tfc:food/rainbow_trout', 'tfc:food/frog_legs'])
// Passive animals
event.addEntityLootModifier('tfc:alpaca')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([5, 10], ['tfc:food/camelidae'])
event.addEntityLootModifier('tfc:boar')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([2, 4], ['tfc:food/pork'])
event.addEntityLootModifier('tfc:bongo')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([2, 4], ['tfc:food/venison'])
event.addEntityLootModifier('tfc:caribou')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([3, 5], ['tfc:food/venison'])
event.addEntityLootModifier('tfc:chicken')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([1, 3], ['tfc:food/chicken'])
event.addEntityLootModifier('tfc:cow')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([8, 12], ['tfc:food/beef'])
event.addEntityLootModifier('tfc:deer')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([2, 4], ['tfc:food/camelidae'])
event.addEntityLootModifier('tfc:deer')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([2, 5], ['tfc:food/venison'])
event.addEntityLootModifier('tfc:donkey')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([7, 10], ['tfc:food/horse_meat'])
event.addEntityLootModifier('tfc:duck')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([1, 3], ['tfc:food/duck'])
event.addEntityLootModifier('tfc:frog')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([1, 2], ['tfc:food/frog_legs'])
event.addEntityLootModifier('tfc:gazelle')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([2, 4], ['tfc:food/venison'])
event.addEntityLootModifier('tfc:goat')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([4, 6], ['tfc:food/chevon'])
event.addEntityLootModifier('tfc:grouse')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([1, 2], ['tfc:food/grouse'])
event.addEntityLootModifier('tfc:horse')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([7, 10], ['tfc:food/horse_meat'])
event.addEntityLootModifier('tfc:moose')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([5, 10], ['tfc:food/venison'])
event.addEntityLootModifier('tfc:mule')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([7, 10], ['tfc:food/horse_meat'])
event.addEntityLootModifier('tfc:musk_ox')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([7, 10], ['tfc:food/mutton'])
event.addEntityLootModifier('tfc:peafowl')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([1, 2], ['tfc:food/peafowl'])
event.addEntityLootModifier('tfc:pheasant')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([1, 2], ['tfc:food/pheasant'])
event.addEntityLootModifier('tfc:pig')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([5, 7], ['tfc:food/pork'])
event.addEntityLootModifier('tfc:quail')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([1, 3], ['tfc:food/quail'])
event.addEntityLootModifier('tfc:rabbit')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addLoot('tfc:food/rabbit')
event.addEntityLootModifier('tfc:sheep')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([6, 9], ['tfc:food/mutton'])
event.addEntityLootModifier('tfc:turkey')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([1, 2], ['tfc:food/turkey'])
event.addEntityLootModifier('tfc:turtle')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addLoot('tfc:food/turtle')
event.addEntityLootModifier('tfc:wildebeest')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([4, 7], ['tfc:food/beef'])
event.addEntityLootModifier('tfc:yak')
.randomChanceWithEnchantment('minecraft:looting', [0, 0.3, 0.6, 1])
.addWeightedLoot([7, 10], ['tfc:food/chevon'])
// Blocks
event.addBlockLootModifier('minecraft:ice')
.removeLoot(ItemFilter.ALWAYS_TRUE)
@ -66,11 +263,11 @@ function registerTFCLoots(event)
event.addBlockLootModifier('minecraft:packed_ice')
.not(n => n.matchMainHand("#forge:tools/saws"))
.addWeightedLoot([4,6], ['firmalife:ice_shavings'])
.addWeightedLoot([4, 6], ['firmalife:ice_shavings'])
event.addBlockLootModifier('minecraft:blue_ice')
.not(n => n.matchMainHand("#forge:tools/saws"))
.addWeightedLoot([8,12], ['firmalife:ice_shavings'])
.addWeightedLoot([8, 12], ['firmalife:ice_shavings'])
event.addBlockLootModifier('tfc:sea_ice')
.removeLoot(ItemFilter.ALWAYS_TRUE)

View file

@ -201,7 +201,7 @@ const registerTFCRecipes = (event) => {
.id('tfg:tfc/pot/salt')
// Salt Water
generateMixerRecipe(event, ['#forge:dusts/salt'], Fluid.of('minecraft:water', 1000), [], null, Fluid.of('tfc:salt_water', 1000), 40, 7, 64, 'tfg:tfc/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')
// Seaweed and kelp

View file

@ -320,19 +320,19 @@ function registerTFCMachineRecipes(event) {
global.TFC_ALCOHOL.forEach(alcohol => {
event.recipes.gtceu.fermenter(`tfg:tfc/vinegar/${alcohol.id.replace(':', '_')}`)
.itemInputs('#tfc:foods/fruits')
.inputFluids(Fluid.of(alcohol.id, 250))
.outputFluids(Fluid.of('tfc:vinegar', 250))
.duration(600)
.EUt(28)
.itemInputs('#tfc:foods/fruits')
.inputFluids(Fluid.of(alcohol.id, 250))
.outputFluids(Fluid.of('tfc:vinegar', 250))
.duration(600)
.EUt(28)
})
event.recipes.gtceu.mixer('tfg:tfc/brine')
.inputFluids(Fluid.of('tfc:salt_water', 900))
.inputFluids(Fluid.of('tfc:vinegar', 100))
.outputFluids(Fluid.of('tfc:brine', 1000))
.duration(100)
.EUt(16)
.inputFluids(Fluid.of('tfc:salt_water', 900))
.inputFluids(Fluid.of('tfc:vinegar', 100))
.outputFluids(Fluid.of('tfc:brine', 1000))
.duration(100)
.EUt(16)
//#endregion
@ -505,4 +505,43 @@ function registerTFCMachineRecipes(event) {
.category(GTRecipeCategories.MACERATOR_RECYCLING)
.duration(20)
.EUt(2)
// Humus and compost
event.recipes.gtceu.extractor('tfg:humus_from_leaves')
.itemInputs('#minecraft:leaves')
.itemOutputs('tfc:groundcover/humus')
.duration(600)
.EUt(2)
event.recipes.gtceu.extractor('tfg:humus_from_fallen_leaves')
.itemInputs('#tfc:fallen_leaves')
.itemOutputs('tfc:groundcover/humus')
.duration(600)
.EUt(2)
event.recipes.gtceu.fermenter('tfg:fertilizer_to_compost')
.itemInputs('4x gtceu:fertilizer')
.itemOutputs('tfc:compost')
.duration(1200)
.EUt(2)
const BROWNS = [ '16x #tfc:compost_browns_low', '4x #tfc:compost_browns_high' ];
const GREENS = [ '16x #tfc:compost_greens_low', '4x #tfc:compost_greens_high' ];
let i = 0;
BROWNS.forEach(brown => {
GREENS.forEach(green => {
event.recipes.gtceu.mixer(`tfg:compost_${i++}`)
.itemInputs(brown, green)
.itemOutputs('tfc:compost')
.duration(1200)
.EUt(2)
})
})
event.recipes.gtceu.centrifuge('tfg:soot')
.itemInputs('tfc:soot')
.itemOutputs('#forge:dusts/carbon')
.duration(20)
.EUt(2)
}

View file

@ -279,6 +279,9 @@ function registerTFCMetalsRecipes(event) {
event.recipes.tfc.anvil('gtceu:small_steel_gear', '#forge:ingots/steel', ['hit_last', 'shrink_second_last', 'draw_third_last'])
.tier(4)
.id('tfc:anvil/small_steel_gear')
event.recipes.tfc.anvil('gtceu:small_iron_gear', '#forge:ingots/iron', ['hit_last', 'shrink_second_last', 'draw_third_last'])
.tier(2)
.id('tfc:anvil/small_iron_gear')
event.recipes.tfc.anvil('gtceu:small_brass_gear', '#forge:ingots/brass', ['hit_last', 'shrink_second_last', 'draw_third_last'])
.tier(2)
.id('tfc:anvil/small_brass_gear')
@ -291,6 +294,9 @@ function registerTFCMetalsRecipes(event) {
event.recipes.tfc.anvil('gtceu:small_black_bronze_gear', '#forge:ingots/black_bronze', ['hit_last', 'shrink_second_last', 'draw_third_last'])
.tier(2)
.id('tfc:anvil/small_black_bronze_gear')
event.recipes.tfc.anvil('gtceu:small_red_alloy_gear', '#forge:ingots/red_alloy', ['hit_last', 'shrink_second_last', 'draw_third_last'])
.tier(2)
.id('tfc:anvil/small_red_alloy_gear')
// Cast iron -> Raw Iron Bloom
event.recipes.tfc.bloomery('tfc:raw_iron_bloom', 'minecraft:charcoal', Fluid.of('gtceu:iron', 144), 15000)
@ -330,4 +336,4 @@ function registerTFCMetalsRecipes(event) {
.EUt(GTValues.VA[GTValues.LV])
})})
//#endregion
}
}

View file

@ -33,19 +33,18 @@ function registerTFCStoneRecipes(event) {
// ? -> Сырая нажимная пластина
event.shaped(`tfc:rock/pressure_plate/${stone}`, [
'ABA',
' B ',
'CDC',
'AEA'
' E '
], {
A: '#forge:screws/wrought_iron',
B: '#tfc:hammers',
C: `tfc:rock/raw/${stone}_slab`,
D: '#forge:springs',
D: '#forge:small_springs',
E: '#forge:tools/screwdrivers'
}).id(`tfc:crafting/rock/${stone}_pressure_plate`)
event.recipes.gtceu.assembler(`${stone}_raw_pressure_plate`)
.itemInputs('#forge:springs', `2x tfc:rock/raw/${stone}_slab`)
.itemInputs('#forge:small_springs', `2x tfc:rock/raw/${stone}_slab`)
.circuit(0)
.itemOutputs(`2x tfc:rock/pressure_plate/${stone}`)
.duration(50)
@ -468,6 +467,14 @@ function registerTFCStoneRecipes(event) {
//#region Стена
event.recipes.tfc.chisel(`tfc:rock/raw/${stone}_wall`, `tfc:rock/raw/${stone}_slab`, 'smooth')
event.recipes.tfc.chisel(`tfc:rock/cobble/${stone}_wall`, `tfc:rock/cobble/${stone}_slab`, 'smooth')
event.recipes.tfc.chisel(`tfc:rock/smooth/${stone}_wall`, `tfc:rock/smooth/${stone}_slab`, 'smooth')
event.recipes.tfc.chisel(`tfc:rock/bricks/${stone}_wall`, `tfc:rock/bricks/${stone}_slab`, 'smooth')
event.recipes.tfc.chisel(`tfc:rock/cracked_bricks/${stone}_wall`, `tfc:rock/cracked_bricks/${stone}_slab`, 'smooth')
event.recipes.tfc.chisel(`tfc:rock/mossy_cobble/${stone}_wall`, `tfc:rock/mossy_cobble/${stone}_slab`, 'smooth')
event.recipes.tfc.chisel(`tfc:rock/mossy_bricks/${stone}_wall`, `tfc:rock/mossy_bricks/${stone}_slab`, 'smooth')
// Сырой
event.recipes.gtceu.macerator(`raw_wall_${stone}_to_dust`)
.itemInputs(`tfc:rock/raw/${stone}_wall`)

View file

@ -26,19 +26,18 @@ function registerTFCWoodRecipes(event) {
// ? -> Деревянная нажимная пластина
event.shaped(`tfc:wood/planks/${wood}_pressure_plate`, [
'ABA',
' B ',
'CDC',
'AEA'
' E '
], {
A: '#forge:screws/wood',
B: '#tfc:hammers',
C: `tfc:wood/planks/${wood}_slab`,
D: '#forge:springs',
D: '#forge:small_springs',
E: '#forge:tools/screwdrivers'
}).id(`tfc:crafting/wood/${wood}_pressure_plate`)
event.recipes.gtceu.assembler(`${wood}_pressure_plate`)
.itemInputs('#forge:springs', `2x tfc:wood/planks/${wood}_slab`)
.itemInputs('#forge:small_springs', `2x tfc:wood/planks/${wood}_slab`)
.circuit(0)
.itemOutputs(`2x tfc:wood/planks/${wood}_pressure_plate`)
.duration(50)

View file

@ -0,0 +1,7 @@
// priority: 0
function registerTFCTextileRecipes(event) {
event.shapeless('tfc:large_raw_hide', ['tfc_textile:crocodile_leather', '#forge:tools/knives'])
}

View file

@ -577,12 +577,14 @@ function registerVintageImprovementsRecipes(event) {
results: [{ fluid: 'tfg:latex', amount: 250 }],
processingTime: 600
}).id('tfg:vi/vacuumizing/latex_from_rubber_logs')
event.custom({
type: 'vintageimprovements:vacuumizing',
ingredients: [{ tag: 'tfg:rubber_saplings' }],
results: [{ fluid: 'tfg:latex', amount: 100 }],
processingTime: 300
}).id('tfg:vi/vacuumizing/latex_from_rubber_sapling')
event.custom({
type: 'vintageimprovements:vacuumizing',
ingredients: [{ tag: 'tfg:rubber_leaves' }],
@ -590,6 +592,14 @@ function registerVintageImprovementsRecipes(event) {
processingTime: 150
}).id('tfg:vi/vacuumizing/latex_from_rubber_leaves')
event.custom({
type: 'vintageimprovements:vacuumizing',
ingredients: [{ tag: 'tfg:rubber_plants' }, { item: 'tfc:powder/soda_ash' }, { fluid: 'tfc:salt_water', amount: 50 }],
results: [{ fluid: 'tfg:latex', amount: 50 }],
heatRequirement: "heated",
processingTime: 40
}).id('tfg:vi/vacuumizing/latex_from_rubber_plants')
// Vulc. latex to raw rubber pulp
event.custom({
type: 'vintageimprovements:vacuumizing',

View file

@ -36,6 +36,7 @@ function registerVintageImprovementsItemTags(event) {
event.add('vintageimprovements:curving_heads', 'gtceu:ingot_extruder_mold')
event.add('vintageimprovements:curving_heads', 'gtceu:bottle_extruder_mold')
event.add('vintageimprovements:curving_heads', 'gtceu:foil_extruder_mold')
event.add('vintageimprovements:curving_heads', 'gtceu:credit_casting_mold')
}