Merge branch 'dev' into feature/create-6

This commit is contained in:
Pyritie 2025-06-05 12:25:01 +01:00
commit 686831a719
31 changed files with 1146 additions and 413 deletions

View file

@ -36,16 +36,13 @@ const registerCreateRecipes = (event) => {
{ id: 'create:crafting/schematics/empty_schematic' },
{ id: 'create:crafting/schematics/schematic_and_quill' },
{ id: 'create:crafting/appliances/clipboard_clear' },
{ id: 'create:crafting/kinetics/andesite_door' },
{ id: 'create:crafting/kinetics/brass_door' },
{ id: 'create:crafting/kinetics/copper_door' },
{ id: 'create:crafting/kinetics/train_door' },
{ id: 'create:crafting/kinetics/train_trapdoor' },
{ id: 'create:crafting/logistics/content_observer' },
{ type: 'minecraft:stonecutting' }
], mod: 'create'
})
event.remove({ type: 'minecraft:stonecutting', input: 'create:andesite_alloy' })
// Train Station
event.shapeless('2x create:track_station', [
'create:railway_casing',
@ -1018,50 +1015,54 @@ const registerCreateRecipes = (event) => {
}).id('tfg:create/shaped/copper_backtank')
// Шлем для дайвинга
event.shaped('create:copper_diving_helmet', [
'ABA',
'CDC'
], {
A: '#forge:plates/copper',
B: 'tfc:metal/helmet/copper',
C: '#forge:glass_panes',
D: 'firmaciv:large_waterproof_hide'
}).id('tfg:create/shaped/copper_diving_helmet')
event.recipes.tfc.advanced_shaped_crafting(
TFC.itemStackProvider.of('create:copper_diving_helmet').copyForgingBonus(), [
'ABA',
'CDC'
], {
A: '#forge:plates/copper',
B: 'tfc:metal/helmet/copper',
C: '#forge:glass_panes',
D: 'firmaciv:large_waterproof_hide'
}, 0, 1).id('tfg:create/shaped/copper_diving_helmet')
// Ботинки для дайвинга
event.shaped('create:copper_diving_boots', [
'ABA',
'CDC'
], {
A: '#forge:screws/copper',
B: 'tfc:metal/boots/copper',
C: '#forge:ingots/iron',
D: 'firmaciv:large_waterproof_hide'
}).id('tfg:create/shaped/copper_diving_boots_cast_iron')
event.recipes.tfc.advanced_shaped_crafting(
TFC.itemStackProvider.of('create:copper_diving_boots').copyForgingBonus(), [
'ABA',
'CDC'
], {
A: '#forge:screws/copper',
B: 'tfc:metal/boots/copper',
C: '#forge:ingots/iron',
D: 'firmaciv:large_waterproof_hide'
}, 0, 1).id('tfg:create/shaped/copper_diving_boots_cast_iron')
event.shaped('create:copper_diving_boots', [
'ABA',
'CDC'
], {
A: '#forge:screws/copper',
B: 'tfc:metal/boots/copper',
C: '#forge:ingots/wrought_iron',
D: 'firmaciv:large_waterproof_hide'
}).id('tfg:create/shaped/copper_diving_boots_wrought_iron')
event.recipes.tfc.advanced_shaped_crafting(
TFC.itemStackProvider.of('create:copper_diving_boots').copyForgingBonus(), [
'ABA',
'CDC'
], {
A: '#forge:screws/copper',
B: 'tfc:metal/boots/copper',
C: '#forge:ingots/wrought_iron',
D: 'firmaciv:large_waterproof_hide'
}, 0, 1).id('tfg:create/shaped/copper_diving_boots_wrought_iron')
// Netherite backtank
event.shaped('create:netherite_backtank', [
'ABA',
'CDC',
'EFE'
], {
A: '#forge:screws/blue_steel',
B: 'greate:steel_shaft',
C: '#forge:plates/blue_steel',
D: 'gtceu:steel_drum',
E: 'beneath:cursed_hide',
F: 'tfc:metal/chestplate/blue_steel'
}).id('tfg:create/shaped/netherite_backtank')
event.recipes.tfc.advanced_shaped_crafting(
TFC.itemStackProvider.of('create:netherite_backtank').copyForgingBonus(), [
'ABA',
'CDC',
'EFE'
], {
A: '#forge:screws/blue_steel',
B: 'greate:steel_shaft',
C: '#forge:plates/blue_steel',
D: 'gtceu:steel_drum',
E: 'beneath:cursed_hide',
F: 'tfc:metal/chestplate/blue_steel'
}, 2, 1).id('tfg:create/shaped/netherite_backtank')
event.shaped('create:netherite_backtank', [
'ACA',
@ -1075,15 +1076,16 @@ const registerCreateRecipes = (event) => {
}).id('tfg:create/shaped/netherite_backtank_upgrade')
// Netherite diving helmet
event.shaped('create:netherite_diving_helmet', [
'ABA',
'CDC'
], {
A: '#forge:plates/blue_steel',
B: 'tfc:metal/helmet/blue_steel',
C: 'firmalife:reinforced_glass',
D: 'beneath:cursed_hide'
}).id('tfg:create/shaped/netherite_diving_helmet')
event.recipes.tfc.advanced_shaped_crafting(
TFC.itemStackProvider.of('create:netherite_diving_helmet').copyForgingBonus(), [
'ABA',
'CDC'
], {
A: '#forge:plates/blue_steel',
B: 'tfc:metal/helmet/blue_steel',
C: 'firmalife:reinforced_glass',
D: 'beneath:cursed_hide'
}, 0, 1).id('tfg:create/shaped/netherite_diving_helmet')
event.shaped('create:netherite_diving_helmet', [
' A ',
@ -1097,16 +1099,17 @@ const registerCreateRecipes = (event) => {
}).id('tfg:create/shaped/netherite_diving_helmet_upgrade')
// Netherite diving boots
event.shaped('create:netherite_diving_boots', [
'ABC',
'EDE'
], {
A: '#forge:screws/blue_steel',
B: 'tfc:metal/boots/blue_steel',
C: '#forge:plates/blue_steel',
D: 'beneath:cursed_hide',
E: '#forge:ingots/lead'
}).id('tfg:create/shaped/netherite_diving_boots')
event.recipes.tfc.advanced_shaped_crafting(
TFC.itemStackProvider.of('create:netherite_diving_boots').copyForgingBonus(), [
'ABC',
'EDE'
], {
A: '#forge:screws/blue_steel',
B: 'tfc:metal/boots/blue_steel',
C: '#forge:plates/blue_steel',
D: 'beneath:cursed_hide',
E: '#forge:ingots/lead'
}, 0, 1).id('tfg:create/shaped/netherite_diving_boots')
event.shaped('create:netherite_diving_boots', [
'ABA',
@ -1926,4 +1929,41 @@ const registerCreateRecipes = (event) => {
event.stonecutting('2x create:andesite_scaffolding', '#forge:ingots/tin_alloy')
event.stonecutting('2x create:andesite_ladder', '#forge:ingots/tin_alloy')
event.stonecutting('2x create:andesite_bars', '#forge:ingots/tin_alloy')
// Bars
event.recipes.gtceu.cutter('tfg:create_andesite_bars')
.itemInputs('#forge:plates/tin_alloy')
.itemOutputs('create:andesite_bars')
.duration(100)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.cutter('tfg:create_copper_bars')
.itemInputs('#forge:plates/copper')
.itemOutputs('create:copper_bars')
.duration(100)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.cutter('tfg:create_brass_bars')
.itemInputs('#forge:plates/brass')
.itemOutputs('create:brass_bars')
.duration(100)
.EUt(GTValues.VA[GTValues.LV])
// Doors
event.shapeless('2x create:andesite_door', ['createdeco:andesite_door', '#minecraft:wooden_doors', 'minecraft:glass_pane'])
.id('tfg:shapeless/create_andesite_door')
event.shapeless('2x create:brass_door', ['createdeco:brass_door', '#minecraft:wooden_doors', 'minecraft:glass_pane'])
.id('tfg:shapeless/create_brass_door')
event.shapeless('2x create:copper_door', ['createdeco:copper_door', '#minecraft:wooden_doors', 'minecraft:glass_pane'])
.id('tfg:shapeless/create_copper_door')
event.shapeless('2x create:train_door', ['createdeco:industrial_iron_door', '#minecraft:wooden_doors', 'minecraft:glass_pane'])
.id('tfg:shapeless/create_train_door')
event.shapeless('2x create:train_trapdoor', ['tfc:metal/trapdoor/steel', '#minecraft:wooden_trapdoors'])
.id('tfg:shapeless/create_train_trapdoor')
}

View file

@ -46,6 +46,7 @@ const registerCreateItemTags = (event) => {
event.add('create:blaze_burner_fuel/special', "gtceu:flawless_coal_gem")
event.add('create:blaze_burner_fuel/special', "gtceu:exquisite_coal_gem")
event.add('create:blaze_burner_fuel/special', "gtceu:coke_gem")
event.add('create:blaze_burner_fuel/special', "beneath:cursecoal")
event.add('tfc:forge_invisible_whitelist', 'create:basin')

View file

@ -174,7 +174,7 @@ const registerCreatedecoRecipes = (event) => {
});
//#endregion
// #region Bars
// #region Bars + Doors
const metalThings = [
{ metal: 'andesite', material: 'tin_alloy', tier: 3 },
@ -190,27 +190,106 @@ const registerCreatedecoRecipes = (event) => {
event.remove({ id: `createdeco:${bar.metal}_door` })
if (bar.metal != 'iron') {
event.remove({ type: 'minecraft:stonecutting', output: `createdeco:${bar.metal}_bars` })
event.recipes.tfc.anvil(`4x createdeco:${bar.metal}_bars`, `#forge:ingots/${bar.material}`, ['shrink_last', 'punch_second_last', 'punch_third_last'])
.tier(bar.tier).id(`createdeco:anvil/${bar.metal}_bars`)
event.recipes.tfc.anvil(`createdeco:${bar.metal}_door`, `#forge:ingots/${bar.material}`, ['draw_last', 'draw_second_last', 'punch_third_last'])
event.recipes.gtceu.assembler(`tfg:${bar.material}_create_deco_bars`)
.itemInputs(`2x #forge:rods/${bar.material}`)
.itemOutputs(`4x createdeco:${bar.metal}_bars`)
.duration(100)
.EUt(GTValues.VA[GTValues.LV])
.circuit(12)
event.recipes.tfc.anvil(`createdeco:${bar.metal}_door`, `#forge:double_plates/${bar.material}`, ['draw_last', 'draw_second_last', 'punch_third_last'])
.tier(bar.tier).id(`createdeco:anvil/${bar.metal}_door`)
event.recipes.tfc.anvil(`createdeco:${bar.metal}_trapdoor`, `#forge:ingots/${bar.material}`, ['shrink_last', 'draw_second_last', 'draw_third_last'])
.tier(bar.tier).id(`createdeco:anvil/${bar.metal}_trapdoor`)
event.stonecutting(`createdeco:${bar.metal}_trapdoor`, `#forge:ingots/${bar.material}`)
.id(`createdeco:stonecutting/${bar.metal}_trapdoor`)
event.stonecutting(`createdeco:${bar.metal}_door`, `#forge:ingots/${bar.material}`)
.id(`createdeco:stonecutting/${bar.metal}_door`)
event.recipes.gtceu.cutter(`tfg:${bar.material}_create_deco_door`)
.itemInputs(`#forge:double_plates/${bar.material}`)
.itemOutputs(`createdeco:${bar.metal}_door`)
.duration(100)
.EUt(GTValues.VA[GTValues.LV])
}
event.recipes.tfc.anvil(`4x createdeco:${bar.metal}_bars_overlay`, `#forge:ingots/${bar.material}`, ['draw_last', 'punch_second_last', 'punch_third_last'])
event.remove({ type: 'minecraft:stonecutting', output: `createdeco:${bar.metal}_bars_overlay` })
event.recipes.tfc.anvil(`2x createdeco:${bar.metal}_bars_overlay`, `#forge:ingots/${bar.material}`, ['draw_last', 'punch_second_last', 'punch_third_last'])
.tier(bar.tier).id(`createdeco:anvil/${bar.metal}_bars_overlay`)
event.recipes.gtceu.assembler(`tfg:${bar.material}_create_deco_bars_overlay`)
.itemInputs(`1x #forge:rods/${bar.material}`, `1x #forge:plates/${bar.material}`)
.itemOutputs(`4x createdeco:${bar.metal}_bars_overlay`)
.duration(100)
.EUt(GTValues.VA[GTValues.LV])
.circuit(13)
})
// #endregion
// #region Trapdoors
event.shapeless(`createdeco:copper_trapdoor`, `tfc:metal/trapdoor/copper`)
event.shapeless(`tfc:metal/trapdoor/copper`, `createdeco:copper_trapdoor`)
event.shapeless(`createdeco:industrial_iron_trapdoor`, `tfc:metal/trapdoor/steel`)
event.shapeless(`tfc:metal/trapdoor/steel`, `createdeco:industrial_iron_trapdoor`)
// TODO: move these two into the tag prefixes in tfg-core, then remove these recipes
event.recipes.tfc.anvil(`createdeco:brass_trapdoor`, `#forge:ingots/brass`, ['shrink_last', 'draw_second_last', 'draw_third_last'])
.tier(2).id(`createdeco:anvil/brass_trapdoor`)
event.recipes.gtceu.alloy_smelter(`tfg:cast_brass_trapdoor`)
.itemInputs('#forge:ingots/brass')
.notConsumable('tfg:trapdoor_casting_mold')
.itemOutputs('createdeco:brass_trapdoor')
.duration(GTMaterials.Brass.getMass())
.category(GTRecipeCategories.INGOT_MOLDING)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.fluid_solidifier(`tfg:solidify_brass_trapdoor`)
.inputFluids(Fluid.of(GTMaterials.Brass.getFluid(), 144))
.notConsumable('tfg:trapdoor_casting_mold')
.itemOutputs('createdeco:brass_trapdoor')
.duration(GTMaterials.Brass.getMass())
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.tfc.anvil(`createdeco:zinc_trapdoor`, `#forge:ingots/zinc`, ['shrink_last', 'draw_second_last', 'draw_third_last'])
.tier(1).id(`createdeco:anvil/zinc_trapdoor`)
event.recipes.gtceu.alloy_smelter(`tfg:cast_zinc_trapdoor`)
.itemInputs('#forge:ingots/zinc')
.notConsumable('tfg:trapdoor_casting_mold')
.itemOutputs('createdeco:zinc_trapdoor')
.duration(GTMaterials.Zinc.getMass())
.category(GTRecipeCategories.INGOT_MOLDING)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.fluid_solidifier(`tfg:solidify_zinc_trapdoor`)
.inputFluids(Fluid.of(GTMaterials.Zinc.getFluid(), 144))
.notConsumable('tfg:trapdoor_casting_mold')
.itemOutputs('createdeco:zinc_trapdoor')
.duration(GTMaterials.Zinc.getMass())
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.tfc.anvil(`createdeco:andesite_trapdoor`, `#forge:ingots/iron_alloy`, ['shrink_last', 'draw_second_last', 'draw_third_last'])
.tier(3).id(`createdeco:anvil/andesite_trapdoor`)
event.recipes.gtceu.alloy_smelter(`tfg:cast_tin_alloy_trapdoor`)
.itemInputs('#forge:ingots/tin_alloy')
.notConsumable('tfg:trapdoor_casting_mold')
.itemOutputs('createdeco:andesite_trapdoor')
.duration(GTMaterials.TinAlloy.getMass())
.category(GTRecipeCategories.INGOT_MOLDING)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.fluid_solidifier(`tfg:solidify_tin_alloy_trapdoor`)
.inputFluids(Fluid.of(GTMaterials.TinAlloy.getFluid(), 144))
.notConsumable('tfg:trapdoor_casting_mold')
.itemOutputs('createdeco:andesite_trapdoor')
.duration(GTMaterials.TinAlloy.getMass())
.EUt(GTValues.VA[GTValues.ULV])
// #endregion

View file

@ -444,12 +444,12 @@ const registerFirmaLifeRecipes = (event) => {
// Семена фруктов
global.FIRMALIFE_GREENHOUSE_FRUIT_RECIPE_COMPONENTS.forEach(element => {
generateGreenHouseRecipe(event, element.input, element.fluid_amount, element.output, element.name)
generateGreenHouseRecipe(event, element.input, element.fluid_amount, element.output, element.name, true)
})
// Семена ягод
global.FIRMALIFE_GREENHOUSE_BERRY_RECIPE_COMPONENTS.forEach(element => {
generateGreenHouseRecipe(event, element.input, element.fluid_amount, element.output, element.name)
generateGreenHouseRecipe(event, element.input, element.fluid_amount, element.output, element.name, false)
})
//#endregion

View file

@ -728,7 +728,7 @@ function registerGTCEuMachineRecipes(event) {
], {
A: '#gtceu:circuits/mv',
B: 'gtceu:copper_single_cable',
C: '#gtceu:circuits/mv',
C: 'tfc:compost',
D: 'gtceu:solid_machine_casing'
}).id('tfg:shaped/greenhouse')

View file

@ -834,11 +834,16 @@ function registerGTCEUMetalRecipes(event) {
const processBars = (material) => {
const barsStack = ChemicalHelper.get(TFGTagPrefix.bars, material, 4)
const ingotStack = ChemicalHelper.get(TagPrefix.ingot, material, 1)
if (barsStack == null)
return;
event.stonecutting(barsStack, ChemicalHelper.get(TagPrefix.ingot, material, 1))
.id(`${material.getName()}_ingot_to_bars`)
event.recipes.gtceu.cutter(`tfg:${material.getName()}_bars`)
.itemInputs(ingotStack)
.itemOutputs(barsStack)
.duration(100)
.EUt(GTValues.VA[GTValues.LV])
.circuit(1)
}
forEachMaterial(material => {

View file

@ -23,10 +23,10 @@ const generateCutterRecipe = (event, input, output, duration, EUt, id) => {
.EUt(EUt)
}
const generateGreenHouseRecipe = (event, input, fluid_amount, output, id) => {
const generateGreenHouseRecipe = (event, input, fluid_amount, output, id, overworldExclusive) => {
// Без удобрения
event.recipes.gtceu.greenhouse(id)
let r = event.recipes.gtceu.greenhouse(id)
.itemInputs(input)
.circuit(1)
.inputFluids(Fluid.of('minecraft:water', fluid_amount))
@ -36,8 +36,11 @@ const generateGreenHouseRecipe = (event, input, fluid_amount, output, id) => {
.duration(36000) // 30 mins
.EUt(GTValues.VA[GTValues.LV])
if (overworldExclusive)
r.dimension('minecraft:overworld')
// С удобрением
event.recipes.gtceu.greenhouse(`${id}_fertilized`)
r = event.recipes.gtceu.greenhouse(`${id}_fertilized`)
.itemInputs(input)
.itemInputs('8x gtceu:fertilizer')
.circuit(2)
@ -47,6 +50,9 @@ const generateGreenHouseRecipe = (event, input, fluid_amount, output, id) => {
.chancedOutput(input, 6000, 0)
.duration(12000) // 10 mins
.EUt(GTValues.VA[GTValues.LV])
if (overworldExclusive)
r.dimension('minecraft:overworld')
}
const getFillingNBT = (material, amount) => {

View file

@ -850,15 +850,16 @@ const registerMinecraftRecipes = (event) => {
//#region Netherite leggings (for the lavaproof diving set)
event.shaped('minecraft:netherite_leggings', [
'ABA',
'CDC'
], {
A: '#forge:screws/blue_steel',
B: 'tfc:metal/greaves/blue_steel',
C: '#forge:plates/blue_steel',
D: 'beneath:cursed_hide'
}).id('tfg:minecraft/shaped/netherite_leggings')
event.recipes.tfc.advanced_shaped_crafting(
TFC.itemStackProvider.of('minecraft:netherite_leggings').copyForgingBonus(), [
'ABA',
'CDC'
], {
A: '#forge:screws/blue_steel',
B: 'tfc:metal/greaves/blue_steel',
C: '#forge:plates/blue_steel',
D: 'beneath:cursed_hide'
}, 0, 1).id('tfg:minecraft/shaped/netherite_leggings')
//#endregion

View file

@ -2,8 +2,6 @@
function registerTFCDirtRecipes(event) {
//#region Земля
// Loam + Silt -> Silty Loam (Миксер)
event.recipes.gtceu.mixer('silty_loam_dirt')
.itemInputs('tfc:dirt/loam', 'tfc:dirt/silt')
@ -26,18 +24,11 @@ function registerTFCDirtRecipes(event) {
.itemOutputs(`tfc:rooted_dirt/${mud}`)
.duration(200)
.EUt(16)
})
global.TFC_MUD_TYPES.forEach(mud => {
event.smelting(`tfc:dirt/${mud}`, `tfc:mud/${mud}`)
.id(`tfg:smelting/${mud}_mud_to_grass`)
})
//#endregion
//#region Грязь
global.TFC_MUD_TYPES.forEach(mud => {
// Dirt -> Mud
event.recipes.gtceu.mixer(`${mud}_grass_to_mud`)
.itemInputs(`tfc:dirt/${mud}`)
@ -46,12 +37,8 @@ function registerTFCDirtRecipes(event) {
.itemOutputs(`tfc:mud/${mud}`)
.duration(200)
.EUt(16)
})
//#endregion
//AE Transform Mud
global.TFC_MUD_TYPES.forEach(mud => {
//AE Transform Mud
event.custom({
type: "ae2:transform",
circumstance: {
@ -62,12 +49,8 @@ function registerTFCDirtRecipes(event) {
{item: `tfc:dirt/${mud}`}],
result: {item: `tfc:mud/${mud}`}
}).id(`tfg:ae_transform/${mud}_to_mud`)
})
//#region Грязь кирпичи
global.TFC_MUD_TYPES.forEach(mud => {
// Mud bricks
// Влажный кирпич -> Кирпич
event.smelting(`tfc:mud_brick/${mud}`, `tfc:drying_bricks/${mud}`)
@ -104,9 +87,9 @@ function registerTFCDirtRecipes(event) {
A: `tfc:mud_brick/${mud}`
}).id(`tfc:crafting/soil/${mud}_mud_bricks_slab`)
event.shaped(`2x tfc:mud_bricks/${mud}_wall`, [
'AAA',
'AAA'
event.shaped(`tfc:mud_bricks/${mud}_wall`, [
'A',
'A'
], {
A: `tfc:mud_brick/${mud}`
}).id(`tfc:crafting/soil/${mud}_mud_bricks_wall`)
@ -128,9 +111,16 @@ function registerTFCDirtRecipes(event) {
event.stonecutting(`tfc:mud_bricks/${mud}_wall`, `tfc:mud_bricks/${mud}`)
.id(`tfc:stonecutting/soil/${mud}_mud_bricks_wall`)
// Grass blocks
event.shapeless(`tfc:grass/${mud}`, [`tfc:dirt/${mud}`, 'minecraft:bone_meal', '#forge:seeds'])
.id(`tfg:shapeless/${mud}_grass_bonemeal`)
event.shapeless(`tfc:grass/${mud}`, [`tfc:dirt/${mud}`, 'gtceu:fertilizer', '#forge:seeds'])
.id(`tfg:shapeless/${mud}_grass_fertilizer`)
})
//#endregion
// #region Wattle and daub
// TODO: Workaround for not being able to stain wattle and daub with normal dyes

View file

@ -94,26 +94,26 @@ const registerTFCRecipes = (event) => {
// Дерево
global.TFC_WOOD_TYPES.forEach(wood => {
generateGreenHouseRecipe(event, `8x tfc:wood/sapling/${wood}`, 16000, `64x tfc:wood/log/${wood}`, `tfg:greenhouse/${wood}`)
generateGreenHouseRecipe(event, `8x tfc:wood/sapling/${wood}`, 16000, `64x tfc:wood/log/${wood}`, `tfg:greenhouse/${wood}`, true)
})
global.AFC_SAPLINGS.forEach(x => {
generateGreenHouseRecipe(event, `8x afc:wood/sapling/${x.sapling}`, 16000, `64x ${x.log}`, `tfg:greenhouse/${x.sapling}`)
generateGreenHouseRecipe(event, `8x afc:wood/sapling/${x.sapling}`, 16000, `64x ${x.log}`, `tfg:greenhouse/${x.sapling}`, true)
})
// Семена фруктов
global.TFC_GREENHOUSE_FRUIT_RECIPE_COMPONENTS.forEach(element => {
generateGreenHouseRecipe(event, element.input, element.fluid_amount, element.output, element.name)
generateGreenHouseRecipe(event, element.input, element.fluid_amount, element.output, element.name, true)
})
// Семена овощей
global.TFC_GREENHOUSE_VEGETABLE_RECIPE_COMPONENTS.forEach(element => {
generateGreenHouseRecipe(event, element.input, element.fluid_amount, element.output, element.name)
generateGreenHouseRecipe(event, element.input, element.fluid_amount, element.output, element.name, false)
})
// Семена ягод
global.TFC_GREENHOUSE_BERRY_RECIPE_COMPONENTS.forEach(element => {
generateGreenHouseRecipe(event, element.input, element.fluid_amount, element.output, element.name)
generateGreenHouseRecipe(event, element.input, element.fluid_amount, element.output, element.name, false)
})
// Растения
@ -121,7 +121,7 @@ const registerTFCRecipes = (event) => {
const itemId = element.id;
const recipeId = `greenhouse_${itemId.replace(':', '_')}`;
generateGreenHouseRecipe(event, itemId, 8000, `8x ${itemId}`, recipeId);
generateGreenHouseRecipe(event, itemId, 8000, `8x ${itemId}`, recipeId, false);
});
//#endregion

View file

@ -1076,7 +1076,8 @@ function registerTFCMaterialsRecipes(event) {
let plateItem = ChemicalHelper.get(TagPrefix.plate, material, 1);
// Люк
event.recipes.tfc.anvil(`tfc:metal/trapdoor/${material.getName()}`, plateItem, ['bend_last', 'draw_second_last', 'draw_third_last'])
event.recipes.tfc.anvil(`tfc:metal/trapdoor/${material.getName()}`, plateItem,
['bend_last', 'draw_second_last', 'draw_third_last'])
.tier(tfcProperty.getTier())
.id(`tfc:anvil/${material.getName()}_trapdoor`)
@ -1086,12 +1087,14 @@ function registerTFCMaterialsRecipes(event) {
.id(`tfc:heating/metal/${material.getName()}_bars`)
// 8x Решетка
event.recipes.tfc.anvil(`8x tfc:metal/bars/${material.getName()}`, plateItem, ['upset_last', 'punch_second_last', 'punch_third_last'])
event.recipes.tfc.anvil(`4x tfc:metal/bars/${material.getName()}`, ingotItem,
['upset_last', 'punch_second_last', 'punch_third_last'])
.tier(tfcProperty.getTier())
.id(`tfc:anvil/${material.getName()}_bars`)
// 16x Решетка
event.recipes.tfc.anvil(`16x tfc:metal/bars/${material.getName()}`, ChemicalHelper.get(TagPrefix.plateDouble, material, 1), ['upset_last', 'punch_second_last', 'punch_third_last'])
event.recipes.tfc.anvil(`8x tfc:metal/bars/${material.getName()}`, ChemicalHelper.get(TFGTagPrefix.ingotDouble, material, 1),
['upset_last', 'punch_second_last', 'punch_third_last'])
.tier(tfcProperty.getTier())
.id(`tfc:anvil/${material.getName()}_bars_double`)

View file

@ -58,6 +58,8 @@ const registerTFGItemTags = (event) => {
//#region Cloth & String
event.add('forge:cloth', 'tfg:phantom_silk')
event.add('forge:cloth', 'tfg:polycaprolactam_fabric')
event.add('tfc:high_quality_cloth', 'tfg:phantom_silk')
event.add('tfc:high_quality_cloth', 'tfg:polycaprolactam_fabric')
event.add('tfc:sewing_light_cloth', 'tfg:phantom_silk')
event.add('tfc:sewing_dark_cloth', 'tfg:polycaprolactam_fabric')
event.add('forge:string', 'tfg:phantom_thread')
@ -137,9 +139,7 @@ const registerTFGItemTags = (event) => {
// Universal Circuits
global.UNIVERSAL_CIRCUIT_TIERS.forEach(tier => {
event.add(`gtceu:circuits/${tier}`, `tfg:${tier}_universal_circuit`);
})
global.UNIVERSAL_CIRCUIT_TIERS.forEach(tier => { event.add(`gtceu:circuits/${tier}`, `tfg:${tier}_universal_circuit`); })
// #endregion