Merge branch 'main' into trims

Signed-off-by: Dmitry <52341158+Exzept1on@users.noreply.github.com>
This commit is contained in:
Dmitry 2025-01-18 00:28:09 +07:00 committed by GitHub
commit 29fe3d4e66
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
12 changed files with 269 additions and 32 deletions

View file

@ -152,7 +152,7 @@ jobs:
- name: 📈 Upload Diff
id: upload_diff
if: ${{ steps.read_diff.outputs.diff != '' }} && steps.check_pakku_lock_prev.outputs.file_found == 'true'
uses: actions/upload-artifact@v4.5.0
uses: actions/upload-artifact@v4.6.0
with:
name: Mods-diff
path: PROJECTS_DIFF.md
@ -212,7 +212,7 @@ jobs:
mv *.zip $(basename -s .zip *.zip)-curseforge.zip
- name: 🚀 Upload artifact CurseForge
uses: actions/upload-artifact@v4.5.0
uses: actions/upload-artifact@v4.6.0
with:
name: ${{ needs.info.outputs.project_full_name }}-curseforge
path: ./build/curseforge/${{ needs.info.outputs.project_full_name }}-curseforge.zip
@ -224,7 +224,7 @@ jobs:
mv *.mrpack $(basename -s .mrpack *.mrpack)-modrinth.mrpack
- name: 🚀 Upload artifact modrinth
uses: actions/upload-artifact@v4.5.0
uses: actions/upload-artifact@v4.6.0
with:
name: ${{ needs.info.outputs.project_full_name }}-modrinth
path: ./build/modrinth/${{ needs.info.outputs.project_full_name }}-modrinth.mrpack
@ -267,7 +267,7 @@ jobs:
mv *.zip $(basename -s .zip *.zip)-serverpack.zip
- name: 🚀 Upload artifact server
uses: actions/upload-artifact@v4.5.0
uses: actions/upload-artifact@v4.6.0
with:
name: ${{ needs.info.outputs.project_full_name }}-serverpack
path: ./build/serverpack/${{ needs.info.outputs.project_full_name }}-serverpack.zip
@ -317,7 +317,7 @@ jobs:
zip -r ${{ needs.info.outputs.project_full_name }}-multimc.zip icon.png mmc-pack.json instance.cfg .minecraft/ flame/
- name: 🚀 Upload zip multimc
uses: actions/upload-artifact@v4.5.0
uses: actions/upload-artifact@v4.6.0
with:
name: ${{ needs.info.outputs.project_full_name }}-multimc
path: .pakku/multimc-overrides/${{ needs.info.outputs.project_full_name }}-multimc.zip

View file

@ -0,0 +1,6 @@
[general]
#If true, the tumbler and the pumping station work magically with a redstone signal and no power required.
mechanicalPowerCheatMode = true
#If true, sprinkler will not accept firmalife pipes and will instead require something that exposes a fluid capability, eg. a barrel.
usePipesForSprinklers = false

View file

@ -0,0 +1,62 @@
{
"__comment__": "This file was automatically created by mcresources",
"name": "Irrigation",
"category": "tfc:firmalife",
"icon": "firmalife:sprinkler",
"pages": [
{
"type": "patchouli:text",
"text": "The $(thing)Sprinkler$() is a device that sprinkles water in a 5x6x5 area centered on the block below the sprinkler block. You know it is working when it drips out water particles. Sprinklers placed facing up irrigate the same 5x6x5 area above."
},
{
"type": "tfc:anvil_recipe",
"recipe": "firmalife:anvil/sprinkler",
"text": "The sprinkler is made with a $(thing)Copper Plate$()."
},
{
"type": "patchouli:text",
"text": "Sprinklers must be connected to a system of pipes that feed it water in order to work. This is done by connecting a series of $(thing)Copper Pipes$() to them. Copper Pipes transport water up to 32 blocks to a sprinkler. They are connected to $(thing)Pumping Stations$()."
},
{
"type": "tfc:anvil_recipe",
"recipe": "firmalife:anvil/copper_pipe",
"text": "The copper pipe is made with a plate."
},
{
"type": "patchouli:multiblock",
"multiblock": {
"pattern": [
[
"X"
],
[
"0"
]
],
"mapping": {
"X": "firmalife:pumping_station"
}
},
"name": "",
"text": "",
"enable_visualize": false
},
{
"type": "patchouli:crafting",
"recipe": "tfg:shaped/pumping_station",
"text": "Pumping stations must be above a source block of water in order to work. Activate them with a redstone signal."
},
{
"type": "patchouli:crafting",
"recipe": "firmalife:crafting/oxidized_copper_pipe",
"text": "Oxidized pipes are the same as regular copper pipes, except they do not connect to the other kind of pipe."
},
{
"type": "patchouli:crafting",
"recipe": "firmalife:crafting/greenhouse/iron_greenhouse_port",
"text": "Greenhouse ports have a single pipe inside of them. They can be used to pass water through the walls of greenhouses!"
}
],
"read_by_default": true,
"sortnum": 8
}

View file

@ -1217,4 +1217,96 @@ const registerCreateRecipes = (event) => {
.EUt(20)
//#endregion
// #region So-called "Shit Glass"
event.shaped('4x create:framed_glass',
[
'AA',
'AA'
], {
A: 'minecraft:glass'
}).id('tfg:create/framed_glass')
event.shaped('4x create:tiled_glass',
[
'A A',
' ',
'A A'
], {
A: 'minecraft:glass'
}).id('tfg:create/tiled_glass')
event.shaped('4x create:horizontal_framed_glass',
[
'AA',
' ',
'AA'
], {
A: 'minecraft:glass'
}).id('tfg:create/horizontal_framed_glass')
event.shaped('4x create:vertical_framed_glass',
[
'A A',
'A A'
], {
A: 'minecraft:glass'
}).id('tfg:create/vertical_framed_glass')
const CREATE_FRAMED_GLASS_WINDOWS =
[
'framed_glass',
'tiled_glass',
'horizontal_framed_glass',
'vertical_framed_glass'
]
CREATE_FRAMED_GLASS_WINDOWS.forEach(x => {
event.shapeless(`2x create:${x}_pane`,
[
`create:${x}`,
'#forge:tools/saws'
])
.id(`tfg:create/shapeless/${x}_pane`)
event.recipes.gtceu.cutter(`tfg:create/${x}_pane`)
.itemInputs(`3x create:${x}`)
.itemOutputs(`8x create:${x}_pane`)
.duration(40)
.EUt(20)
})
const CREATE_OTHER_GLASS_WINDOWS =
[
[ 'dark_oak', 'tfc:wood/lumber/hickory' ],
[ 'mangrove', 'tfc:wood/lumber/mangrove' ],
[ 'ornate_iron', 'gtceu:wrought_iron_rod' ]
]
CREATE_OTHER_GLASS_WINDOWS.forEach(x => {
event.shaped(`2x create:${x[0]}_window`,
[
' B ',
'BAB'
], {
A: 'minecraft:glass',
B: x[1]
}).id(`tfg:create/shaped/${x[0]}_window`)
event.shapeless(`2x create:${x[0]}_window_pane`,
[
`create:${x[0]}_window`,
'#forge:tools/saws'
])
.id(`tfg:create/shapeless/${x[0]}_window_pane`)
event.recipes.gtceu.cutter(`tfg:create/${x[0]}_window_pane`)
.itemInputs(`3x create:${x[0]}_window`)
.itemOutputs(`8x create:${x[0]}_window_pane`)
.duration(40)
.EUt(20)
})
// #endregion
}

View file

@ -0,0 +1,22 @@
// priority: 0
const registerEveryCompatRecipes = (event) => {
global.TFC_WOOD_TYPES.forEach(wood =>
{
event.remove({ id: `everycomp:c/tfc/${wood}_window_pane` })
event.shapeless(`2x everycomp:c/tfc/${wood}_window_pane`,
[
`everycomp:c/tfc/${wood}_window`,
'#forge:tools/saws'
])
.id(`tfg:everycompat/shapeless/${wood}_window_pane`)
event.recipes.gtceu.cutter(`tfg:everycompat/shapeless/${wood}_window_pane`)
.itemInputs(`3x everycomp:c/tfc/${wood}_window`)
.itemOutputs(`8x everycomp:c/tfc/${wood}_window_pane`)
.duration(40)
.EUt(20)
})
}

View file

@ -0,0 +1,9 @@
// priority: 0
const registerEveryCompatItemTags = (event) => {
event.removeAllTagsFrom('everycomp:c/gtceu/rubber_window')
event.removeAllTagsFrom('everycomp:c/gtceu/rubber_window_pane')
event.add('c:hidden_from_recipe_viewers', 'everycomp:c/gtceu/rubber_window')
event.add('c:hidden_from_recipe_viewers', 'everycomp:c/gtceu/rubber_window_pane')
}

View file

@ -134,6 +134,56 @@ const registerFirmaLifeRecipes = (event) => {
//#region Рецепты теплиц
//#region Медная
event.shaped('firmalife:pumping_station',
[
' B ',
'ACA',
' D '
], {
A: 'firmalife:copper_pipe',
B: 'gtceu:bronze_plate',
C: '#tfc:barrels',
D: 'create:mechanical_pump'
}).id('tfg:shaped/pumping_station')
event.shaped('firmalife:pumping_station',
[
' B ',
'ACA',
' D '
], {
A: 'firmalife:copper_pipe',
B: 'gtceu:black_bronze_plate',
C: '#tfc:barrels',
D: 'create:mechanical_pump'
}).id('tfg:shaped/pumping_station2')
event.shaped('firmalife:pumping_station',
[
' B ',
'ACA',
' D '
], {
A: 'firmalife:copper_pipe',
B: 'gtceu:bismuth_bronze_plate',
C: '#tfc:barrels',
D: 'create:mechanical_pump'
}).id('tfg:shaped/pumping_station3')
event.recipes.gtceu.bender('tfg:firmalife/copper_pipe')
.itemInputs('gtceu:copper_plate')
.itemOutputs('8x firmalife:copper_pipe')
.circuit(3)
.duration(40)
.EUt(8)
event.recipes.gtceu.bender('tfg:firmalife/sprinkler')
.itemInputs('gtceu:copper_plate')
.itemOutputs('firmalife:sprinkler')
.circuit(4)
.duration(60)
.EUt(8)
// Стена
event.shaped('8x firmalife:copper_greenhouse_wall', [
@ -204,7 +254,7 @@ const registerFirmaLifeRecipes = (event) => {
}).id('firmalife:crafting/greenhouse/copper_greenhouse_door')
// Порт
event.shaped('8x firmalife:copper_greenhouse_port', [
event.shaped('firmalife:copper_greenhouse_port', [
'AA',
'BC',
'AA'
@ -287,7 +337,7 @@ const registerFirmaLifeRecipes = (event) => {
}).id('firmalife:crafting/greenhouse/iron_greenhouse_door')
// Порт
event.shaped('8x firmalife:iron_greenhouse_port', [
event.shaped('firmalife:iron_greenhouse_port', [
'AA',
'BC',
'AA'
@ -367,6 +417,7 @@ const registerFirmaLifeRecipes = (event) => {
.itemOutputs(element.output)
.duration(300)
.EUt(16)
.circuit(2)
})
//#endregion
@ -411,6 +462,7 @@ const registerFirmaLifeRecipes = (event) => {
.itemOutputs('firmalife:food/pumpkin_pie_dough')
.duration(300)
.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')
@ -433,6 +485,7 @@ const registerFirmaLifeRecipes = (event) => {
.itemOutputs('firmalife:food/pie_dough')
.duration(300)
.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')
@ -454,6 +507,7 @@ const registerFirmaLifeRecipes = (event) => {
.itemOutputs('4x firmalife:food/hardtack_dough')
.duration(300)
.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')
@ -465,6 +519,7 @@ const registerFirmaLifeRecipes = (event) => {
.outputFluids('firmalife:yeast_starter', 600)
.duration(1200)
.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')

View file

@ -10,6 +10,7 @@ ServerEvents.tags('item', event => {
registerComputerCraftItemTags(event)
registerCreateItemTags(event)
registerCreateAdditionsItemTags(event)
registerEveryCompatItemTags(event)
registerExtendedAE2ItemTags(event)
registerFirmaCivItemTags(event)
registerFirmaLifeItemTags(event)
@ -119,6 +120,7 @@ ServerEvents.recipes(event => {
registerCreateRecipes(event)
registerCreateAdditionsRecipes(event)
registerCreateConnectedRecipes(event)
registerEveryCompatRecipes(event)
registerExtendedAE2Recipes(event)
registerExposureRecipes(event)
registerEtchedRecipes(event)

View file

@ -2206,9 +2206,8 @@ const registerMinecraftRecipes = (event) => {
//#region Выход: Тонированное стекло
event.recipes.gtceu.chemical_bath('tfg:minecraft/tinted_glass')
.itemInputs('minecraft:glass')
.inputFluids(Fluid.of('gtceu:black_dye', 144))
event.recipes.gtceu.alloy_smelter('tfg:minecraft/tinted_glass')
.itemInputs('minecraft:glass', 'tfc:powder/amethyst')
.itemOutputs('minecraft:tinted_glass')
.duration(260)
.EUt(16)
@ -3227,4 +3226,8 @@ const registerMinecraftRecipes = (event) => {
.EUt(32)
//#endregion
// Nether Brick
event.smelting('minecraft:nether_brick', 'minecraft:netherrack')
}

View file

@ -3001,6 +3001,7 @@ const registerTFCRecipes = (event) => {
.itemOutputs(element.output)
.duration(300)
.EUt(16)
.circuit(3)
})
//#endregion

View file

@ -322,33 +322,20 @@ global.CREATE_DISABLED_ITEMS = [
'create:granite_pillar',
// Shit Glass
'create:tiled_glass',
'create:framed_glass',
'create:horizontal_framed_glass',
'create:vertical_framed_glass',
'create:tiled_glass_pane',
'create:horizontal_framed_glass_pane',
'create:vertical_framed_glass_pane',
'create:crimson_window',
'create:warped_window',
'create:oak_window',
'create:spruce_window',
'create:birch_window',
'create:jungle_window',
'create:acacia_window',
'create:dark_oak_window',
'create:mangrove_window',
'create:crimson_window',
'create:warped_window',
'create:ornate_iron_window',
'create:oak_window_pane',
'create:spruce_window_pane',
'create:birch_window_pane',
'create:jungle_window_pane',
'create:acacia_window_pane',
'create:dark_oak_window_pane',
'create:mangrove_window_pane',
'create:crimson_window_pane',
'create:crimson_window_pane',
'create:warped_window_pane',
'create:ornate_iron_window_pane',
// Blocks
'create:zinc_block',
@ -468,6 +455,5 @@ global.CREATE_DISABLED_ITEMS = [
'create:empty_blaze_burner',
'create:minecart_contraption',
'create:furnace_minecart_contraption',
'create:chest_minecart_contraption',
'create:framed_glass_pane'
];
'create:chest_minecart_contraption'
];

View file

@ -33,8 +33,7 @@ global.FIRMALIFE_DISABLED_ITEMS = [
'firmalife:metal/block/stainless_steel_slab',
// Other
'firmalife:compost_tumbler',
'firmalife:pumping_station'
'firmalife:compost_tumbler'
];
global.FIRMALIFE_HIDED_ITEMS = [
@ -130,4 +129,4 @@ global.FIRMALIFE_FURNACE_FLATBREAD_RECIPE_COMPONENTS = [
{ input: 'tfc:food/rice_dough', output: 'firmalife:food/rice_flatbread', name: 'rice_flatbread' },
{ input: 'tfc:food/wheat_dough', output: 'firmalife:food/wheat_flatbread', name: 'wheat_flatbread' },
{ input: 'firmalife:food/masa', output: 'firmalife:food/corn_tortilla', name: 'corn_tortilla' },
];
];