i-hate-curseforge/kubejs/startup_scripts/multiblocks/runic_circuitry_assembling_station.js
2024-12-30 03:38:49 +01:00

43 lines
No EOL
3.5 KiB
JavaScript

GTCEuStartupEvents.registry('gtceu:recipe_type', event => {
event.create('runic_circuitry_assembling_station')
.category('runic_circuitry_assembling_station')
.setEUIO('in')
.setMaxIOSize(2, 1, 0, 0)
.setSound(GTSoundEntries.ELECTROLYZER);
});
GTCEuStartupEvents.registry('gtceu:machine', event => {
event.create('runic_circuitry_assembling_station', 'multiblock')
.rotationState(RotationState.NON_Y_AXIS)
.recipeType('runic_circuitry_assembling_station')
.recipeModifiers([GTRecipeModifiers.PARALLEL_HATCH, GTRecipeModifiers.ELECTRIC_OVERCLOCK.apply(OverclockingLogic.PERFECT_OVERCLOCK)])
.pattern(definition => FactoryBlockPattern.start()
.aisle(' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' LLCCCLL ', ' LLCCCLL ', ' LLCCCLL ', ' ')
.aisle(' LLLLLLL ', ' P P ', ' P P ', ' P P ', ' P P ', ' P P ', ' P P ', ' LLLLLLL ', 'LP PL', 'LP PL', 'LP PL', ' LLLLLLL ')
.aisle(' LAAAAAL ', ' ', ' ', ' ', ' ', ' ', ' ', ' LAAAAAL ', 'L P P L', 'L P P L', 'L P P L', ' LLLLLLL ')
.aisle(' LAHHHAL ', ' 333 ', ' ', ' ', ' ', ' ', ' 333 ', ' LAHHHAL ', 'C P P C', 'C P P C', 'C P P C', ' LLLLLLL ')
.aisle(' LAHEHAL ', ' 3S3 ', ' S ', ' D ', ' B ', ' S ', ' 3E3 ', ' LAHEHAL ', 'C C', 'C C', 'C C', ' LLLLLLL ')
.aisle(' LAHHHAL ', ' 333 ', ' ', ' ', ' ', ' ', ' 333 ', ' LAHHHAL ', 'C P P C', 'C P P C', 'C P P C', ' LLLLLLL ')
.aisle(' LAAAAAL ', ' ', ' ', ' ', ' ', ' ', ' ', ' LAAAAAL ', 'L P P L', 'L P P L', 'L P P L', ' LLLLLLL ')
.aisle(' LLLKLLL ', ' P P ', ' P P ', ' P P ', ' P P ', ' P P ', ' P P ', ' LLLLLLL ', 'LP PL', 'LP PL', 'LP PL', ' LLLLLLL ')
.aisle(' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' LLCCCLL ', ' LLCCCLL ', ' LLCCCLL ', ' ')
.where('K', Predicates.controller(Predicates.blocks(definition.get())))
.where('L', Predicates.blocks('kubejs:lumium_casing')
.or(Predicates.autoAbilities(definition.getRecipeTypes()))
.or(Predicates.abilities(PartAbility.MAINTENANCE).setExactLimit(1))
.or(Predicates.abilities(PartAbility.PARALLEL_HATCH).setMaxGlobalLimited(1)))
.where('C', Predicates.heatingCoils())
.where('H', Predicates.blocks(GTBlocks.HIGH_POWER_CASING.get()))
.where('3', Predicates.blocks(GTBlocks.FUSION_CASING_MK3.get()))
.where('A', Predicates.blocks(GTBlocks.CASING_ASSEMBLY_CONTROL.get()))
.where('E', Predicates.blocks(GTBlocks.CASING_ASSEMBLY_LINE.get()))
.where('S', Predicates.blocks('kubejs:stellarium_casing'))
.where('B', Predicates.blocks('kubejs:laser_casing'))
.where('D', Predicates.blocks('thermal_extra:dragonsteel_glass'))
.where('P', Predicates.blocks('gtceu:prismalium_frame'))
.where(' ', Predicates.any())
.build())
.workableCasingRenderer("kubejs:block/casings/casing-lumium",
"gtceu:block/multiblock/implosion_compressor", false);
});