Merge branch 'dev' into feature/create-6

This commit is contained in:
Pyritie 2025-06-12 13:34:02 +01:00
commit c6e090fe50
27 changed files with 435 additions and 167 deletions

View file

@ -86,39 +86,36 @@ const registerAFCRecipes = (event) => {
.id('tfg:heating/tree_tap')
//Custom rubber and hevea tappings
//Hevea is the most efficient but requires the warmest temperatures
//Rubber fig requires average temperatures and its mildly efficient
event.recipes.afc.tree_tapping(TFC.blockIngredient("afc:wood/log/hevea"))
.resultFluid(Fluid.of("tfg:latex", 3))
.minTemp(22)
.requiresNaturalLog(true)
.id("tfg:tree_tapping/latex/hevea")
event.recipes.afc.tree_tapping(TFC.blockIngredient("afc:wood/log/ancient_hevea"))
.resultFluid(Fluid.of("tfg:latex", 3))
.minTemp(22)
.requiresNaturalLog(true)
.id("tfg:tree_tapping/latex/ancient_hevea")
event.recipes.afc.tree_tapping(TFC.blockIngredient("afc:wood/log/rubber_fig"))
.resultFluid(Fluid.of("tfg:latex", 2))
.minTemp(12)
.resultFluid(Fluid.of("tfg:latex", 1))
.minTemp(4)
.requiresNaturalLog(true)
.id("tfg:tree_tapping/latex/rubber_fig")
event.recipes.afc.tree_tapping(TFC.blockIngredient("afc:wood/log/ancient_rubber_fig"))
.resultFluid(Fluid.of("tfg:latex", 2))
.minTemp(12)
.resultFluid(Fluid.of("tfg:latex", 1))
.minTemp(4)
.requiresNaturalLog(true)
.id("tfg:tree_tapping/latex/ancient_rubber_fig")
//Kapok Grandfathered, least efficient but works as long as the temperature is not freezing
event.recipes.afc.tree_tapping(TFC.blockIngredient("afc:wood/log/hevea"))
.resultFluid(Fluid.of("tfg:latex", 2))
.minTemp(8)
.requiresNaturalLog(true)
.id("tfg:tree_tapping/latex/hevea")
event.recipes.afc.tree_tapping(TFC.blockIngredient("afc:wood/log/ancient_hevea"))
.resultFluid(Fluid.of("tfg:latex", 2))
.minTemp(8)
.requiresNaturalLog(true)
.id("tfg:tree_tapping/latex/ancient_hevea")
event.recipes.afc.tree_tapping(TFC.blockIngredient("tfc:wood/log/kapok"))
.resultFluid(Fluid.of("tfg:latex", 1))
.minTemp(1)
.resultFluid(Fluid.of("tfg:latex", 3))
.minTemp(12)
.requiresNaturalLog(true)
.id("tfg:tree_tapping/kapok_latex")
event.recipes.afc.tree_tapping(TFC.blockIngredient("tfc:wood/log/ancient_kapok"))
.resultFluid(Fluid.of("tfg:latex", 1))
.minTemp(1)
.resultFluid(Fluid.of("tfg:latex", 3))
.minTemp(12)
.requiresNaturalLog(true)
.id("tfg:tree_tapping/ancient_kapok_latex")

View file

@ -186,18 +186,19 @@ function registerGreateRecipes(event) {
event.shaped('greate:steel_millstone', [
'FBF',
'DCE',
'AAA'
'AGA'
], {
A: '#forge:smooth_stone',
B: 'gtceu:treated_wood_slab',
C: '#forge:small_gears/wrought_iron',
C: '#forge:small_gears/steel',
D: '#forge:tools/hammers',
E: '#forge:tools/wrenches',
F: '#forge:dusts/diamond'
F: '#forge:dusts/diamond',
G: 'greate:steel_shaft'
}).id('greate:shaped/steel_millstone')
event.recipes.gtceu.assembler('greate:steel_millstone')
.itemInputs('3x #forge:smooth_stone', 'gtceu:treated_wood_slab', '#forge:small_gears/wrought_iron', '2x #forge:dusts/diamond')
.itemInputs('2x #forge:smooth_stone', 'gtceu:treated_wood_slab', '#forge:small_gears/steel', '2x #forge:dusts/diamond', 'greate:steel_shaft')
.itemOutputs('greate:steel_millstone')
.duration(200)
.EUt(GTValues.VA[GTValues.ULV])

View file

@ -103,19 +103,20 @@ function registerGreateRecyclingRecipes(event) {
event.recipes.gtceu.macerator('greate:steel_millstone')
.itemInputs('greate:steel_millstone')
.itemOutputs(
ChemicalHelper.get(TagPrefix.dust, GTMaterials.Steel, 3),
ChemicalHelper.get(TagPrefix.dust, GTMaterials.WroughtIron, 1),
ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Steel, 10),
ChemicalHelper.get(TagPrefix.dust, GTMaterials.Stone, 2),
ChemicalHelper.get(TagPrefix.dust, GTMaterials.Diamond, 2),
ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.TreatedWood, 2))
.duration(GTMaterials.Steel.getMass() * 4)
.duration(GTMaterials.Stone.getMass() * 4)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.arc_furnace('greate:steel_millstone')
.itemInputs('greate:steel_millstone')
.itemOutputs(
ChemicalHelper.get(TagPrefix.ingot, GTMaterials.Steel, 3),
ChemicalHelper.get(TagPrefix.ingot, GTMaterials.WroughtIron, 1))
.duration(GTMaterials.Steel.getMass() * 4)
ChemicalHelper.get(TagPrefix.nugget, GTMaterials.Steel, 10),
ChemicalHelper.get(TagPrefix.dust, GTMaterials.Diamond, 2))
.duration(GTMaterials.Stone.getMass() * 4)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
.EUt(GTValues.VA[GTValues.LV])

View file

@ -722,7 +722,7 @@ function registerGTCEuMachineRecipes(event) {
event.recipes.gtceu.assembly_line('ultimate_battery')
.itemInputs('16x #forge:double_plates/darmstadtium',
'4x #gtceu:circuits/uhv',
'16x #gtceu:batteries/uv',
'16x gtceu:energy_cluster',
'4x gtceu:uv_field_generator',
'64x gtceu:uhpic_wafer',
'64x gtceu:uhpic_wafer',

View file

@ -221,7 +221,7 @@ function registerGTCEUMetalRecipes(event) {
.outputFluids(Fluid.of(material.getFluid(), 288))
.duration(material.getMass())
.category(GTRecipeCategories.EXTRACTOR_RECYCLING)
.EUt(GTValues.VA[GTValues.ULV])
.EUt(material.hasProperty(PropertyKey.BLAST) ? GTValues.VA[GTValues.MV] : GTValues.VA[GTValues.ULV])
}
if (material.hasProperty(PropertyKey.DUST)) {
@ -843,7 +843,6 @@ function registerGTCEUMetalRecipes(event) {
.itemOutputs(barsStack)
.duration(100)
.EUt(GTValues.VA[GTValues.LV])
.circuit(1)
}
forEachMaterial(material => {

View file

@ -644,4 +644,11 @@ function removeGTCEURecipes(event) {
event.remove({ id: 'gtceu:smelting/sticky_resin_from_slime' })
event.remove({ id: 'gtceu:wiremill/string_from_polycaprolactam' })
event.remove({ id: 'gtceu:chemical_bath/black_steel_cool_down' })
event.remove({ id: 'gtceu:chemical_bath/black_steel_cool_down_distilled_water' })
event.remove({ id: 'gtceu:chemical_bath/red_steel_cool_down' })
event.remove({ id: 'gtceu:chemical_bath/red_steel_cool_down_distilled_water' })
event.remove({ id: 'gtceu:chemical_bath/blue_steel_cool_down' })
event.remove({ id: 'gtceu:chemical_bath/blue_steel_cool_down_distilled_water' })
}

View file

@ -118,4 +118,7 @@ const registerGTCEUFluidTags = (event) => {
event.add('c:hidden_from_recipe_viewers', /gtceu.*potion.*/)
event.add('c:hidden_from_recipe_viewers', 'gtceu:molten_black_steel')
event.add('c:hidden_from_recipe_viewers', 'gtceu:molten_red_steel')
event.add('c:hidden_from_recipe_viewers', 'gtceu:molten_blue_steel')
}

View file

@ -126,8 +126,10 @@ TFCEvents.data(event => {
registerTFCDataForChalk(event);
registerTFCDataForGTCEU(event)
registerTFCDataForImmersiveAircraft(event);
registerTFCDataForSophisticatedBackpacks(event)
registerTFCDataForTFC(event)
registerTFCDataForTFCBetterBF(event)
registerTFCDataForTFCLunchbox(event)
registerTFCDataForWaterFlasks(event)
registerTFCDataForFirmalife(event)
})
@ -207,6 +209,7 @@ ServerEvents.recipes(event => {
registerTfceaRecipes(event)
registerTFCRecipes(event)
registerTFCBetterBFRecipes(event)
registerTFCLunchBoxRecipes(event)
registerTFGRecipes(event)
registerTFCGroomingStationRecipes(event)
registerTFCTextileRecipes(event)

View file

@ -4,7 +4,7 @@ const registerRailWaysRecipes = (event) => {
// Удаление рецептов мода railways
event.remove({ mod: 'railways' });
registerRailwaysLocometalRecipes(event)
// Семафор
@ -48,81 +48,81 @@ const registerRailWaysRecipes = (event) => {
.EUt(28)
//#region Couplers and Buffers
event.recipes.gtceu.assembler(`tfg:railways/screwlink_coupler`)
.itemInputs(`minecraft:tripwire_hook`, `#forge:plates/steel`, '#forge:screws/steel')
.circuit(1)
.itemOutputs(`railways:screwlink_coupler`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/screwlink_coupler`)
.itemInputs(`minecraft:tripwire_hook`, `#forge:plates/steel`, '#forge:screws/steel')
.circuit(1)
.itemOutputs(`railways:screwlink_coupler`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/copycat_headstock_screwlink_coupler`)
.itemInputs(`railways:screwlink_coupler`, `create:copycat_panel`)
.circuit(1)
.itemOutputs(`railways:copycat_headstock_screwlink_coupler`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/copycat_headstock_screwlink_coupler`)
.itemInputs(`railways:screwlink_coupler`, `create:copycat_panel`)
.circuit(1)
.itemOutputs(`railways:copycat_headstock_screwlink_coupler`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/buffer`)
.itemInputs(`6x #forge:rods/long/steel`, `2x railways:small_buffer`)
.circuit(1)
.itemOutputs(`railways:buffer`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/buffer`)
.itemInputs(`6x #forge:rods/long/steel`, `2x railways:small_buffer`)
.circuit(1)
.itemOutputs(`railways:buffer`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/small_buffer`)
.itemInputs(`railways:screwlink_coupler`, `#forge:ingots/steel`)
.circuit(1)
.itemOutputs(`railways:small_buffer`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/small_buffer`)
.itemInputs(`railways:screwlink_coupler`, `#forge:ingots/steel`)
.circuit(1)
.itemOutputs(`railways:small_buffer`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/big_buffer`)
.itemInputs(`railways:small_buffer`, `#forge:ingots/steel`)
.circuit(1)
.itemOutputs(`railways:big_buffer`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/big_buffer`)
.itemInputs(`railways:small_buffer`, `#forge:ingots/steel`)
.circuit(1)
.itemOutputs(`railways:big_buffer`)
.duration(200)
.EUt(28)
//#endregion
//#region conductor
event.recipes.gtceu.assembler(`tfg:railways/conductor_cap`)
.itemInputs('#gtceu:circuits/lv','#gtceu:electric_motors','2x #forge:string','#tfc:high_quality_cloth')
.itemInputs('#gtceu:circuits/lv', '#gtceu:electric_motors', '2x #forge:string', '#tfc:high_quality_cloth')
.circuit(15)
.itemOutputs('railways:white_conductor_cap')
.duration(80)
.inputFluids(Fluid.of('gtceu:glue', 200))
.EUt(16)
event.recipes.tfc.barrel_sealed(1000)
.inputs('#tfg:colored_caps', Fluid.of(`tfc:lye`, 288))
.outputItem(`railways:white_conductor_cap`)
.id(`railways:barrel/cap_decolor`)
event.recipes.gtceu.chemical_bath(`tfg:cap_decolor_bath`)
.itemInputs('#tfg:colored_caps')
.inputFluids(Fluid.of('gtceu:chlorine', 20))
.itemOutputs('railways:white_conductor_cap')
.duration(80)
.EUt(4)
.category(GTRecipeCategories.CHEM_DYES)
global.MINECRAFT_DYE_NAMES.forEach(dye => {
event.recipes.gtceu.chemical_bath(`railways/${dye}_conductor_cap`)
.itemInputs('railways:white_conductor_cap')
.inputFluids(Fluid.of(`tfc:${dye}_dye`, 288))
.itemOutputs(`railways:${dye}_conductor_cap`)
.duration(200)
.EUt(4)
.category(GTRecipeCategories.CHEM_DYES)
event.recipes.gtceu.chemical_bath(`railways/${dye}_conductor_cap`)
.itemInputs('railways:white_conductor_cap')
.inputFluids(Fluid.of(`tfc:${dye}_dye`, 288))
.itemOutputs(`railways:${dye}_conductor_cap`)
.duration(200)
.EUt(4)
.category(GTRecipeCategories.CHEM_DYES)
if (dye != "white") {
event.recipes.tfc.barrel_sealed(1000)
event.recipes.tfc.barrel_sealed(1000)
.inputs(`railways:white_conductor_cap`, Fluid.of(`tfc:${dye}_dye`, 288))
.outputItem(`railways:${dye}_conductor_cap`)
.id(`railways:barrel/dyeing/${dye}_conductor_cap`)
event.recipes.gtceu.chemical_bath(`tfg:cap_decolor_bath`)
.itemInputs('#tfg:colored_caps')
.inputFluids(Fluid.of('gtceu:chlorine',20))
.itemOutputs('railways:white_conductor_cap')
.duration(80)
.EUt(4)
.category(GTRecipeCategories.CHEM_DYES)
}
})
//#endregion
// Переключатель пути поезда из андезита

View file

@ -0,0 +1,11 @@
// priority: 0
function registerTFCDataForSophisticatedBackpacks(event) {
event.itemSize('sophisticatedbackpacks:backpack', 'very_large', 'very_heavy', 'backpack_size')
event.itemSize('sophisticatedbackpacks:iron_backpack', 'very_large', 'very_heavy', 'iron_backpack_size')
event.itemSize('sophisticatedbackpacks:gold_backpack', 'very_large', 'very_heavy', 'gold_backpack_size')
event.itemSize('sophisticatedbackpacks:diamond_backpack', 'very_large', 'very_heavy', 'diamond_backpack_size')
event.itemSize('sophisticatedbackpacks:netherite_backpack', 'very_large', 'very_heavy', 'netherite_backpack_size')
}

View file

@ -186,11 +186,6 @@ const registerTFCKnappingTypes = (event) => {
//#region registerTFCItemSize
const registerTFCItemSize = (event) => {
event.itemSize('sophisticatedbackpacks:backpack', 'very_large', 'very_heavy', 'backpack_size')
event.itemSize('sophisticatedbackpacks:iron_backpack', 'very_large', 'very_heavy', 'iron_backpack_size')
event.itemSize('sophisticatedbackpacks:gold_backpack', 'very_large', 'very_heavy', 'gold_backpack_size')
event.itemSize('sophisticatedbackpacks:diamond_backpack', 'very_large', 'very_heavy', 'diamond_backpack_size')
event.itemSize('sophisticatedbackpacks:netherite_backpack', 'very_large', 'very_heavy', 'netherite_backpack_size')
global.MINECRAFT_DYE_NAMES.forEach (color => {
event.itemSize(`tfg:decorative_vase/${color}`, 'normal', 'medium', `decorative_vase/${color}`)

View file

@ -0,0 +1,8 @@
// priority: 0
function registerTFCDataForTFCLunchbox(event) {
event.itemSize('tfclunchbox:lunchbox', 'large', 'heavy', 'lunchbox_size')
event.itemSize('tfclunchbox:cooling_lunchbox', 'large', 'heavy', 'cooling_lunchbox_size')
}

View file

@ -0,0 +1,59 @@
// priority: 0
function registerTFCLunchBoxRecipes(event) {
event.shaped('tfclunchbox:lunchbox', [
' CE',
'ABA',
'DAD'
], {
A: '#forge:plates/sterling_silver',
B: '#forge:chests/wooden',
C: '#forge:bolts/brass',
D: '#forge:screws/wrought_iron',
E: '#forge:tools/hammers'
}).id('tfclunchbox:lunchbox')
event.shaped('tfclunchbox:cooling_lunchbox', [
' CE',
'ABA',
'DAD'
], {
A: '#forge:plates/red_steel',
B: '#forge:chests/wooden',
C: '#forge:bolts/brass',
D: '#forge:screws/steel',
E: '#forge:tools/hammers'
}).id('tfclunchbox:cooling_lunchbox')
event.shaped('tfclunchbox:cooling_lunchbox', [
' C ',
'ABA'
], {
A: '#forge:plates/red_steel',
B: 'tfclunchbox:lunchbox',
C: '#forge:tools/hammers'
}).id('tfclunchbox:upgrade_to_cooling_lunchbox')
event.remove({ id: 'tfclunchbox:universal_capsule' })
event.remove({ id: 'tfclunchbox:fill_capsule_with_ice' })
event.recipes.gtceu.assembler('tfclunchbox:universal_capsule')
.itemInputs('1x #forge:foils/red_steel', '1x #forge:rings/sterling_silver')
.itemOutputs('tfclunchbox:universal_capsule')
.duration(100)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.canner('tfclunchbox:fill_capsule_with_ice')
.itemInputs('tfclunchbox:universal_capsule')
.inputFluids(Fluid.of('gtceu:ice', 45 * 144))
.itemOutputs(Item.of('tfclunchbox:universal_capsule', '{Durability:500}').withName(Text.translate('item.tfclunchbox.universal_capsule.filled')))
.duration(100)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.canner('tfclunchbox:fill_capsule_with_ice_solid')
.itemInputs('tfclunchbox:universal_capsule', '5x minecraft:packed_ice')
.itemOutputs(Item.of('tfclunchbox:universal_capsule', '{Durability:500}').withName(Text.translate('item.tfclunchbox.universal_capsule.filled')))
.duration(100)
.EUt(GTValues.VA[GTValues.LV])
}

View file

@ -253,6 +253,13 @@ function registerTFGMiscellaneousRecipes(event) {
.duration(20)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.fluid_solidifier('tfg:ice')
.inputFluids(Fluid.of('minecraft:water', 144))
.notConsumable('gtceu:block_casting_mold')
.itemOutputs('minecraft:ice')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
event.shapeless('4x firmalife:ice_shavings', ['#forge:dusts/ice', '#forge:tools/hammers'])
// Cooling water

View file

@ -575,21 +575,21 @@ function registerVintageImprovementsRecipes(event) {
event.custom({
type: 'vintageimprovements:vacuumizing',
ingredients: [{ tag: 'tfg:latex_logs' }],
results: [{ fluid: 'tfg:latex', amount: 250 }],
results: [{ fluid: 'tfg:latex', amount: 100 }],
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 }],
results: [{ fluid: 'tfg:latex', amount: 25 }],
processingTime: 300
}).id('tfg:vi/vacuumizing/latex_from_rubber_sapling')
event.custom({
type: 'vintageimprovements:vacuumizing',
ingredients: [{ tag: 'tfg:rubber_leaves' }],
results: [{ fluid: 'tfg:latex', amount: 50 }],
results: [{ fluid: 'tfg:latex', amount: 10 }],
processingTime: 150
}).id('tfg:vi/vacuumizing/latex_from_rubber_leaves')