tag cleanup

This commit is contained in:
Pyritie 2025-10-14 16:02:36 +01:00
parent 47e7d34936
commit 9fa8d4dab6
2 changed files with 434 additions and 561 deletions

View file

@ -5,6 +5,8 @@ const registerTFGItemTags = (event) => {
registerTFGTrimTags(event)
registerFacadeWhitelistTags(event)
registerBlockInteractionTags(event)
registerTFGItemStoneTags(event)
//crop stuff
event.add('tfc:seeds', 'tfg:sunflower_seeds')
event.add('tfc:seeds', 'tfg:rapeseed_seeds')
@ -37,12 +39,6 @@ const registerTFGItemTags = (event) => {
event.add('c:hidden_from_recipe_viewers', 'tfg:pile/hematitic_sand_covering')
event.add('c:hidden_from_recipe_viewers', 'tfg:pile/mars_snow_covering')
//temporary hidden items
event.add('c:hidden_from_recipe_viewers', 'tfg:geyser_source_small')
event.add('c:hidden_from_recipe_viewers', 'tfg:geyser_source')
event.add('c:hidden_from_recipe_viewers', 'tfg:stromatolite_cluster_small')
event.add('c:hidden_from_recipe_viewers', 'tfg:stromatolite_cluster_medium')
//Decorative Vases
global.MINECRAFT_DYE_NAMES.forEach(color => {
event.add('c:hidden_from_recipe_viewers', `tfg:decorative_vase/generated/${color}`)
@ -98,7 +94,6 @@ const registerTFGItemTags = (event) => {
event.add('tfg:empty_dna_syringes', 'tfg:clean_dna_syringe')
event.add('tfc:sewing_needles', 'tfg:stainless_steel_needle')
//#endregion
// #region Paper from wood
@ -117,8 +112,6 @@ const registerTFGItemTags = (event) => {
event.add('forge:wax', 'tfg:conifer_rosin')
event.add('forge:wax', 'tfg:crimsene_gem')
event.add('forge:wax', 'tfg:warpane_gem')
event.add('tfc:fluxstone', 'tfg:loose/dripstone')
// #endregion
event.add('buildinggadgets2:deny', 'tfg:spice')
@ -208,36 +201,6 @@ const registerTFGItemTags = (event) => {
event.add(`gtceu:circuits/${tier}`, `tfg:${tier}_universal_circuit`);
})
// Brick Index
const BRICK_KEYS = [
"brick",
"brick_stairs",
"brick_slab",
"brick_wall",
"cracked_brick",
"cracked_stairs",
"cracked_slab",
"cracked_wall",
"mossy_brick",
"mossy_stairs",
"mossy_slab",
"mossy_wall",
"smooth_brick",
"smooth_stairs",
"smooth_slab",
"smooth_wall",
"chiseled_brick"
];
global.BRICK_INDEX.forEach(brickObj => {
BRICK_KEYS.forEach(key => {
const id = brickObj[key];
if (typeof id === 'string' && id) {
event.add('tfg:brick_index', id);
}
});
});
// Crafting components
event.add('tfg:aluminium_oxide', '#forge:dusts/bauxite')
event.add('tfg:aluminium_oxide', '#forge:dusts/sapphire')
@ -411,361 +374,9 @@ const registerTFGItemTags = (event) => {
event.add('tfg:cannot_launch_in_railgun', 'gtceu:zpm_quantum_tank')
event.add('tfg:cannot_launch_in_railgun', 'gtceu:uv_quantum_tank')
event.add('tfg:cannot_launch_in_railgun', 'gtceu:uhv_quantum_tank')
//#endregion
const SHAPES = ['stairs', 'slab', 'wall']
const SHAPES_AA = ['stairs', 'slab']
const STONE_TYPES = {
deepslate: "metamorphic",
blackstone: "igneous_intrusive",
dripstone: "sedimentary",
crackrack: "igneous_intrusive",
basalt: "igneous_extrusive",
moon: "igneous_intrusive",
moon_deepslate: "igneous_intrusive",
mars: "sedimentary",
venus: "igneous_extrusive",
mercury: "igneous_intrusive",
glacio: "igneous_extrusive",
red_granite: "igneous_intrusive"
}
function getStoneType(stone) {
const stoneType = STONE_TYPES[stone.toLowerCase()];
return stoneType ? stoneType : `Stone "${stone}" not found`;
}
const AA_REGULAR_STONES = ['moon', 'mars', 'venus', 'mercury', 'glacio']
// #region Nether blocks
// Deepslate (Migmatite) [Metamorphic]
const create_deepslate_blocks = Ingredient.of('#create:stone_types/deepslate').itemIds.toArray().map(String);
create_deepslate_blocks.forEach(block => {
event.add(`tfc:${STONE_TYPES.deepslate}_items`, block)
})
event.add(`tfc:${STONE_TYPES.deepslate}_items`, 'minecraft:deepslate')
event.add(`tfc:${STONE_TYPES.deepslate}_items`, 'minecraft:cobbled_deepslate')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.deepslate}_items`, `minecraft:cobbled_deepslate_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `minecraft:cobbled_deepslate_${shape}`)
})
event.add('forge:smooth_stone', 'minecraft:polished_deepslate')
event.add(`tfc:${STONE_TYPES.deepslate}_items`, 'minecraft:polished_deepslate')
event.add('tfc:rock/smooth', 'minecraft:polished_deepslate')
event.add('create:stone_types/deepslate', 'minecraft:polished_deepslate')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.deepslate}_items`, `minecraft:polished_deepslate_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `minecraft:polished_deepslate_${shape}`)
})
event.add('forge:stone_bricks', 'minecraft:deepslate_bricks')
event.add(`tfc:${STONE_TYPES.deepslate}_items`, 'minecraft:deepslate_bricks')
event.add('tfc:rock/bricks', 'minecraft:deepslate_bricks')
event.add('forge:stone_bricks', 'minecraft:deepslate_tiles')
event.add(`tfc:${STONE_TYPES.deepslate}_items`, 'minecraft:deepslate_tiles')
event.add('tfc:rock/bricks', 'minecraft:deepslate_tiles')
event.add('tfc:rock/chiseled_bricks', 'minecraft:deepslate_tiles')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.deepslate}_items`, `minecraft:deepslate_tile_${shape}`)
event.add(`tfg:brick_${shape}`.replace(/ss/g, 's'), `minecraft:deepslate_tile_${shape}`)
})
event.add('forge:stone_bricks', 'minecraft:cracked_deepslate_tiles')
event.add(`tfc:${STONE_TYPES.deepslate}_items`, 'minecraft:cracked_deepslate_tiles')
event.add('tfc:rock/bricks', 'minecraft:cracked_deepslate_tiles')
event.add('tfc:rock/chiseled_bricks', 'minecraft:cracked_deepslate_tiles')
event.add('forge:stone_bricks', 'minecraft:chiseled_deepslate')
event.add(`tfc:${STONE_TYPES.deepslate}_items`, 'minecraft:chiseled_deepslate')
event.add('tfc:rock/bricks', 'minecraft:chiseled_deepslate')
event.add('tfc:rock/chiseled_bricks', 'minecraft:chiseled_deepslate')
// Blackstone (Pyroxenite) [Igneous Intrusive]
event.remove('tfc:metamorphic_rock', 'beneath:blackstone_pebble')
event.add(`tfc:${STONE_TYPES.blackstone}_rock`, 'beneath:blackstone_pebble')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'beneath:blackstone_pebble')
event.add('rnr:loose_rock_items', 'beneath:blackstone_pebble')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'beneath:blackstone_brick')
event.add('forge:stone', 'minecraft:blackstone')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'minecraft:blackstone')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.blackstone}_items`, `minecraft:blackstone_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `minecraft:blackstone_${shape}`)
})
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'minecraft:gilded_blackstone')
event.add('forge:smooth_stone', 'minecraft:polished_blackstone')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'minecraft:polished_blackstone')
event.add('tfc:rock/smooth', 'minecraft:polished_blackstone')
event.add('forge:stone_bricks', 'minecraft:polished_blackstone_bricks')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'minecraft:polished_blackstone_bricks')
event.add('tfc:rock/bricks', 'minecraft:polished_blackstone_bricks')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.blackstone}_items`, `minecraft:polished_blackstone_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `minecraft:polished_blackstone_${shape}`)
})
event.add('forge:stone_bricks', 'minecraft:cracked_polished_blackstone_bricks')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'minecraft:cracked_polished_blackstone_bricks')
event.add('tfc:rock/bricks', 'minecraft:cracked_polished_blackstone_bricks')
event.add('tfc:rock/cracked_bricks', 'minecraft:cracked_polished_blackstone_bricks')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.blackstone}_items`, `minecraft:polished_blackstone_brick_${shape}`)
event.add(`tfg:brick_${shape}`.replace(/ss/g, 's'), `minecraft:polished_blackstone_brick_${shape}`)
})
event.add('forge:stone_bricks', 'minecraft:polished_blackstone_bricks')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'minecraft:polished_blackstone_bricks')
event.add('tfc:rock/bricks', 'minecraft:polished_blackstone_bricks')
event.add('forge:stone_bricks', 'minecraft:chiseled_polished_blackstone')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'minecraft:chiseled_polished_blackstone')
event.add('tfc:rock/bricks', 'minecraft:chiseled_polished_blackstone')
event.add('tfc:rock/chiseled_bricks', 'minecraft:chiseled_polished_blackstone')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'beneath:blackstone_aqueduct')
// Dripstone (Travertine) [Sedimentary]
const create_dripstone_blocks = Ingredient.of('#create:stone_types/dripstone').itemIds.toArray().map(String);
create_dripstone_blocks.forEach(block => {
event.add(`tfc:${STONE_TYPES.dripstone}_items`, block)
})
event.add('forge:stone', 'minecraft:dripstone_block')
event.add(`tfc:${STONE_TYPES.dripstone}_items`, 'minecraft:dripstone_block')
event.add('forge:smooth_stone', 'create:cut_dripstone')
event.add(`tfc:${STONE_TYPES.dripstone}_items`, 'create:cut_dripstone')
event.add('tfc:rock/smooth', 'create:cut_dripstone')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.dripstone}_items`, `create:cut_dripstone_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `create:cut_dripstone_${shape}`)
})
event.add('forge:smooth_stone', 'ad_astra:polished_cut_dripstone')
event.add('tfc:rock/smooth', 'create:polished_cut_dripstone')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.dripstone}_items`, `create:polished_cut_dripstone_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `create:polished_cut_dripstone_${shape}`)
})
event.add('forge:stone_bricks', 'create:cut_dripstone_bricks')
event.add(`tfc:${STONE_TYPES.dripstone}_items`, 'create:cut_dripstone_bricks')
event.add('tfc:rock/bricks', 'create:cut_dripstone_bricks')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.dripstone}_items`, `create:cut_dripstone_brick_${shape}`)
event.add(`tfg:brick_${shape}`.replace(/ss/g, 's'), `create:cut_dripstone_brick_${shape}`)
})
event.add('forge:stone_bricks', 'create:small_dripstone_bricks')
event.add(`tfc:${STONE_TYPES.dripstone}_items`, 'create:small_dripstone_bricks')
event.add('tfc:rock/bricks', 'create:small_dripstone_bricks')
event.add('tfc:rock/chiseled_bricks', 'create:small_dripstone_bricks')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.dripstone}_items`, `create:small_dripstone_brick_${shape}`)
event.add(`tfg:brick_${shape}`.replace(/ss/g, 's'), `create:small_dripstone_brick_${shape}`)
})
// Crackrack / "Nether" (Keratophyre) [Igneous Intrusive]
event.add('forge:stone', 'beneath:crackrack')
event.add(`tfc:${STONE_TYPES.crackrack}_items`, 'beneath:crackrack')
event.add('forge:stone_bricks', 'minecraft:nether_bricks')
event.add(`tfc:${STONE_TYPES.crackrack}_items`, 'minecraft:nether_bricks')
event.add('tfc:rock/bricks', 'minecraft:nether_bricks')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.crackrack}_items`, `minecraft:nether_brick_${shape}`)
event.add(`tfg:brick_${shape}`.replace(/ss/g, 's'), `minecraft:nether_brick_${shape}`)
})
event.add('forge:stone_bricks', 'minecraft:cracked_nether_bricks')
event.add(`tfc:${STONE_TYPES.crackrack}_items`, 'minecraft:cracked_nether_bricks')
event.add('tfc:rock/bricks', 'minecraft:cracked_nether_bricks')
event.add('tfc:rock/cracked_bricks', 'minecraft:cracked_nether_bricks')
event.add('forge:stone_bricks', 'minecraft:chiseled_nether_bricks')
event.add(`tfc:${STONE_TYPES.crackrack}_items`, 'minecraft:chiseled_nether_bricks')
event.add('tfc:rock/bricks', 'minecraft:chiseled_nether_bricks')
event.add('tfc:rock/chiseled_bricks', 'minecraft:chiseled_nether_bricks')
// Basalt
event.add('forge:stone', 'minecraft:basalt')
event.add(`tfc:${STONE_TYPES.basalt}_items`, 'minecraft:basalt')
event.add('forge:smooth_stone', 'minecraft:smooth_basalt')
event.add(`tfc:${STONE_TYPES.basalt}_items`, 'minecraft:smooth_basalt')
event.add('tfc:rock/smooth', 'minecraft:smooth_basalt')
event.add('forge:smooth_stone', 'minecraft:polished_basalt')
event.add(`tfc:${STONE_TYPES.basalt}_items`, 'minecraft:polished_basalt')
event.add('tfc:rock/smooth', 'minecraft:polished_basalt')
// #endregion
// #region Space blocks
AA_REGULAR_STONES.forEach(stone => {
event.add('forge:stone', `ad_astra:${stone}_stone`)
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:${stone}_stone`)
SHAPES_AA.forEach(shape => {
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:${stone}_stone_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `ad_astra:${stone}_stone_${shape}`)
})
event.add('forge:cobblestone', `ad_astra:${stone}_cobblestone`)
event.add('forge:cobblestone/normal', `ad_astra:${stone}_cobblestone`)
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:${stone}_cobblestone`)
SHAPES_AA.forEach(shape => {
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:${stone}_cobblestone_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `ad_astra:${stone}_cobblestone_${shape}`)
})
event.add('forge:smooth_stone', `ad_astra:polished_${stone}_stone`)
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:polished_${stone}_stone`)
event.add('tfc:rock/smooth', `ad_astra:polished_${stone}_stone`)
SHAPES_AA.forEach(shape => {
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:polished_${stone}_stone_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `ad_astra:polished_${stone}_stone_${shape}`)
})
event.add('forge:stone_bricks', `ad_astra:${stone}_stone_bricks`)
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:${stone}_stone_bricks`)
event.add('tfc:rock/bricks', `ad_astra:${stone}_stone_bricks`)
SHAPES.forEach(shape => {
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:${stone}_stone_brick_${shape}`)
event.add(`tfg:brick_${shape}`.replace(/ss/g, 's'), `ad_astra:${stone}_stone_brick_${shape}`)
})
event.add('forge:stone_bricks', `ad_astra:cracked_${stone}_stone_bricks`)
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:cracked_${stone}_stone_bricks`)
event.add('tfc:rock/bricks', `ad_astra:cracked_${stone}_stone_bricks`)
event.add('tfc:rock/cracked_bricks', `ad_astra:cracked_${stone}_stone_bricks`)
event.add('forge:stone_bricks', `ad_astra:chiseled_${stone}_stone_bricks`)
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:chiseled_${stone}_stone_bricks`)
event.add('tfc:rock/bricks', `ad_astra:chiseled_${stone}_stone_bricks`)
event.add('tfc:rock/chiseled_bricks', `ad_astra:chiseled_${stone}_stone_bricks`)
SHAPES_AA.forEach(shape => {
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:chiseled_${stone}_stone_brick_${shape}`)
event.add(`tfg:brick_${shape}`.replace(/ss/g, 's'), `ad_astra:chiseled_${stone}_stone_brick_${shape}`)
})
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:${stone}_pillar`)
})
// Moon Deepslate (Norite) [Igneous Intrusive]
event.add('forge:stone', 'ad_astra:moon_deepslate')
event.add(`tfc:${STONE_TYPES.moon_deepslate}_items`, 'ad_astra:moon_deepslate')
// Red Granite [Igneous Intrusive]
event.add('forge:stone', 'gtceu:red_granite')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:red_granite')
event.add('forge:cobblestone', 'gtceu:red_granite_cobblestone')
event.add('forge:cobblestone/normal', 'gtceu:red_granite_cobblestone')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:red_granite_cobblestone')
event.add('forge:cobblestone', 'gtceu:mossy_red_granite_cobblestone')
event.add('forge:cobblestone/normal', 'gtceu:mossy_red_granite_cobblestone')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:mossy_red_granite_cobblestone')
event.add('forge:smooth_stone', 'gtceu:polished_red_granite')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:polished_red_granite')
event.add('tfc:rock/smooth', 'gtceu:polished_red_granite')
event.add('forge:stone_bricks', 'gtceu:red_granite_bricks')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:red_granite_bricks')
event.add('tfc:rock/bricks', 'gtceu:red_granite_bricks')
event.add('forge:stone_bricks', 'gtceu:mossy_red_granite_bricks')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:mossy_red_granite_bricks')
event.add('tfc:rock/bricks', 'gtceu:mossy_red_granite_bricks')
event.add('tfc:rock/mossy_bricks', 'gtceu:mossy_red_granite_bricks')
event.add('forge:stone_bricks', 'gtceu:cracked_red_granite_bricks')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:cracked_red_granite_bricks')
event.add('tfc:rock/bricks', 'gtceu:cracked_red_granite_bricks')
event.add('tfc:rock/cracked_bricks', 'gtceu:cracked_red_granite_bricks')
event.add('forge:stone_bricks', 'gtceu:red_granite_tile')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:red_granite_tile')
event.add('tfc:rock/bricks', 'gtceu:red_granite_tile')
event.add('tfc:rock/chiseled_bricks', 'gtceu:red_granite_tile')
event.add('forge:stone_bricks', 'gtceu:square_red_granite_bricks')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:square_red_granite_bricks')
event.add('tfc:rock/bricks', 'gtceu:square_red_granite_bricks')
event.add('tfc:rock/chiseled_bricks', 'gtceu:square_red_granite_bricks')
event.add('forge:stone_bricks', 'gtceu:red_granite_windmill_a')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:red_granite_windmill_a')
event.add('tfc:rock/bricks', 'gtceu:red_granite_windmill_a')
event.add('tfc:rock/chiseled_bricks', 'gtceu:red_granite_windmill_a')
event.add('forge:stone_bricks', 'gtceu:red_granite_windmill_b')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:red_granite_windmill_b')
event.add('tfc:rock/bricks', 'gtceu:red_granite_windmill_b')
event.add('tfc:rock/chiseled_bricks', 'gtceu:red_granite_windmill_b')
event.add('forge:stone_bricks', 'gtceu:small_red_granite_bricks')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:small_red_granite_bricks')
event.add('tfc:rock/bricks', 'gtceu:small_red_granite_bricks')
event.add('tfc:rock/chiseled_bricks', 'gtceu:small_red_granite_bricks')
event.add('forge:stone_bricks', 'gtceu:red_granite_small_tile')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:red_granite_small_tile')
event.add('tfc:rock/bricks', 'gtceu:red_granite_small_tile')
event.add('tfc:rock/chiseled_bricks', 'gtceu:red_granite_small_tile')
event.add('forge:stone_bricks', 'gtceu:chiseled_red_granite')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:chiseled_red_granite')
event.add('tfc:rock/bricks', 'gtceu:chiseled_red_granite')
event.add('tfc:rock/chiseled_bricks', 'gtceu:chiseled_red_granite')
// Permafrost (???) [NA]
event.remove('tfc:metamorphic_rock', 'tfg:loose/permafrost')
event.add('forge:stone', 'ad_astra:permafrost')
event.add('forge:smooth_stone', 'ad_astra:polished_permafrost')
event.add('tfc:rock/smooth', 'ad_astra:polished_permafrost')
event.add('forge:stone_bricks', 'ad_astra:permafrost_bricks')
event.add('tfc:rock/bricks', 'ad_astra:permafrost_bricks')
event.add('forge:stone_bricks', 'ad_astra:cracked_permafrost_bricks')
event.add('tfc:rock/bricks', 'ad_astra:cracked_permafrost_bricks')
event.add('tfc:rock/cracked_bricks', 'ad_astra:cracked_permafrost_bricks')
event.add('forge:stone_bricks', 'ad_astra:chiseled_permafrost_bricks')
event.add('tfc:rock/bricks', 'ad_astra:chiseled_permafrost_bricks')
event.add('tfc:rock/chiseled_bricks', 'ad_astra:chiseled_permafrost_bricks')
// Dirt
// #region Dirt
event.add('tfg:moon_plants', 'tfg:lunar_roots')
event.add('tfg:moon_plants', 'tfg:lunar_sprouts')
@ -784,14 +395,8 @@ const registerTFGItemTags = (event) => {
event.add('tfc:kaolin_clay', 'tfg:grass/amber_kaolin_mycelium')
event.add('tfc:kaolin_clay', 'tfg:grass/rusticus_kaolin_mycelium')
event.add('tfc:kaolin_clay', 'tfg:grass/sangnum_kaolin_mycelium')
// #endregion
// Mars stone dust
event.add('forge:mars_stone_dusts', 'tfg:venus_stone_dust')
event.add('forge:mars_stone_dusts', 'gtceu:granite_red_dust')
event.add('forge:mars_stone_dusts', 'tfg:mars_stone_dust')
//Mars animal region
event.add('tfg:martian_eggs', 'tfg:sniffer_egg')
event.add('tfg:martian_eggs', 'tfg:wraptor_egg')
@ -812,140 +417,6 @@ const registerTFGItemTags = (event) => {
event.add('tfg:mineral_rich_wool', 'tfg:wraptor_wool')
event.add('tfg:mineral_rich_wool', 'tfg:sniffer_wool')
//#endregion
//#region Stone Dusts Tag
event.add('tfg:stone_dusts', 'tfg:gabbro_dust')
event.add('tfg:stone_dusts', 'tfg:shale_dust')
event.add('tfg:stone_dusts', 'tfg:claystone_dust')
event.add('tfg:stone_dusts', 'tfg:limestone_dust')
event.add('tfg:stone_dusts', 'tfg:conglomerate_dust')
event.add('tfg:stone_dusts', 'tfg:dolomite_dust')
event.add('tfg:stone_dusts', 'tfg:chert_dust')
event.add('tfg:stone_dusts', 'tfg:chalk_dust')
event.add('tfg:stone_dusts', 'tfg:rhyolite_dust')
event.add('tfg:stone_dusts', 'tfg:dacite_dust')
event.add('tfg:stone_dusts', 'gtceu:quartzite_dust')
event.add('tfg:stone_dusts', 'tfg:slate_dust')
event.add('tfg:stone_dusts', 'tfg:phyllite_dust')
event.add('tfg:stone_dusts', 'tfg:schist_dust')
event.add('tfg:stone_dusts', 'tfg:gneiss_dust')
event.add('tfg:stone_dusts', 'gtceu:marble_dust')
event.add('tfg:stone_dusts', 'gtceu:basalt_dust')
event.add('tfg:stone_dusts', 'gtceu:diorite_dust')
event.add('tfg:stone_dusts', 'gtceu:andesite_dust')
event.add('tfg:stone_dusts', 'gtceu:granite_dust')
event.add('tfg:stone_dusts', 'gtceu:deepslate_dust')
event.add('tfg:stone_dusts', 'gtceu:blackstone_dust')
event.add('tfg:stone_dusts', 'tfg:dripstone_dust')
event.add('tfg:stone_dusts', 'tfg:moon_stone_dust')
event.add('tfg:stone_dusts', 'tfg:moon_deepslate_dust')
event.add('tfg:stone_dusts', 'tfg:mars_stone_dust')
event.add('tfg:stone_dusts', 'tfg:venus_stone_dust')
event.add('tfg:stone_dusts', 'tfg:mercury_stone_dust')
event.add('tfg:stone_dusts', 'tfg:glacio_stone_dust')
event.add('tfg:stone_dusts', 'gtceu:stone_dust')
event.add('tfg:stone_dusts', 'gtceu:red_granite_dust')
event.add('tfg:stone_dusts', 'gtceu:netherrack_dust')
//#endregion
// #region 0.7.19 -> 0.9 conversion
event.add('c:hidden_from_recipe_viewers', 'treetap:tap')
event.add('c:hidden_from_recipe_viewers', 'tfcea:refrigerator')
event.add('c:hidden_from_recipe_viewers', 'gtceu:zinc_ingot')
event.add('c:hidden_from_recipe_viewers', 'gtceu:brass_ingot')
event.add('c:hidden_from_recipe_viewers', 'gtceu:vanadium_ingot')
event.add('c:hidden_from_recipe_viewers', 'gtceu:black_steel_ingot')
event.add('c:hidden_from_recipe_viewers', 'gtceu:red_steel_ingot')
event.add('c:hidden_from_recipe_viewers', 'gtceu:blue_steel_ingot')
event.add('c:hidden_from_recipe_viewers', 'gtceu:iron_double_ingot')
event.add('c:hidden_from_recipe_viewers', 'gtceu:black_steel_double_ingot')
event.add('c:hidden_from_recipe_viewers', 'gtceu:red_steel_double_ingot')
event.add('c:hidden_from_recipe_viewers', 'gtceu:blue_steel_double_ingot')
event.add('c:hidden_from_recipe_viewers', 'gtceu:zinc_nugget')
event.add('c:hidden_from_recipe_viewers', 'gtceu:brass_nugget')
event.add('c:hidden_from_recipe_viewers', 'gtceu:copper_nugget')
event.add('c:hidden_from_recipe_viewers', 'gtceu:vanadium_nugget')
event.add('c:hidden_from_recipe_viewers', 'gtceu:copper_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:brass_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:gold_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:iron_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:cobalt_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:rose_gold_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:aluminium_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:invar_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:lead_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:nickel_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:osmium_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:palladium_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:platinum_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:rhodium_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:silver_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:vanadium_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:zinc_plate')
event.add('c:hidden_from_recipe_viewers', 'gtceu:vanadium_block')
event.add('c:hidden_from_recipe_viewers', 'gtceu:zinc_block')
event.add('c:hidden_from_recipe_viewers', 'gtceu:brass_block')
event.add('c:hidden_from_recipe_viewers', 'gtceu:gold_purified_ore')
event.add('c:hidden_from_recipe_viewers', 'gtceu:copper_purified_ore')
event.add('c:hidden_from_recipe_viewers', 'gtceu:zinc_purified_ore')
event.add('c:hidden_from_recipe_viewers', 'gtceu:silver_purified_ore')
event.add('c:hidden_from_recipe_viewers', 'gtceu:tin_purified_ore')
event.add('c:hidden_from_recipe_viewers', 'gtceu:lead_purified_ore')
event.add('c:hidden_from_recipe_viewers', 'gtceu:rich_raw_copper')
event.add('c:hidden_from_recipe_viewers', 'minecraft:raw_copper')
event.add('c:hidden_from_recipe_viewers', 'gtceu:poor_raw_copper')
event.add('c:hidden_from_recipe_viewers', 'gtceu:rich_raw_gold')
event.add('c:hidden_from_recipe_viewers', 'minecraft:raw_gold')
event.add('c:hidden_from_recipe_viewers', 'gtceu:poor_raw_gold')
event.add('c:hidden_from_recipe_viewers', 'gtceu:rich_raw_tetrahedrite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:raw_tetrahedrite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:poor_raw_tetrahedrite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:rich_raw_malachite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:raw_malachite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:poor_raw_malachite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:rich_raw_hematite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:raw_hematite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:poor_raw_hematite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:rich_raw_cassiterite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:raw_cassiterite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:poor_raw_cassiterite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:rich_raw_bismuth')
event.add('c:hidden_from_recipe_viewers', 'gtceu:raw_bismuth')
event.add('c:hidden_from_recipe_viewers', 'gtceu:poor_raw_bismuth')
event.add('c:hidden_from_recipe_viewers', 'gtceu:rich_raw_magnetite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:raw_magnetite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:poor_raw_magnetite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:rich_raw_yellow_limonite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:raw_yellow_limonite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:poor_raw_yellow_limonite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:rich_raw_sphalerite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:raw_sphalerite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:poor_raw_sphalerite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:rich_raw_garnierite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:raw_garnierite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:poor_raw_garnierite')
event.add('c:hidden_from_recipe_viewers', 'gtceu:rich_raw_silver')
event.add('c:hidden_from_recipe_viewers', 'gtceu:raw_silver')
event.add('c:hidden_from_recipe_viewers', 'gtceu:poor_raw_silver')
//#endregion
}
//#region Blocks
@ -1239,53 +710,26 @@ const registerTFGBiomeTags = (event) => {
// #region Nether biomes
event.add('tfg:nether_biomes', 'tfg:nether/lush_hollow')
event.add('minecraft:has_structure/nether_fossil', 'tfg:nether/lush_hollow')
event.add('minecraft:has_structure/bastion_remnant', 'tfg:nether/lush_hollow')
event.add('minecraft:allows_surface_slime_spawns', 'tfg:nether/lush_hollow')
event.add('minecraft:spawns_cold_variant_frogs', 'tfg:nether/lush_hollow')
event.add('tfg:nether_biomes', 'tfg:nether/decaying_caverns')
event.add('minecraft:has_structure/nether_fossil', 'tfg:nether/decaying_caverns')
event.add('minecraft:has_structure/bastion_remnant', 'tfg:nether/decaying_caverns')
event.add('minecraft:allows_surface_slime_spawns', 'tfg:nether/decaying_caverns')
event.add('minecraft:spawns_warm_variant_frogs', 'tfg:nether/decaying_caverns')
event.add('minecraft:has_closer_water_fog', 'tfg:nether/decaying_caverns')
event.add('tfg:nether_biomes', 'tfg:nether/basalt_deltas')
event.add('minecraft:has_structure/bastion_remnant', 'tfg:nether/basalt_deltas')
event.add('tfg:nether_biomes', 'tfg:nether/ash_forest')
event.add('minecraft:has_structure/nether_fossil', 'tfg:nether/ash_forest')
event.add('minecraft:has_structure/bastion_remnant', 'tfg:nether/ash_forest')
event.add('tfg:nether_biomes', 'tfg:nether/lava_floes')
event.add('minecraft:has_structure/nether_fossil', 'tfg:nether/lava_floes')
event.add('minecraft:has_structure/bastion_remnant', 'tfg:nether/lava_floes')
event.add('tfg:nether_biomes', 'tfg:nether/webbed_lair')
event.add('minecraft:has_structure/nether_fossil', 'tfg:nether/webbed_lair')
event.add('minecraft:has_structure/bastion_remnant', 'tfg:nether/webbed_lair')
event.add('tfg:nether_biomes', 'tfg:nether/gneiss_caves')
event.add('minecraft:has_structure/nether_fossil', 'tfg:nether/gneiss_caves')
event.add('minecraft:has_structure/bastion_remnant', 'tfg:nether/gneiss_caves')
event.add('tfg:nether_biomes', 'tfg:nether/diorite_caves')
event.add('minecraft:has_structure/nether_fossil', 'tfg:nether/diorite_caves')
event.add('minecraft:has_structure/bastion_remnant', 'tfg:nether/diorite_caves')
event.add('tfg:nether_biomes', 'tfg:nether/gabbro_caves')
event.add('minecraft:has_structure/nether_fossil', 'tfg:nether/gabbro_caves')
event.add('minecraft:has_structure/bastion_remnant', 'tfg:nether/gabbro_caves')
event.add('tfg:nether_biomes', 'tfg:nether/granite_caves')
event.add('minecraft:has_structure/nether_fossil', 'tfg:nether/granite_caves')
event.add('minecraft:has_structure/bastion_remnant', 'tfg:nether/granite_caves')
event.add('tfg:nether_biomes', 'tfg:nether/schist_caves')
event.add('minecraft:has_structure/nether_fossil', 'tfg:nether/schist_caves')
event.add('minecraft:has_structure/bastion_remnant', 'tfg:nether/schist_caves')
event.add('minecraft:has_structure/nether_fossil', '#tfg:nether_biomes')
event.add('minecraft:has_structure/bastion_remnant', '#tfg:nether_biomes')
// #endregion
}

View file

@ -0,0 +1,429 @@
// priority: 0
function registerTFGItemStoneTags(event) {
event.add('tfc:fluxstone', 'tfg:loose/dripstone')
// Brick Index
const BRICK_KEYS = [
"brick",
"brick_stairs",
"brick_slab",
"brick_wall",
"cracked_brick",
"cracked_stairs",
"cracked_slab",
"cracked_wall",
"mossy_brick",
"mossy_stairs",
"mossy_slab",
"mossy_wall",
"smooth_brick",
"smooth_stairs",
"smooth_slab",
"smooth_wall",
"chiseled_brick"
];
global.BRICK_INDEX.forEach(brickObj => {
BRICK_KEYS.forEach(key => {
const id = brickObj[key];
if (typeof id === 'string' && id) {
event.add('tfg:brick_index', id);
}
});
});
// Mars stone dust
event.add('forge:mars_stone_dusts', 'tfg:venus_stone_dust')
event.add('forge:mars_stone_dusts', 'gtceu:granite_red_dust')
event.add('forge:mars_stone_dusts', 'tfg:mars_stone_dust')
//#region Stone Dusts Tag
event.add('tfg:stone_dusts', 'tfg:gabbro_dust')
event.add('tfg:stone_dusts', 'tfg:shale_dust')
event.add('tfg:stone_dusts', 'tfg:claystone_dust')
event.add('tfg:stone_dusts', 'tfg:limestone_dust')
event.add('tfg:stone_dusts', 'tfg:conglomerate_dust')
event.add('tfg:stone_dusts', 'tfg:dolomite_dust')
event.add('tfg:stone_dusts', 'tfg:chert_dust')
event.add('tfg:stone_dusts', 'tfg:chalk_dust')
event.add('tfg:stone_dusts', 'tfg:rhyolite_dust')
event.add('tfg:stone_dusts', 'tfg:dacite_dust')
event.add('tfg:stone_dusts', 'gtceu:quartzite_dust')
event.add('tfg:stone_dusts', 'tfg:slate_dust')
event.add('tfg:stone_dusts', 'tfg:phyllite_dust')
event.add('tfg:stone_dusts', 'tfg:schist_dust')
event.add('tfg:stone_dusts', 'tfg:gneiss_dust')
event.add('tfg:stone_dusts', 'gtceu:marble_dust')
event.add('tfg:stone_dusts', 'gtceu:basalt_dust')
event.add('tfg:stone_dusts', 'gtceu:diorite_dust')
event.add('tfg:stone_dusts', 'gtceu:andesite_dust')
event.add('tfg:stone_dusts', 'gtceu:granite_dust')
event.add('tfg:stone_dusts', 'gtceu:deepslate_dust')
event.add('tfg:stone_dusts', 'gtceu:blackstone_dust')
event.add('tfg:stone_dusts', 'tfg:dripstone_dust')
event.add('tfg:stone_dusts', 'tfg:moon_stone_dust')
event.add('tfg:stone_dusts', 'tfg:moon_deepslate_dust')
event.add('tfg:stone_dusts', 'tfg:mars_stone_dust')
event.add('tfg:stone_dusts', 'tfg:venus_stone_dust')
event.add('tfg:stone_dusts', 'tfg:mercury_stone_dust')
event.add('tfg:stone_dusts', 'tfg:glacio_stone_dust')
event.add('tfg:stone_dusts', 'gtceu:stone_dust')
event.add('tfg:stone_dusts', 'gtceu:red_granite_dust')
event.add('tfg:stone_dusts', 'gtceu:netherrack_dust')
//#endregion
const SHAPES = ['stairs', 'slab', 'wall']
const SHAPES_AA = ['stairs', 'slab']
const STONE_TYPES = {
deepslate: "metamorphic",
blackstone: "igneous_intrusive",
dripstone: "sedimentary",
crackrack: "igneous_intrusive",
basalt: "igneous_extrusive",
moon: "igneous_intrusive",
moon_deepslate: "igneous_intrusive",
mars: "sedimentary",
venus: "igneous_extrusive",
mercury: "igneous_intrusive",
glacio: "igneous_extrusive",
red_granite: "igneous_intrusive"
}
function getStoneType(stone) {
const stoneType = STONE_TYPES[stone.toLowerCase()];
return stoneType ? stoneType : `Stone "${stone}" not found`;
}
const AA_REGULAR_STONES = ['moon', 'mars', 'venus', 'mercury', 'glacio']
// #region Nether blocks
// Deepslate (Migmatite) [Metamorphic]
const create_deepslate_blocks = Ingredient.of('#create:stone_types/deepslate').itemIds.toArray().map(String);
create_deepslate_blocks.forEach(block => {
event.add(`tfc:${STONE_TYPES.deepslate}_items`, block)
})
event.add(`tfc:${STONE_TYPES.deepslate}_items`, 'minecraft:deepslate')
event.add(`tfc:${STONE_TYPES.deepslate}_items`, 'minecraft:cobbled_deepslate')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.deepslate}_items`, `minecraft:cobbled_deepslate_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `minecraft:cobbled_deepslate_${shape}`)
})
event.add('forge:smooth_stone', 'minecraft:polished_deepslate')
event.add(`tfc:${STONE_TYPES.deepslate}_items`, 'minecraft:polished_deepslate')
event.add('tfc:rock/smooth', 'minecraft:polished_deepslate')
event.add('create:stone_types/deepslate', 'minecraft:polished_deepslate')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.deepslate}_items`, `minecraft:polished_deepslate_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `minecraft:polished_deepslate_${shape}`)
})
event.add('forge:stone_bricks', 'minecraft:deepslate_bricks')
event.add(`tfc:${STONE_TYPES.deepslate}_items`, 'minecraft:deepslate_bricks')
event.add('tfc:rock/bricks', 'minecraft:deepslate_bricks')
event.add('forge:stone_bricks', 'minecraft:deepslate_tiles')
event.add(`tfc:${STONE_TYPES.deepslate}_items`, 'minecraft:deepslate_tiles')
event.add('tfc:rock/bricks', 'minecraft:deepslate_tiles')
event.add('tfc:rock/chiseled_bricks', 'minecraft:deepslate_tiles')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.deepslate}_items`, `minecraft:deepslate_tile_${shape}`)
event.add(`tfg:brick_${shape}`.replace(/ss/g, 's'), `minecraft:deepslate_tile_${shape}`)
})
event.add('forge:stone_bricks', 'minecraft:cracked_deepslate_tiles')
event.add(`tfc:${STONE_TYPES.deepslate}_items`, 'minecraft:cracked_deepslate_tiles')
event.add('tfc:rock/bricks', 'minecraft:cracked_deepslate_tiles')
event.add('tfc:rock/chiseled_bricks', 'minecraft:cracked_deepslate_tiles')
event.add('forge:stone_bricks', 'minecraft:chiseled_deepslate')
event.add(`tfc:${STONE_TYPES.deepslate}_items`, 'minecraft:chiseled_deepslate')
event.add('tfc:rock/bricks', 'minecraft:chiseled_deepslate')
event.add('tfc:rock/chiseled_bricks', 'minecraft:chiseled_deepslate')
// Blackstone (Pyroxenite) [Igneous Intrusive]
event.remove('tfc:metamorphic_rock', 'beneath:blackstone_pebble')
event.add(`tfc:${STONE_TYPES.blackstone}_rock`, 'beneath:blackstone_pebble')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'beneath:blackstone_pebble')
event.add('rnr:loose_rock_items', 'beneath:blackstone_pebble')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'beneath:blackstone_brick')
event.add('forge:stone', 'minecraft:blackstone')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'minecraft:blackstone')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.blackstone}_items`, `minecraft:blackstone_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `minecraft:blackstone_${shape}`)
})
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'minecraft:gilded_blackstone')
event.add('forge:smooth_stone', 'minecraft:polished_blackstone')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'minecraft:polished_blackstone')
event.add('tfc:rock/smooth', 'minecraft:polished_blackstone')
event.add('forge:stone_bricks', 'minecraft:polished_blackstone_bricks')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'minecraft:polished_blackstone_bricks')
event.add('tfc:rock/bricks', 'minecraft:polished_blackstone_bricks')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.blackstone}_items`, `minecraft:polished_blackstone_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `minecraft:polished_blackstone_${shape}`)
})
event.add('forge:stone_bricks', 'minecraft:cracked_polished_blackstone_bricks')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'minecraft:cracked_polished_blackstone_bricks')
event.add('tfc:rock/bricks', 'minecraft:cracked_polished_blackstone_bricks')
event.add('tfc:rock/cracked_bricks', 'minecraft:cracked_polished_blackstone_bricks')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.blackstone}_items`, `minecraft:polished_blackstone_brick_${shape}`)
event.add(`tfg:brick_${shape}`.replace(/ss/g, 's'), `minecraft:polished_blackstone_brick_${shape}`)
})
event.add('forge:stone_bricks', 'minecraft:polished_blackstone_bricks')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'minecraft:polished_blackstone_bricks')
event.add('tfc:rock/bricks', 'minecraft:polished_blackstone_bricks')
event.add('forge:stone_bricks', 'minecraft:chiseled_polished_blackstone')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'minecraft:chiseled_polished_blackstone')
event.add('tfc:rock/bricks', 'minecraft:chiseled_polished_blackstone')
event.add('tfc:rock/chiseled_bricks', 'minecraft:chiseled_polished_blackstone')
event.add(`tfc:${STONE_TYPES.blackstone}_items`, 'beneath:blackstone_aqueduct')
// Dripstone (Travertine) [Sedimentary]
const create_dripstone_blocks = Ingredient.of('#create:stone_types/dripstone').itemIds.toArray().map(String);
create_dripstone_blocks.forEach(block => {
event.add(`tfc:${STONE_TYPES.dripstone}_items`, block)
})
event.add('forge:stone', 'minecraft:dripstone_block')
event.add(`tfc:${STONE_TYPES.dripstone}_items`, 'minecraft:dripstone_block')
event.add('forge:smooth_stone', 'create:cut_dripstone')
event.add(`tfc:${STONE_TYPES.dripstone}_items`, 'create:cut_dripstone')
event.add('tfc:rock/smooth', 'create:cut_dripstone')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.dripstone}_items`, `create:cut_dripstone_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `create:cut_dripstone_${shape}`)
})
event.add('forge:smooth_stone', 'ad_astra:polished_cut_dripstone')
event.add('tfc:rock/smooth', 'create:polished_cut_dripstone')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.dripstone}_items`, `create:polished_cut_dripstone_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `create:polished_cut_dripstone_${shape}`)
})
event.add('forge:stone_bricks', 'create:cut_dripstone_bricks')
event.add(`tfc:${STONE_TYPES.dripstone}_items`, 'create:cut_dripstone_bricks')
event.add('tfc:rock/bricks', 'create:cut_dripstone_bricks')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.dripstone}_items`, `create:cut_dripstone_brick_${shape}`)
event.add(`tfg:brick_${shape}`.replace(/ss/g, 's'), `create:cut_dripstone_brick_${shape}`)
})
event.add('forge:stone_bricks', 'create:small_dripstone_bricks')
event.add(`tfc:${STONE_TYPES.dripstone}_items`, 'create:small_dripstone_bricks')
event.add('tfc:rock/bricks', 'create:small_dripstone_bricks')
event.add('tfc:rock/chiseled_bricks', 'create:small_dripstone_bricks')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.dripstone}_items`, `create:small_dripstone_brick_${shape}`)
event.add(`tfg:brick_${shape}`.replace(/ss/g, 's'), `create:small_dripstone_brick_${shape}`)
})
// Crackrack / "Nether" (Keratophyre) [Igneous Intrusive]
event.add('forge:stone', 'beneath:crackrack')
event.add(`tfc:${STONE_TYPES.crackrack}_items`, 'beneath:crackrack')
event.add('forge:stone_bricks', 'minecraft:nether_bricks')
event.add(`tfc:${STONE_TYPES.crackrack}_items`, 'minecraft:nether_bricks')
event.add('tfc:rock/bricks', 'minecraft:nether_bricks')
SHAPES.forEach(shape => {
event.add(`tfc:${STONE_TYPES.crackrack}_items`, `minecraft:nether_brick_${shape}`)
event.add(`tfg:brick_${shape}`.replace(/ss/g, 's'), `minecraft:nether_brick_${shape}`)
})
event.add('forge:stone_bricks', 'minecraft:cracked_nether_bricks')
event.add(`tfc:${STONE_TYPES.crackrack}_items`, 'minecraft:cracked_nether_bricks')
event.add('tfc:rock/bricks', 'minecraft:cracked_nether_bricks')
event.add('tfc:rock/cracked_bricks', 'minecraft:cracked_nether_bricks')
event.add('forge:stone_bricks', 'minecraft:chiseled_nether_bricks')
event.add(`tfc:${STONE_TYPES.crackrack}_items`, 'minecraft:chiseled_nether_bricks')
event.add('tfc:rock/bricks', 'minecraft:chiseled_nether_bricks')
event.add('tfc:rock/chiseled_bricks', 'minecraft:chiseled_nether_bricks')
// Basalt
event.add('forge:stone', 'minecraft:basalt')
event.add(`tfc:${STONE_TYPES.basalt}_items`, 'minecraft:basalt')
event.add('forge:smooth_stone', 'minecraft:smooth_basalt')
event.add(`tfc:${STONE_TYPES.basalt}_items`, 'minecraft:smooth_basalt')
event.add('tfc:rock/smooth', 'minecraft:smooth_basalt')
event.add('forge:smooth_stone', 'minecraft:polished_basalt')
event.add(`tfc:${STONE_TYPES.basalt}_items`, 'minecraft:polished_basalt')
event.add('tfc:rock/smooth', 'minecraft:polished_basalt')
// #endregion
// #region Space blocks
AA_REGULAR_STONES.forEach(stone => {
event.add('forge:stone', `ad_astra:${stone}_stone`)
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:${stone}_stone`)
SHAPES_AA.forEach(shape => {
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:${stone}_stone_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `ad_astra:${stone}_stone_${shape}`)
})
event.add('forge:cobblestone', `ad_astra:${stone}_cobblestone`)
event.add('forge:cobblestone/normal', `ad_astra:${stone}_cobblestone`)
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:${stone}_cobblestone`)
SHAPES_AA.forEach(shape => {
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:${stone}_cobblestone_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `ad_astra:${stone}_cobblestone_${shape}`)
})
event.add('forge:smooth_stone', `ad_astra:polished_${stone}_stone`)
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:polished_${stone}_stone`)
event.add('tfc:rock/smooth', `ad_astra:polished_${stone}_stone`)
SHAPES_AA.forEach(shape => {
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:polished_${stone}_stone_${shape}`)
event.add(`tfg:rock_${shape}`.replace(/ss/g, 's'), `ad_astra:polished_${stone}_stone_${shape}`)
})
event.add('forge:stone_bricks', `ad_astra:${stone}_stone_bricks`)
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:${stone}_stone_bricks`)
event.add('tfc:rock/bricks', `ad_astra:${stone}_stone_bricks`)
SHAPES.forEach(shape => {
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:${stone}_stone_brick_${shape}`)
event.add(`tfg:brick_${shape}`.replace(/ss/g, 's'), `ad_astra:${stone}_stone_brick_${shape}`)
})
event.add('forge:stone_bricks', `ad_astra:cracked_${stone}_stone_bricks`)
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:cracked_${stone}_stone_bricks`)
event.add('tfc:rock/bricks', `ad_astra:cracked_${stone}_stone_bricks`)
event.add('tfc:rock/cracked_bricks', `ad_astra:cracked_${stone}_stone_bricks`)
event.add('forge:stone_bricks', `ad_astra:chiseled_${stone}_stone_bricks`)
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:chiseled_${stone}_stone_bricks`)
event.add('tfc:rock/bricks', `ad_astra:chiseled_${stone}_stone_bricks`)
event.add('tfc:rock/chiseled_bricks', `ad_astra:chiseled_${stone}_stone_bricks`)
SHAPES_AA.forEach(shape => {
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:chiseled_${stone}_stone_brick_${shape}`)
event.add(`tfg:brick_${shape}`.replace(/ss/g, 's'), `ad_astra:chiseled_${stone}_stone_brick_${shape}`)
})
event.add(`tfc:${getStoneType(stone)}_items`, `ad_astra:${stone}_pillar`)
})
// Moon Deepslate (Norite) [Igneous Intrusive]
event.add('forge:stone', 'ad_astra:moon_deepslate')
event.add(`tfc:${STONE_TYPES.moon_deepslate}_items`, 'ad_astra:moon_deepslate')
// Red Granite [Igneous Intrusive]
event.add('forge:stone', 'gtceu:red_granite')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:red_granite')
event.add('forge:cobblestone', 'gtceu:red_granite_cobblestone')
event.add('forge:cobblestone/normal', 'gtceu:red_granite_cobblestone')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:red_granite_cobblestone')
event.add('forge:cobblestone', 'gtceu:mossy_red_granite_cobblestone')
event.add('forge:cobblestone/normal', 'gtceu:mossy_red_granite_cobblestone')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:mossy_red_granite_cobblestone')
event.add('forge:smooth_stone', 'gtceu:polished_red_granite')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:polished_red_granite')
event.add('tfc:rock/smooth', 'gtceu:polished_red_granite')
event.add('forge:stone_bricks', 'gtceu:red_granite_bricks')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:red_granite_bricks')
event.add('tfc:rock/bricks', 'gtceu:red_granite_bricks')
event.add('forge:stone_bricks', 'gtceu:mossy_red_granite_bricks')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:mossy_red_granite_bricks')
event.add('tfc:rock/bricks', 'gtceu:mossy_red_granite_bricks')
event.add('tfc:rock/mossy_bricks', 'gtceu:mossy_red_granite_bricks')
event.add('forge:stone_bricks', 'gtceu:cracked_red_granite_bricks')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:cracked_red_granite_bricks')
event.add('tfc:rock/bricks', 'gtceu:cracked_red_granite_bricks')
event.add('tfc:rock/cracked_bricks', 'gtceu:cracked_red_granite_bricks')
event.add('forge:stone_bricks', 'gtceu:red_granite_tile')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:red_granite_tile')
event.add('tfc:rock/bricks', 'gtceu:red_granite_tile')
event.add('tfc:rock/chiseled_bricks', 'gtceu:red_granite_tile')
event.add('forge:stone_bricks', 'gtceu:square_red_granite_bricks')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:square_red_granite_bricks')
event.add('tfc:rock/bricks', 'gtceu:square_red_granite_bricks')
event.add('tfc:rock/chiseled_bricks', 'gtceu:square_red_granite_bricks')
event.add('forge:stone_bricks', 'gtceu:red_granite_windmill_a')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:red_granite_windmill_a')
event.add('tfc:rock/bricks', 'gtceu:red_granite_windmill_a')
event.add('tfc:rock/chiseled_bricks', 'gtceu:red_granite_windmill_a')
event.add('forge:stone_bricks', 'gtceu:red_granite_windmill_b')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:red_granite_windmill_b')
event.add('tfc:rock/bricks', 'gtceu:red_granite_windmill_b')
event.add('tfc:rock/chiseled_bricks', 'gtceu:red_granite_windmill_b')
event.add('forge:stone_bricks', 'gtceu:small_red_granite_bricks')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:small_red_granite_bricks')
event.add('tfc:rock/bricks', 'gtceu:small_red_granite_bricks')
event.add('tfc:rock/chiseled_bricks', 'gtceu:small_red_granite_bricks')
event.add('forge:stone_bricks', 'gtceu:red_granite_small_tile')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:red_granite_small_tile')
event.add('tfc:rock/bricks', 'gtceu:red_granite_small_tile')
event.add('tfc:rock/chiseled_bricks', 'gtceu:red_granite_small_tile')
event.add('forge:stone_bricks', 'gtceu:chiseled_red_granite')
event.add(`tfc:${STONE_TYPES.red_granite}_items`, 'gtceu:chiseled_red_granite')
event.add('tfc:rock/bricks', 'gtceu:chiseled_red_granite')
event.add('tfc:rock/chiseled_bricks', 'gtceu:chiseled_red_granite')
// Permafrost (???) [NA]
event.remove('tfc:metamorphic_rock', 'tfg:loose/permafrost')
event.add('forge:stone', 'ad_astra:permafrost')
event.add('forge:smooth_stone', 'ad_astra:polished_permafrost')
event.add('tfc:rock/smooth', 'ad_astra:polished_permafrost')
event.add('forge:stone_bricks', 'ad_astra:permafrost_bricks')
event.add('tfc:rock/bricks', 'ad_astra:permafrost_bricks')
event.add('forge:stone_bricks', 'ad_astra:cracked_permafrost_bricks')
event.add('tfc:rock/bricks', 'ad_astra:cracked_permafrost_bricks')
event.add('tfc:rock/cracked_bricks', 'ad_astra:cracked_permafrost_bricks')
event.add('forge:stone_bricks', 'ad_astra:chiseled_permafrost_bricks')
event.add('tfc:rock/bricks', 'ad_astra:chiseled_permafrost_bricks')
event.add('tfc:rock/chiseled_bricks', 'ad_astra:chiseled_permafrost_bricks')
}