* Initial EMI++ Implementation, still WIP * oops, old file * Code refactor; additional groups * Separated gtceu:molds into 2 types * Added missing tags to a few mods * Added tags to 2 tfc addons * Brick tag fix; all brick blocks go to one group * en_US lang file * small fixes; tfg aqueducts are now tfc --------- Signed-off-by: Pyritie <pyritie@gmail.com> Co-authored-by: Pyritie <pyritie@gmail.com>
347 lines
9.7 KiB
JavaScript
347 lines
9.7 KiB
JavaScript
"use strict";
|
|
|
|
const registerSingleGroups = (event) => {
|
|
const SINGLE_GROUPS_TO_REGISTER = [
|
|
// Raw Ores
|
|
'#tfc:small_ore_pieces',
|
|
'#forge:poor_raw_materials',
|
|
'#forge:raw_materials',
|
|
'#forge:rich_raw_materials',
|
|
|
|
// Processed Ores
|
|
'#forge:crushed_ores',
|
|
'#forge:purified_ores',
|
|
'#forge:refined_ores',
|
|
'#forge:dusty_raw_materials',
|
|
|
|
// Dusts
|
|
'#forge:impure_dusts',
|
|
'#forge:tiny_dusts',
|
|
'#forge:small_dusts',
|
|
'#forge:dusts',
|
|
'#forge:pure_dusts',
|
|
'#forge:powders',
|
|
|
|
// Gems
|
|
'#forge:chipped_gems',
|
|
'#forge:flawed_gems',
|
|
'#forge:gems',
|
|
'#forge:flawless_gems',
|
|
'#forge:exquisite_gems',
|
|
|
|
// Gem Products
|
|
'#forge:lenses',
|
|
|
|
// Ore Products
|
|
'#forge:nuggets',
|
|
'#forge:ingots',
|
|
'#forge:hot_ingots',
|
|
'#forge:storage_blocks',
|
|
'#forge:double_ingots',
|
|
'#forge:dense_plates',
|
|
'#forge:plates',
|
|
'#forge:double_plates',
|
|
'#forge:foils',
|
|
'#forge:rods',
|
|
'#forge:rods/long',
|
|
'#forge:bolts',
|
|
'#forge:screws',
|
|
'#forge:rings',
|
|
'#forge:small_springs',
|
|
'#forge:springs',
|
|
'#forge:small_gears',
|
|
'#forge:gears',
|
|
'#forge:fine_wires',
|
|
'#forge:rotors',
|
|
'#forge:rounds',
|
|
'#forge:whisks',
|
|
'#forge:turbine_blades',
|
|
'#forge:chains',
|
|
|
|
// Tool Heads
|
|
'#forge:pickaxe_heads',
|
|
'#forge:shovel_heads',
|
|
'#forge:axe_heads',
|
|
'#forge:hoe_heads',
|
|
'#forge:sword_heads',
|
|
'#forge:butchery_knife_heads',
|
|
'#forge:drill_heads',
|
|
'#forge:screwdriver_tips',
|
|
'#forge:wire_cutter_heads',
|
|
'#forge:file_heads',
|
|
'#forge:chainsaw_heads',
|
|
'#forge:spade_heads',
|
|
'#forge:mining_hammer_heads',
|
|
'#forge:hammer_heads',
|
|
'#forge:knife_heads',
|
|
'#forge:saw_heads',
|
|
'#forge:wrench_tips',
|
|
'#forge:scythe_heads',
|
|
'#forge:buzz_saw_heads',
|
|
'#forge:javelin_heads',
|
|
'#forge:mace_heads',
|
|
'#forge:chisel_heads',
|
|
'#forge:propick_heads',
|
|
'#forge:mattock_heads',
|
|
'#tfchotornot:tong_parts',
|
|
'#tfcscraping:scraping_knife_blades',
|
|
'#forge:fish_hooks',
|
|
|
|
// Tools (Minecraft)
|
|
'#tfc:pickaxes',
|
|
'#tfc:shovels',
|
|
'#tfc:axes',
|
|
'#tfc:hoes',
|
|
|
|
// Tools (Forge)
|
|
'#forge:tools/butchery_knives',
|
|
'#forge:tools/drills',
|
|
'#forge:tools/screwdrivers',
|
|
'#forge:tools/wire_cutters',
|
|
'#forge:tools/files',
|
|
'#forge:tools/chainsaws',
|
|
'#forge:tools/spades',
|
|
'#forge:tools/mining_hammers',
|
|
'#forge:tools/hammers',
|
|
'#forge:tools/knives',
|
|
'#forge:tools/saws',
|
|
'#forge:tools/wrenches',
|
|
'#forge:tools/scythes',
|
|
'#forge:fishing_rods',
|
|
'#forge:shears',
|
|
'#forge:tools/crowbars',
|
|
'#forge:tools/plungers',
|
|
'#forge:tools/mallets',
|
|
'#forge:tools/mortars',
|
|
'#forge:tools/fishing_nets',
|
|
|
|
// Tools (Other)
|
|
'#tfc:javelins',
|
|
'#tfc:maces',
|
|
'#tfc:chisels',
|
|
'#tfc:propicks',
|
|
'#rnr:mattocks',
|
|
'#tfchotornot:tongs',
|
|
'#tfcscraping:scraping_knives',
|
|
|
|
// Items (Forge)
|
|
'#forge:seeds',
|
|
'#forge:dyes',
|
|
|
|
// Items (GTCEU)
|
|
'#gtceu:extruder_molds',
|
|
'#gtceu:casting_molds',
|
|
|
|
// Items (TFC)
|
|
'#tfc:unfired_molds',
|
|
'#tfc:fired_molds',
|
|
|
|
// Items (Astikor Carts)
|
|
'#tfcastikorcarts:cart_wheel',
|
|
'#tfcastikorcarts:supply_cart',
|
|
'#tfcastikorcarts:plow',
|
|
'#tfcastikorcarts:animal_cart',
|
|
|
|
// Blocks (Forge)
|
|
'#forge:fence_gates',
|
|
'#forge:chests',
|
|
'#forge:frames',
|
|
'#forge:surface_rocks',
|
|
'#forge:bud_indicators',
|
|
'#forge:glass',
|
|
'#forge:glass_panes',
|
|
|
|
// Blocks (GTCEU)
|
|
'#gtceu:lamps',
|
|
|
|
// Blocks (TFC)
|
|
'#tfc:lumber',
|
|
'#tfc:fallen_leaves',
|
|
'#tfc:bookshelves',
|
|
'#tfc:tool_racks',
|
|
'#tfc:workbenches',
|
|
'#tfc:looms',
|
|
'#tfc:sluices',
|
|
'#tfc:barrels',
|
|
'#tfc:lecterns',
|
|
'#tfc:scribing_tables',
|
|
'#tfc:sewing_tables',
|
|
'#tfc:jar_shelves',
|
|
'#tfc:support_beams',
|
|
'#tfc:minecarts',
|
|
'#tfc:anvils',
|
|
'#tfc:ore_deposits',
|
|
|
|
// Stone-related
|
|
'#tfc:rock/hardened',
|
|
'#tfc:rock/raw',
|
|
'#forge:cobblestone',
|
|
'#tfc:rock/smooth',
|
|
'#tfc:rock/gravel',
|
|
'#tfc:rock/aqueducts',
|
|
|
|
// Blocks (Firmalife)
|
|
'#firmalife:food_shelves',
|
|
'#firmalife:hangers',
|
|
'#firmalife:jarbnets',
|
|
'#firmalife:big_barrels',
|
|
'#firmalife:stomping_barrels',
|
|
'#firmalife:barrel_presses',
|
|
'#firmalife:wine_shelves',
|
|
|
|
// Blocks (FirmaCiv)
|
|
'#alekiroofs:roofing',
|
|
|
|
// RNR
|
|
'#rnr:cobbled_roads',
|
|
'#rnr:sett_roads',
|
|
'#rnr:flagstone_roads',
|
|
'#rnr:gravel_roads',
|
|
'#rnr:macadam_roads',
|
|
'#rnr:concrete_roads',
|
|
'#rnr:gravel_road_items',
|
|
'#rnr:flagstone_road_items',
|
|
'#rnr:shingles',
|
|
'#rnr:roof_blocks',
|
|
|
|
// Macaw's
|
|
'#mcw_tfc_aio:bridges',
|
|
'#mcw_tfc_aio:roofs',
|
|
'#mcw_tfc_aio:gutters',
|
|
'#mcw_tfc_aio:awnings',
|
|
'#mcw_tfc_aio:furniture',
|
|
'#mcw_tfc_aio:stripped_furniture'
|
|
]
|
|
|
|
SINGLE_GROUPS_TO_REGISTER.forEach(x => {
|
|
const [mod, item] = x.split(":");
|
|
const safeItem = item.split("/").join("_");
|
|
event.register(`tfg:tfg_${safeItem}`, x)
|
|
})
|
|
}
|
|
|
|
const registerMultiGroups = (event) => {
|
|
const MULTI_GROUPS_TO_REGISTER = [
|
|
{ group_name: 'loose_rocks', tags: [
|
|
'#tfc:igneous_intrusive_rock',
|
|
'#tfc:sedimentary_rock',
|
|
'#tfc:igneous_extrusive_rock',
|
|
'#tfc:metamorphic_rock'
|
|
]},
|
|
{ group_name: 'bricks', tags: [
|
|
'#tfg:stone_brick',
|
|
'#tfc:wet_mud_bricks',
|
|
'#tfc:dry_mud_bricks',
|
|
'tfc:alabaster_brick',
|
|
'tfc:ceramic/unfired_brick',
|
|
'tfc:ceramic/unfired_fire_brick',
|
|
'tfc:ceramic/fire_brick',
|
|
'gtceu:coke_oven_brick'
|
|
]},
|
|
{ group_name: 'brick_blocks', tags: [
|
|
'#tfc:rock/bricks',
|
|
'#tfc:rock/mossy_bricks',
|
|
'#tfc:rock/cracked_bricks',
|
|
'#tfc:rock/chiseled_bricks',
|
|
'tfc:fire_bricks',
|
|
'tfcbetterbf:insulated_fire_bricks',
|
|
'gtceu:coke_oven_bricks'
|
|
]},
|
|
{ group_name: 'concretes', tags: [
|
|
'#forge:concretes',
|
|
'#forge:concrete_powders'
|
|
]},
|
|
{ group_name: 'fluid_pipes', tags: [
|
|
'#forge:tiny_fluid_pipes',
|
|
'#forge:small_fluid_pipes',
|
|
'#forge:normal_fluid_pipes',
|
|
'#forge:large_fluid_pipes',
|
|
'#forge:huge_fluid_pipes',
|
|
'#forge:quadruple_fluid_pipes',
|
|
'#forge:nonuple_fluid_pipes'
|
|
]},
|
|
{ group_name: 'item_pipes', tags: [
|
|
'#forge:small_item_pipes',
|
|
'#forge:normal_item_pipes',
|
|
'#forge:large_item_pipes',
|
|
'#forge:huge_item_pipes'
|
|
]},
|
|
{ group_name: 'restrictive_pipes', tags: [
|
|
'#forge:small_restrictive_pipes',
|
|
'#forge:normal_restrictive_pipes',
|
|
'#forge:large_restrictive_pipes',
|
|
'#forge:huge_restrictive_pipes'
|
|
]}
|
|
]
|
|
|
|
MULTI_GROUPS_TO_REGISTER.forEach(x => {
|
|
event.register(`tfg:tfg_${x.group_name}`, x.tags)
|
|
})
|
|
}
|
|
|
|
const registerWireGroups = (event) => {
|
|
const WIRE_TYPES = [
|
|
'#forge:single_wires/',
|
|
'#forge:double_wires/',
|
|
'#forge:quadruple_wires/',
|
|
'#forge:octal_wires/',
|
|
'#forge:hex_wires/',
|
|
'#forge:single_cables/',
|
|
'#forge:double_cables/',
|
|
'#forge:quadruple_cables/',
|
|
'#forge:octal_cables/',
|
|
'#forge:hex_cables/'
|
|
]
|
|
|
|
function makeWireArray(materials) {
|
|
const output = []
|
|
|
|
WIRE_TYPES.forEach(type => {
|
|
materials.forEach(mat => {
|
|
output.push(type + mat)
|
|
})
|
|
})
|
|
|
|
return output
|
|
}
|
|
|
|
event.register('tfg:tfg_ulv_wires', makeWireArray([
|
|
'lead', 'red_alloy'
|
|
]))
|
|
|
|
event.register('tfg:tfg_lv_wires', makeWireArray([
|
|
'manganese_phosphide', 'nickel', 'cobalt', 'tin'
|
|
]))
|
|
|
|
event.register('tfg:tfg_mv_wires', makeWireArray([
|
|
'copper', 'magnesium_diboride', 'cupronickel', 'annealed_copper', 'iron'
|
|
]))
|
|
|
|
event.register('tfg:tfg_hv_wires', makeWireArray([
|
|
'blue_alloy', 'kanthal', 'gold', 'mercury_barium_calcium_cuprate', 'electrum', 'silver'
|
|
]))
|
|
|
|
event.register('tfg:tfg_ev_wires', makeWireArray([
|
|
'black_steel', 'nichrome', 'aluminium', 'rtm_alloy', 'steel', 'uranium_triplatinum'
|
|
]))
|
|
|
|
event.register('tfg:tfg_iv_wires', makeWireArray([
|
|
'tungsten', 'tungsten_steel', 'samarium_iron_arsenic_oxide', 'platinum', 'graphene'
|
|
]))
|
|
|
|
event.register('tfg:tfg_luv_wires', makeWireArray([
|
|
'hssg', 'osmium', 'niobium_titanium', 'niobium_nitride', 'indium_tin_barium_titanium_cuprate'
|
|
]))
|
|
|
|
event.register('tfg:tfg_zpm_wires', makeWireArray([
|
|
'naquadah', 'vanadium_gallium', 'uranium_rhodium_dinaquadide', 'trinium'
|
|
]))
|
|
|
|
event.register('tfg:tfg_uv_wires', makeWireArray([
|
|
'naquadah_alloy', 'yttrium_barium_cuprate', 'enriched_naquadah_trinium_europium_duranide', 'tritanium'
|
|
]))
|
|
|
|
event.register('tfg:tfg_uhv_wires', makeWireArray([
|
|
'ruthenium_trinium_americium_neutronate', 'europium'
|
|
]))
|
|
} |