This commit is contained in:
Shiroyasha 2025-09-14 20:52:18 +03:00
commit d8d0e9d536
Signed by: shiroyashik
GPG key ID: E4953D3940D7860A
2567 changed files with 167778 additions and 0 deletions

View file

@ -0,0 +1,29 @@
/**
* Re-tiers the PTERB to late LuV - script 1 of 2.
* - Replaces the neutronium frames with europium frames.
*/
let PTERBMachine = Java.loadClass("net.neganote.gtutilities.common.machine.multiblock.PTERBMachine")
let SupplierMemoizer = Java.loadClass("com.gregtechceu.gtceu.utils.SupplierMemoizer")
StartupEvents.postInit(event => {
let UtilMachines = Java.loadClass("net.neganote.gtutilities.common.machine.UtilMachines");
let pterb_pattern = (definition) => FactoryBlockPattern.start()
.aisle("###XXX###", "####F####", "#########", "####H####", "####H####", "####H####", "####H####", "####H####")
.aisle("#XXXXXXX#", "###FHF###", "####H####", "####H####", "####H####", "####F####", "#########", "#########")
.aisle("#XXHHHXX#", "#########", "#########", "#########", "####F####", "####F####", "#########", "#########")
.aisle("XXHHHHHXX", "#F#####F#", "#########", "####S####", "###SSS###", "###SSS###", "###S#S###", "#########")
.aisle("XXHHHHHXX", "FH##H##HF", "#H##C##H#", "HH#SSS#HH", "HHFSSSFHH", "HFFSSSFFH", "H#######H", "H#######H")
.aisle("XXHHHHHXX", "#F#####F#", "#########", "####S####", "###SSS###", "###SSS###", "###S#S###", "#########")
.aisle("#XXHHHXX#", "#########", "#########", "#########", "####F####", "####F####", "#########", "#########")
.aisle("#XXXXXXX#", "###FHF###", "####H####", "####H####", "####H####", "####F####", "#########", "#########")
.aisle("###XXX###", "####F####", "#########", "####H####", "####H####", "####H####", "####H####", "####H####")
.where("#", Predicates.any())
.where("X", Predicates.blocks("gtceu:palladium_substation").setMinGlobalLimited(30).or(PTERBMachine.getHatchPredicates()))
.where("S", Predicates.blocks("gtceu:superconducting_coil"))
.where("H", Predicates.blocks("gtceu:high_power_casing"))
.where("C", Predicates.controller(Predicates.blocks(UtilMachines.PTERB_MACHINE.getBlock())))
.where("F", Predicates.frames(GTMaterials.Europium))
.build()
UtilMachines.PTERB_MACHINE.setPatternFactory(SupplierMemoizer.memoize(() => pterb_pattern.apply(UtilMachines.PTERB_MACHINE)));
})