The big green PR (#2694)

* blocks

* more textures

* more textures more textures

* blocks

* more textures

* more textures more textures

* blocks

* more textures

* more textures more textures

* blocks

* more textures

* more textures more textures

* firmalife gh stuff

* chloroplasts and brick regex

* gh recipes

* pisciculture fishery

* I am going insane

* more casings = more gooder

* rotten voiding cover

* greenhouse glory

* Is this it chat

* not needed

Signed-off-by: Redeix <redeix.m@gmail.com>

* missed in conflicts

Signed-off-by: Redeix <redeix.m@gmail.com>

* consumerism

* re-add tag import

* remove unused object map

* id normalizer function

---------

Signed-off-by: Redeix <redeix.m@gmail.com>
This commit is contained in:
Redeix 2026-01-10 19:30:46 -06:00 committed by GitHub
parent 3899512635
commit 900e1de8e9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
340 changed files with 3654 additions and 798 deletions

View file

@ -433,3 +433,69 @@ global.GTCEU_SUPERCONDUCTORS = /** @type {const} */ ([
{ name: "ruthenium_trinium_americium_neutronate", materialId: "RutheniumTriniumAmericiumNeutronate" }
]);
//#endregion
//#region Concrete Blocks
/**
* Concrete block groups keyed by type [type, ids].
*
* @global
* @type {Record<string, (string[] & { name: string })>}
*/
global.GTCEU_CONCRETE_BLOCKS = (() => {
/**
* Attach a name to an array of concrete block item IDs.
* @param {string} name
* @param {string[]} items
* @returns {string[] & { name: string }}
*/
function group(name, items) {
items.name = name;
return items;
}
return {
light_concrete: group('light_concrete', [
'gtceu:light_concrete',
'gtceu:light_concrete_cobblestone',
'gtceu:mossy_light_concrete_cobblestone',
'gtceu:polished_light_concrete',
'gtceu:light_concrete_bricks',
'gtceu:cracked_light_concrete_bricks',
'gtceu:mossy_light_concrete_bricks',
'gtceu:chiseled_light_concrete',
'gtceu:light_concrete_tile',
'gtceu:light_concrete_small_tile',
'gtceu:light_concrete_windmill_a',
'gtceu:light_concrete_windmill_b',
'gtceu:small_light_concrete_bricks',
'gtceu:square_light_concrete_bricks'
]),
dark_concrete: group('dark_concrete', [
'gtceu:dark_concrete',
'gtceu:dark_concrete_cobblestone',
'gtceu:mossy_dark_concrete_cobblestone',
'gtceu:polished_dark_concrete',
'gtceu:dark_concrete_bricks',
'gtceu:cracked_dark_concrete_bricks',
'gtceu:mossy_dark_concrete_bricks',
'gtceu:chiseled_dark_concrete',
'gtceu:dark_concrete_tile',
'gtceu:dark_concrete_small_tile',
'gtceu:dark_concrete_windmill_a',
'gtceu:dark_concrete_windmill_b',
'gtceu:small_dark_concrete_bricks',
'gtceu:square_dark_concrete_bricks'
]),
titanium_concrete: group('titanium_concrete', [
'tfg:titanium_concrete',
'tfg:polished_titanium_concrete',
'tfg:titanium_concrete_tile',
'tfg:titanium_concrete_tile_small',
'tfg:titanium_concrete_bricks',
'tfg:titanium_concrete_bricks_small',
'tfg:titanium_concrete_bricks_square'
])
};
})();
//#endregion

View file

@ -3,6 +3,7 @@
const registerGTCEuMachines = (event) => {
const CoilWorkableElectricMultiblockMachine = Java.loadClass("com.gregtechceu.gtceu.api.machine.multiblock.CoilWorkableElectricMultiblockMachine")
const $Tags = Java.loadClass("dev.latvian.mods.kubejs.util.Tags")
//#region Large Solar Panels
@ -87,31 +88,7 @@ const registerGTCEuMachines = (event) => {
.aisle(" S S ", " S S ", " S S ", " CCCCCCC ", " CC CC ", " ", " ", " ", " ", " ", " ", " ", " ", " ")
.aisle(" A A ", " A A ", " S S ", " S S ", " CCC CCC ", " ", " ", " ", " ", " ", " ", " ", " ", " ")
.aisle(" A A ", " A A ", " S S ", " S S ", " CCCCCCC ", " ", " ", " ", " ", " ", " ", " ", " ", " ")
.where("A", Predicates.blocks('gtceu:light_concrete')
.or(Predicates.blocks('gtceu:polished_light_concrete'))
.or(Predicates.blocks('gtceu:light_concrete_bricks'))
.or(Predicates.blocks('gtceu:cracked_light_concrete_bricks'))
.or(Predicates.blocks('gtceu:mossy_light_concrete_bricks'))
.or(Predicates.blocks('gtceu:chiseled_light_concrete'))
.or(Predicates.blocks('gtceu:light_concrete_tile'))
.or(Predicates.blocks('gtceu:light_concrete_small_tile'))
.or(Predicates.blocks('gtceu:light_concrete_windmill_a'))
.or(Predicates.blocks('gtceu:light_concrete_windmill_b'))
.or(Predicates.blocks('gtceu:small_light_concrete_bricks'))
.or(Predicates.blocks('gtceu:square_light_concrete_bricks'))
.or(Predicates.blocks('gtceu:dark_concrete'))
.or(Predicates.blocks('gtceu:polished_dark_concrete'))
.or(Predicates.blocks('gtceu:dark_concrete_bricks'))
.or(Predicates.blocks('gtceu:cracked_dark_concrete_bricks'))
.or(Predicates.blocks('gtceu:mossy_dark_concrete_bricks'))
.or(Predicates.blocks('gtceu:chiseled_dark_concrete'))
.or(Predicates.blocks('gtceu:dark_concrete_tile'))
.or(Predicates.blocks('gtceu:dark_concrete_small_tile'))
.or(Predicates.blocks('gtceu:dark_concrete_windmill_a'))
.or(Predicates.blocks('gtceu:dark_concrete_windmill_b'))
.or(Predicates.blocks('gtceu:small_dark_concrete_bricks'))
.or(Predicates.blocks('gtceu:square_dark_concrete_bricks'))
)
.where("A", Predicates.blockTag($Tags.block("tfg:gtceu_concrete_blocks")))
.where("B", Predicates.blocks(ChemicalHelper.getBlock(TagPrefix.frameGt, GTMaterials.TungstenSteel)))
.where("S", Predicates.blocks(ChemicalHelper.getBlock(TagPrefix.frameGt, GTMaterials.Aluminium)))
.where("C", Predicates.blocks("tfg:casings/machine_casing_green_solar_panel"))
@ -173,31 +150,7 @@ const registerGTCEuMachines = (event) => {
.aisle(" A A ", " A A ", " S S ", " S S ", " S S ", " CCCCCCC ", " CCC CCC ", " ", " ", " ", " ", " ", " ", " ")
.aisle(" A A ", " A A ", " A A ", " S S ", " S S ", " S S ", " CC CC ", " ", " ", " ", " ", " ", " ", " ")
.aisle(" A A ", " A A ", " A A ", " S S ", " S S ", " S S ", " CCCCCCCCC ", " ", " ", " ", " ", " ", " ", " ")
.where("A", Predicates.blocks('gtceu:light_concrete')
.or(Predicates.blocks('gtceu:polished_light_concrete'))
.or(Predicates.blocks('gtceu:light_concrete_bricks'))
.or(Predicates.blocks('gtceu:cracked_light_concrete_bricks'))
.or(Predicates.blocks('gtceu:mossy_light_concrete_bricks'))
.or(Predicates.blocks('gtceu:chiseled_light_concrete'))
.or(Predicates.blocks('gtceu:light_concrete_tile'))
.or(Predicates.blocks('gtceu:light_concrete_small_tile'))
.or(Predicates.blocks('gtceu:light_concrete_windmill_a'))
.or(Predicates.blocks('gtceu:light_concrete_windmill_b'))
.or(Predicates.blocks('gtceu:small_light_concrete_bricks'))
.or(Predicates.blocks('gtceu:square_light_concrete_bricks'))
.or(Predicates.blocks('gtceu:dark_concrete'))
.or(Predicates.blocks('gtceu:polished_dark_concrete'))
.or(Predicates.blocks('gtceu:dark_concrete_bricks'))
.or(Predicates.blocks('gtceu:cracked_dark_concrete_bricks'))
.or(Predicates.blocks('gtceu:mossy_dark_concrete_bricks'))
.or(Predicates.blocks('gtceu:chiseled_dark_concrete'))
.or(Predicates.blocks('gtceu:dark_concrete_tile'))
.or(Predicates.blocks('gtceu:dark_concrete_small_tile'))
.or(Predicates.blocks('gtceu:dark_concrete_windmill_a'))
.or(Predicates.blocks('gtceu:dark_concrete_windmill_b'))
.or(Predicates.blocks('gtceu:small_dark_concrete_bricks'))
.or(Predicates.blocks('gtceu:square_dark_concrete_bricks'))
)
.where("A", Predicates.blockTag($Tags.block("tfg:gtceu_concrete_blocks")))
.where("B", Predicates.blocks(ChemicalHelper.getBlock(TagPrefix.frameGt, GTMaterials.RhodiumPlatedPalladium)))
.where("S", Predicates.blocks(ChemicalHelper.getBlock(TagPrefix.frameGt, GTMaterials.StainlessSteel)))
.where("C", Predicates.blocks("tfg:casings/machine_casing_red_solar_panel"))