diff --git a/config/fluxnetworks-common.toml b/config/fluxnetworks-common.toml index f4d6e1de0..72791d900 100644 --- a/config/fluxnetworks-common.toml +++ b/config/fluxnetworks-common.toml @@ -18,5 +18,5 @@ placeholder = true #Note that EU-to-FE conversion is provided by GTCEU, instead of Flux Networks. #Ensure you have enabled GTCEU's nativeEUToPlatformNative and euToPlatformRatio = 4. #A game/server restart is required to reload this setting. - enableGTCEU = true + enableGTCEU = false diff --git a/kubejs/server_scripts/End_Game.js b/kubejs/server_scripts/End_Game.js index 7a91e1c8f..14cb2c2a2 100644 --- a/kubejs/server_scripts/End_Game.js +++ b/kubejs/server_scripts/End_Game.js @@ -187,7 +187,7 @@ ServerEvents.recipes(event => { .EUt(GTValues.VA[GTValues.EV]) // Vacuum Freezer - // kubejs Superconductor Wire + // Sculk Superconductor Wire event.recipes.gtceu.vacuum_freezer("sculk_superconductor") .itemInputs("gtceu:cryococcus_ingot") .itemOutputs("gtceu:sculk_superconductor_ingot") @@ -195,6 +195,13 @@ ServerEvents.recipes(event => { .duration(100) .EUt(6000) + event.recipes.gtceu.vacuum_freezer("hyperdegenerate_darconite") + .itemInputs("gtceu:darconite_ingot") + .itemOutputs("gtceu:hyperdegenerate_darconite_ingot") + .inputFluids(Fluid.of("gtceu:hyperdegenerate_matter", 40)) + .duration(100) + .EUt(60000) + // Chemical Reactor event.recipes.gtceu.chemical_reactor("cryolobus_dust") diff --git a/kubejs/server_scripts/aa_planet_resources.js b/kubejs/server_scripts/aa_planet_resources.js index 7b662c4c2..b3abd6dc7 100644 --- a/kubejs/server_scripts/aa_planet_resources.js +++ b/kubejs/server_scripts/aa_planet_resources.js @@ -145,7 +145,7 @@ ServerEvents.recipes(event => { .chancedOutput("minecraft:blaze_powder", 5000, 0) .chancedOutput("gtceu:bauxite_dust", 2000, 200) .chancedOutput("gtceu:scheelite_dust", 1500, 150) - .chancedOutput("gtceu:netherite_scrap_dust", 500, 100) + .chancedOutput("gtceu:sulfur_dust", 500, 100) .duration(200) .EUt(GTValues.VHA[GTValues.IV]) diff --git a/kubejs/server_scripts/gregtech/Alloys_Recipes.js b/kubejs/server_scripts/gregtech/Alloys_Recipes.js index f6e2df5da..87f6a1708 100644 --- a/kubejs/server_scripts/gregtech/Alloys_Recipes.js +++ b/kubejs/server_scripts/gregtech/Alloys_Recipes.js @@ -171,6 +171,13 @@ ServerEvents.recipes(event => { .inputFluids(Fluid.of("gtceu:mana", 1000)) .duration(400) .EUt(30) + + event.recipes.gtceu.mixer("kubejs:fluxed_ardite_dust") + .itemInputs("4x gtceu:ardite_dust", "2x gtceu:electrum_flux_dust") + .itemOutputs("7x gtceu:fluxed_ardite_dust") + .inputFluids(Fluid.of("gtceu:mana", 1000)) + .duration(400) + .EUt(30) }) ServerEvents.recipes(event => { diff --git a/kubejs/server_scripts/gregtech/Post_UV_Components.js b/kubejs/server_scripts/gregtech/Post_UV_Components.js index 82ac28e23..c73b6fc52 100644 --- a/kubejs/server_scripts/gregtech/Post_UV_Components.js +++ b/kubejs/server_scripts/gregtech/Post_UV_Components.js @@ -367,7 +367,7 @@ ServerEvents.recipes(event => { ) event.recipes.gtceu.assembly_line("uev_emitter") - .itemInputs("gtceu:omnium_frame", "gtceu:uev_electric_motor", "4x gtceu:long_sculk_bioalloy_rod", "kubejs:quasi_stable_neutron_star", "#gtceu:circuits/uev", "64x gtceu:crystal_matrix_foil", "32x gtceu:crystal_matrix_foil", "4x gtceu:darconite_single_cable") + .itemInputs("gtceu:omnium_frame", "gtceu:uev_electric_motor", "4x gtceu:long_sculk_bioalloy_rod", "kubejs:quasi_stable_neutron_star", "#gtceu:circuits/uev", "64x gtceu:lutetium_foil", "32x gtceu:lutetium_foil", "4x gtceu:darconite_single_cable") .inputFluids("gtceu:soldering_alloy 5760", "gtceu:crystal_matrix 5760", "gtceu:naquadria 1152") .itemOutputs("gtceu:uev_emitter") .duration(600) @@ -381,7 +381,7 @@ ServerEvents.recipes(event => { event.recipes.gtceu.assembly_line("uiv_emitter") - .itemInputs("gtceu:infinity_frame", "gtceu:uiv_electric_motor", "4x gtceu:long_eltz_rod", "2x kubejs:quasi_stable_neutron_star", "#gtceu:circuits/uiv", "64x gtceu:crystal_matrix_foil", "32x gtceu:crystal_matrix_foil", "4x gtceu:holmium_single_wire") + .itemInputs("gtceu:infinity_frame", "gtceu:uiv_electric_motor", "4x gtceu:long_eltz_rod", "2x kubejs:quasi_stable_neutron_star", "#gtceu:circuits/uiv", "64x gtceu:neutronium_foil", "32x gtceu:neutronium_foil", "4x gtceu:holmium_single_wire") .inputFluids("gtceu:soldering_alloy 11520", "gtceu:crystal_matrix 5760", "gtceu:naquadria 2304") .itemOutputs("gtceu:uiv_emitter") .duration(1200) @@ -439,7 +439,7 @@ ServerEvents.recipes(event => { // Conveyors event.recipes.gtceu.assembly_line("uhv_conveyor") .itemInputs("2x gtceu:uhv_electric_motor", "2x gtceu:actinium_plate", "4x gtceu:actinium_ring", "16x gtceu:actinium_round", "4x gtceu:actinium_screw", "2x gtceu:europium_single_cable") - .inputFluids("gtceu:soldering_alloy 5760", "gtceu:lubricant 2000", "gtceu:ethylene_propylene_diene_monomer 5760", "gtceu:naquadria 576") + .inputFluids("gtceu:soldering_alloy 5760", "gtceu:lubricant 2000", "gtceu:styrene_butadiene_rubber 5760", "gtceu:naquadria 576") .itemOutputs("gtceu:uhv_conveyor_module") .duration(600) .EUt(491520) @@ -452,7 +452,7 @@ ServerEvents.recipes(event => { event.recipes.gtceu.assembly_line("uev_conveyor") .itemInputs("2x gtceu:uev_electric_motor", "2x gtceu:sculk_bioalloy_plate", "4x gtceu:sculk_bioalloy_ring", "16x gtceu:sculk_bioalloy_round", "4x gtceu:sculk_bioalloy_screw", "2x gtceu:darconite_single_cable") - .inputFluids("gtceu:soldering_alloy 5760", "gtceu:lubricant 3000", "gtceu:ethylene_propylene_diene_monomer 5760", "gtceu:naquadria 1152") + .inputFluids("gtceu:soldering_alloy 5760", "gtceu:lubricant 3000", "gtceu:styrene_butadiene_rubber 5760", "gtceu:naquadria 1152") .itemOutputs("gtceu:uev_conveyor_module") .duration(600) .EUt(1966080) @@ -465,7 +465,7 @@ ServerEvents.recipes(event => { event.recipes.gtceu.assembly_line("uiv_conveyor") .itemInputs("2x gtceu:uiv_electric_motor", "2x gtceu:infinity_plate", "4x gtceu:eltz_ring", "16x gtceu:eltz_round", "4x gtceu:eltz_screw", "2x gtceu:holmium_single_wire") - .inputFluids("gtceu:soldering_alloy 11520", "gtceu:lubricant 4000", "gtceu:ethylene_propylene_diene_monomer 5760", "gtceu:naquadria 2304") + .inputFluids("gtceu:soldering_alloy 11520", "gtceu:lubricant 4000", "gtceu:styrene_butadiene_rubber 5760", "gtceu:naquadria 2304") .itemOutputs("gtceu:uiv_conveyor_module") .duration(1200) .EUt(3932160) @@ -504,7 +504,7 @@ ServerEvents.recipes(event => { ) event.recipes.gtceu.assembly_line("uiv_pump") - .itemInputs("gtceu:uiv_electric_motor", "gtceu:null_large_fluid_pipe", "2x gtceu:eltz_plate", "8x gtceu:eltz_screw", "16x gtceu:silicone_rubber_ring", "gtceu:null_rotor", "2x gtceu:holmium_single_wire") + .itemInputs("gtceu:uiv_electric_motor", "gtceu:meta_null_large_fluid_pipe", "2x gtceu:eltz_plate", "8x gtceu:eltz_screw", "16x gtceu:silicone_rubber_ring", "gtceu:meta_null_rotor", "2x gtceu:holmium_single_wire") .inputFluids("gtceu:soldering_alloy 11520", "gtceu:lubricant 4000", "gtceu:crystal_matrix 5760", "gtceu:naquadria 2304") .itemOutputs("gtceu:uiv_electric_pump") .duration(1200) @@ -537,4 +537,13 @@ ServerEvents.recipes(event => { .itemOutputs("gtceu:uiv_fluid_regulator") .duration(50) .EUt(15728640) + + // Cables + // UV+ cables are made only with SBR, UHV+ cables require PEEK, UIV cables require meta_null + const cablematsUV = ["tritanium", "yttrium_barium_cuprate", "naquadah_alloy", "europium", "omnium", "darconite", "holmium"]; + const cablematsUHV = ["europium", "omnium", "darconite", "holmium"]; + + cablematsUV.forEach(mat => event.remove({ id: new RegExp(`cover_${mat}_wire_gt_.*_silicone`) })); + cablematsUHV.forEach(mat => event.replaceInput({ id: new RegExp(`cover_${mat}_wire_gt_.*_styrene_butadiene`) }, "gtceu:polyvinyl_chloride_foil", "gtceu:polyether_ether_ketone_foil")); + event.replaceInput({ id: /cover_holmium_wire_gt_.*_styrene_butadiene/ }, "gtceu:polyphenylene_sulfide_foil", "gtceu:meta_null_foil"); }) diff --git a/kubejs/server_scripts/gregtech/creative_multis.js b/kubejs/server_scripts/gregtech/creative_multis.js new file mode 100644 index 000000000..5f2e03fdf --- /dev/null +++ b/kubejs/server_scripts/gregtech/creative_multis.js @@ -0,0 +1,14 @@ +/** + * Recipes for running the endgame creative multis + */ + +ServerEvents.recipes(event => { + event.recipes.gtceu.omnidimensional_power_singularity("kubejs:superfuel_infinite_power") + .inputFluids("gtceu:naquadah_superfuel 50") + .duration(20) + + event.recipes.gtceu.omniscience_research_beacon("kubejs:infinite_research") + .inputFluids("gtceu:pcb_coolant 1080") + .CWUt(256) + .duration(20) +}) diff --git a/kubejs/server_scripts/gregtech/naquadah_fuel.js b/kubejs/server_scripts/gregtech/naquadah_fuel.js index 8d11b9523..ebf5ddb41 100644 --- a/kubejs/server_scripts/gregtech/naquadah_fuel.js +++ b/kubejs/server_scripts/gregtech/naquadah_fuel.js @@ -75,7 +75,7 @@ ServerEvents.recipes(event => { event.recipes.gtceu.naquadah_refinery("naquadah_superfuel") .itemInputs("1x gtceu:infinity_dust", "16x kubejs:naquadah_fuel_dust", "64x gtceu:naquadria_dust", "64x gtceu:neutronium_dust") - .inputFluids("gtceu:hyperdegenerate_matter 200", "gtceu:naq_fuel_t2 11000", "gtceu:taranium 576", "gtceu:quadium 600") + .inputFluids("gtceu:hyperdegenerate_matter 200", "gtceu:naq_fuel_t2 11000", (doStoneline ? "gtceu:taranium 576" : "gtceu:actinium 576"), "gtceu:quadium 600") .outputFluids("gtceu:naquadah_superfuel 12000") .duration(800) .EUt(8388608) @@ -192,7 +192,7 @@ ServerEvents.recipes(event => { .chancedOutput("1x gtceu:infinity_dust", 3300, 0) .chancedOutput("3x kubejs:naquadah_waste", 6600, 0) .chancedOutput("16x gtceu:naquadria_dust", 5000, 0) - .chancedFluidOutput("gtceu:taranium 288", 5000, 0) + .chancedFluidOutput((doStoneline ? "gtceu:taranium 228" : "gtceu:actinium 228"), 5000, 0) .chancedFluidOutput("gtceu:hyperdegenerate_matter 100", 3300, 0) .duration(1200) .EUt(1966080) diff --git a/kubejs/server_scripts/gregtech/naquadah_reactor.js b/kubejs/server_scripts/gregtech/naquadah_reactor.js index b764f2743..0a0b5449d 100644 --- a/kubejs/server_scripts/gregtech/naquadah_reactor.js +++ b/kubejs/server_scripts/gregtech/naquadah_reactor.js @@ -32,8 +32,6 @@ ServerEvents.recipes(event => { } // Reactor usage - // TODO: Make recipes not overclockable. I looked through the GregTech KJS integration but am too stupid to figure it out -Ciggy - // @ Ciggy from 3x1t_5tyl3; In startup you just don't add a "GTRecipeModifier" for overclockables. See other multiblocks. As long as ya don't add it it's fine uwu event.recipes.gtceu.naquadah_reactor("kubejs:process_naquadah") .itemInputs("gtceu:enriched_naquadah_bolt") .itemOutputs("gtceu:lead_bolt") diff --git a/kubejs/startup_scripts/_packmode.js b/kubejs/startup_scripts/_packmode.js index d958e32be..f4bd434a7 100644 --- a/kubejs/startup_scripts/_packmode.js +++ b/kubejs/startup_scripts/_packmode.js @@ -102,7 +102,7 @@ global.doBoilers = packMode == "Normal" || packMode == "Hard"; global.doCompacting = packMode == "Normal" || packMode == "Hard"; global.doConduits = packMode == "Normal" || packMode == "Hard"; global.doConverters = packMode == "Normal" || packMode == "Hard"; -global.doHarderNaqFuel = packMode == "Hard" || packMode == "Expert"; +global.doHarderNaqFuel = packMode == "Normal" || packMode == "Hard" || packMode == "Expert"; // Temporary, NM Naqfuel tweaks is beyond the scope of this PR. global.doHarderPrintedSilicon = packMode == "Expert"; global.doHarderProcessing = packMode == "Hard" || packMode == "Expert"; global.doHarderRecipes = packMode == "Hard" || packMode == "Expert"; diff --git a/kubejs/startup_scripts/gregtech_crafting_components.js b/kubejs/startup_scripts/gregtech_crafting_components.js index b57705c6b..95d4f788f 100644 --- a/kubejs/startup_scripts/gregtech_crafting_components.js +++ b/kubejs/startup_scripts/gregtech_crafting_components.js @@ -121,10 +121,10 @@ GTCEuStartupEvents.craftingComponents(event => { // // event.modify(prefixComponentPair[1], pipeMap) // }) - event.setItems("glass", { - UHV: "gtceu:fusion_glass", - UEV: "gtceu:fusion_glass", - UIV: "gtceu:fusion_glass", + event.modifyItem("glass", { + UHV: Item.of("gtceu:fusion_glass"), + UEV: Item.of("kubejs:prism_glass"), + UIV: Item.of("kubejs:prism_glass") }) // event.setItem(GTCraftingComponents.GLASS, GTValues.UHV, Item.of("gtceu:fusion_glass")) // event.setItem(GTCraftingComponents.GLASS, GTValues.UEV, Item.of("gtceu:fusion_glass")) @@ -155,13 +155,11 @@ GTCEuStartupEvents.craftingComponents(event => { // plateMap[GTValues.MAX] = MaterialEntry(TagPrefix.plate, GTMaterials.get("monium")) // event.modifyMaterialEntry(CraftingComponent.PLATE, plateMap) - const PECA = "plate:polyethyl_cyanoacrylate" - const PBI = "plate:polybenzimidazole" event.setMaterialEntries("hull_plate", { - UHV: PBI, - UEV: PECA, - UIV: PECA, - MAX: PECA + UHV: "plate:polybenzimidazole", + UEV: "plate:polyethyl_cyanoacrylate", + UIV: "plate:polyethyl_cyanoacrylate", + MAX: "plate:polyethyl_cyanoacrylate" }) // event.setMaterialEntry(GTCraftingComponents.HULL_PLATE, GTValues.UEV, new MaterialEntry(TagPrefix.plate, GTMaterials.get("polyethyl_cyanoacrylate"))) diff --git a/kubejs/startup_scripts/gregtech_material_registry/chemicals.js b/kubejs/startup_scripts/gregtech_material_registry/chemicals.js index d195842fa..177146f96 100644 --- a/kubejs/startup_scripts/gregtech_material_registry/chemicals.js +++ b/kubejs/startup_scripts/gregtech_material_registry/chemicals.js @@ -321,7 +321,7 @@ GTCEuStartupEvents.registry("gtceu:material", event => { .flags(GTMaterialFlags.DISABLE_DECOMPOSITION) event.create("polyether_ether_ketone") - .liquid().dust() + .liquid().dust().polymer() .color(0x272a2e) .components("19x carbon", "12x hydrogen", "3x oxygen") .formula("(C6H4O2)(C13H8O)") diff --git a/kubejs/startup_scripts/gregtech_material_registry/material_rework.js b/kubejs/startup_scripts/gregtech_material_registry/material_rework.js index 7edc70bc4..061ab9525 100644 --- a/kubejs/startup_scripts/gregtech_material_registry/material_rework.js +++ b/kubejs/startup_scripts/gregtech_material_registry/material_rework.js @@ -3,7 +3,7 @@ * Material Rework related material declarations */ GTCEuStartupEvents.registry("gtceu:element", event => { - event.create("null") + event.create("meta_null") .protons(0) .neutrons(0) .symbol("∅"); @@ -29,13 +29,22 @@ GTCEuStartupEvents.registry("gtceu:material", event => { .cableProperties(GTValues.V[GTValues.UEV], 1, 32, false) .flags(GTMaterialFlags.GENERATE_FINE_WIRE) + // UEV Moni Supercon + event.create("fluxed_ardite") + .ingot().fluid() + .color(0xd07856).secondaryColor(0x771f05) + .iconSet("magic") + .blastTemp(11000, "highest", GTValues.VHA[GTValues.UHV], 1200) + .components("4x ardite", "2x electrum_flux", "mana") + .cableProperties(GTValues.V[GTValues.UEV], 1, 0, true) + // UEV GT Supercon - event.create("osmium_taranium_einsteinium_caesium_omnide") + event.create("osmium_einsteinium_caesium_omnide") .ingot().fluid() .color(0x3221fb).secondaryColor(0x89a223) .iconSet("metallic") .blastTemp(11000, "highest", GTValues.VHA[GTValues.UV], 800) - .components("3x darmstadtium", "4x cobalt", "2x nitrogen") + .components("2x osmium", "4x einsteinium", "5x caesium", "2x omnium") .cableProperties(GTValues.V[GTValues.UEV], 32, 0, true) // UIV Moni Supercon @@ -46,6 +55,7 @@ GTCEuStartupEvents.registry("gtceu:material", event => { .blastTemp(11000, "highest", GTValues.VHA[GTValues.UV], 800) .components("3x darmstadtium", "4x cobalt", "2x nitrogen") .cableProperties(GTValues.V[GTValues.UIV], 1, 0, true) + .flags(GTMaterialFlags.DISABLE_ALLOY_BLAST) // UIV GT Supercon event.create("eltic_neptunium_antimony_terbium_germanium_carbide") @@ -53,24 +63,15 @@ GTCEuStartupEvents.registry("gtceu:material", event => { .color(0x89a223).secondaryColor(0x3221fb) .iconSet("magic") .blastTemp(11000, "highest", GTValues.VHA[GTValues.UV], 800) - .components("3x darmstadtium", "4x cobalt", "2x nitrogen") + .components("4x eltz", "2x neptunium", "1x antimony", "1x terbium", "1x germanium", "2x carbon") .cableProperties(GTValues.V[GTValues.UIV], 64, 0, true) // UIV pipe/insulator - event.create("null") + event.create("meta_null") .ingot().fluid() .color(0x000000).secondaryColor(0x24142c) .iconSet("shiny") - .element(GTElements.get("null")) + .element(GTElements.get("meta_null")) .flags(GTMaterialFlags.GENERATE_PLATE, GTMaterialFlags.GENERATE_FOIL, GTMaterialFlags.GENERATE_ROTOR) .fluidPipeProperties(200000, 20000, true, true, true, true) - - // Ethylene-propylene diene monomer (EPDM) - // Endgame rubber - event.create("ethylene_propylene_diene_monomer") - .polymer().liquid() - .color(0x354444) - .fluidPipeProperties(3000, 12000, true, true, true, false) - .flags(GTMaterialFlags.DISABLE_DECOMPOSITION, GTMaterialFlags.GENERATE_PLATE, GTMaterialFlags.GENERATE_FOIL, GTMaterialFlags.STICKY) - .formula("C6H7NO2"); }) diff --git a/kubejs/startup_scripts/gregtech_material_registry/missing_material_forms.js b/kubejs/startup_scripts/gregtech_material_registry/missing_material_forms.js index 546649273..a2c79fb18 100644 --- a/kubejs/startup_scripts/gregtech_material_registry/missing_material_forms.js +++ b/kubejs/startup_scripts/gregtech_material_registry/missing_material_forms.js @@ -22,6 +22,7 @@ let addFluid = (mat, key, temp) => { GTCEuStartupEvents.registry("gtceu:material", event => { // Existing materials that get an item form GTMaterials.Lutetium.setProperty($PropertyKey.INGOT, new $IngotProperty()) + GTMaterials.Lutetium.addFlags(GTMaterialFlags.GENERATE_FOIL) GTMaterials.Actinium.setProperty($PropertyKey.INGOT, new $IngotProperty()) GTMaterials.Actinium.setMaterialARGB(0xaa3399) @@ -74,4 +75,5 @@ GTCEuStartupEvents.registry("gtceu:material", event => { GTMaterials.Curium.setMaterialARGB(0x58307f) addFluid(GTMaterials.NetherStar, $FluidStorageKeys.LIQUID, 1337); GTMaterials.Thorium.setMaterialARGB(0x273420) + addFluid(GTMaterials.Actinium, $FluidStorageKeys.LIQUID, 1324); }) diff --git a/kubejs/startup_scripts/hardmode/material_registry/chemicals.js b/kubejs/startup_scripts/hardmode/material_registry/chemicals.js index 5926fc13f..aa9cd2f05 100644 --- a/kubejs/startup_scripts/hardmode/material_registry/chemicals.js +++ b/kubejs/startup_scripts/hardmode/material_registry/chemicals.js @@ -83,11 +83,6 @@ GTCEuStartupEvents.registry("gtceu:material", event => { .components("16x carbon", "12x hydrogen", "2x oxygen") .formula("C6H4(CO)2C6H3(CH2CH3)"); - event.create("hydrogen_peroxide") - .liquid() - .color(0xd2ffff) - .components("2x hydrogen", "2x oxygen") - event.create("hydrazine") // is this a reference to the book 'Ignition! An Informal History of Liquid Rocket Propellants.' no way .fluid() .color(0xb50707) diff --git a/kubejs/startup_scripts/hardmode/material_registry/elements.js b/kubejs/startup_scripts/hardmode/material_registry/elements.js index ade044d11..7b9534da8 100644 --- a/kubejs/startup_scripts/hardmode/material_registry/elements.js +++ b/kubejs/startup_scripts/hardmode/material_registry/elements.js @@ -48,6 +48,5 @@ GTCEuStartupEvents.registry("gtceu:material", event => { .element(GTElements.get("hyperdegenerate_matter")) .color(0xffffff).iconSet("hyperdegenerate_matter") .liquid(new GTFluidBuilder().state(GTFluidState.PLASMA).customStill()) - } }) diff --git a/kubejs/startup_scripts/registry/block_registry.js b/kubejs/startup_scripts/registry/block_registry.js index cde5b4ac3..fb546e246 100644 --- a/kubejs/startup_scripts/registry/block_registry.js +++ b/kubejs/startup_scripts/registry/block_registry.js @@ -236,6 +236,13 @@ StartupEvents.registry("block", event => { .tagBlock("forge:mineable/wrench") .requiresTool(true); + event.create("prism_glass") + .displayName("P.R.I.S.M. Glass") + .soundType("glass") + .renderType("cutout") + .resistance(6).hardness(5) + .tagBlock("mineable/pickaxe") + event.create("omnic_matrix_coil_block", "gtceu:coil") .temperature(12600) .level(16) diff --git a/kubejs/startup_scripts/registry/multiblock_registry.js b/kubejs/startup_scripts/registry/multiblock_registry.js index 84294942a..8805482b8 100644 --- a/kubejs/startup_scripts/registry/multiblock_registry.js +++ b/kubejs/startup_scripts/registry/multiblock_registry.js @@ -84,7 +84,7 @@ GTCEuStartupEvents.registry("gtceu:recipe_type", event => { event.create("naquadah_refinery") .category("multiblock") .setEUIO("in") - .setMaxIOSize(6,0,5,1) + .setMaxIOSize(6, 0, 5, 1) .setSlotOverlay(false, false, GuiTextures.SOLIDIFIER_OVERLAY) .setProgressBar(GuiTextures.PROGRESS_BAR_ARROW, FillDirection.LEFT_TO_RIGHT) .setSound(GTSoundEntries.COOLING) @@ -718,15 +718,15 @@ GTCEuStartupEvents.registry("gtceu:machine", event => { .appearanceBlock(GCYMBlocks.CASING_ATOMIC) .generator(true) .pattern(definition => FactoryBlockPattern.start() - .aisle("##CCCCC##","##CGGGC##","##CCCCC##","#########","#########","#########","#########","#########","#########","#########","##CCCCC##") - .aisle("#CCCCCCC#","#CC CC#","#CCCCCCC#","#A#####A#","#A#####A#","#A#####A#","#A#####A#","#A#####A#","#A#####A#","#A#####A#","#CCCCCCC#") - .aisle("CCCHHHCCC","CCN NCC","CCCSSSCCC","##DGGGD##","##DGGGD##","##DGGGD##","##DGGGD##","##DGGGD##","##DGGGD##","##DGGGD##","CCCSSSCCC") - .aisle("CCHCCCHCC","G OOO G","CCSOOOSCC","##GOOOG##","##GOOOG##","##GOOOG##","##GOOOG##","##GOOOG##","##GOOOG##","##GOOOG##","CCSHHHSCC") - .aisle("CCHCCCHCC","G OKO G","CCSOKOSCC","##GOKOG##","##GOKOG##","##GOKOG##","##GOKOG##","##GOKOG##","##GOKOG##","##GOKOG##","CCSHHHSCC") - .aisle("CCHCCCHCC","G OOO G","CCSOOOSCC","##GOOOG##","##GOOOG##","##GOOOG##","##GOOOG##","##GOOOG##","##GOOOG##","##GOOOG##","CCSHHHSCC") - .aisle("CCCHHHCCC","CCN NCC","CCCSSSCCC","##DGGGD##","##DGGGD##","##DGGGD##","##DGGGD##","##DGGGD##","##DGGGD##","##DGGGD##","CCCSSSCCC") - .aisle("#CCCCCCC#","#CC CC#","#CCCCCCC#","#A#####A#","#A#####A#","#A#####A#","#A#####A#","#A#####A#","#A#####A#","#A#####A#","#CCCCCCC#") - .aisle("##CC@CC##","##CGGGC##","##CCCCC##","#########","#########","#########","#########","#########","#########","#########","##CCCCC##") + .aisle("##CCCCC##", "##CGGGC##", "##CCCCC##", "#########", "#########", "#########", "#########", "#########", "#########", "#########", "##CCCCC##") + .aisle("#CCCCCCC#", "#CC CC#", "#CCCCCCC#", "#A#####A#", "#A#####A#", "#A#####A#", "#A#####A#", "#A#####A#", "#A#####A#", "#A#####A#", "#CCCCCCC#") + .aisle("CCCHHHCCC", "CCN NCC", "CCCSSSCCC", "##DGGGD##", "##DGGGD##", "##DGGGD##", "##DGGGD##", "##DGGGD##", "##DGGGD##", "##DGGGD##", "CCCSSSCCC") + .aisle("CCHCCCHCC", "G OOO G", "CCSOOOSCC", "##GOOOG##", "##GOOOG##", "##GOOOG##", "##GOOOG##", "##GOOOG##", "##GOOOG##", "##GOOOG##", "CCSHHHSCC") + .aisle("CCHCCCHCC", "G OKO G", "CCSOKOSCC", "##GOKOG##", "##GOKOG##", "##GOKOG##", "##GOKOG##", "##GOKOG##", "##GOKOG##", "##GOKOG##", "CCSHHHSCC") + .aisle("CCHCCCHCC", "G OOO G", "CCSOOOSCC", "##GOOOG##", "##GOOOG##", "##GOOOG##", "##GOOOG##", "##GOOOG##", "##GOOOG##", "##GOOOG##", "CCSHHHSCC") + .aisle("CCCHHHCCC", "CCN NCC", "CCCSSSCCC", "##DGGGD##", "##DGGGD##", "##DGGGD##", "##DGGGD##", "##DGGGD##", "##DGGGD##", "##DGGGD##", "CCCSSSCCC") + .aisle("#CCCCCCC#", "#CC CC#", "#CCCCCCC#", "#A#####A#", "#A#####A#", "#A#####A#", "#A#####A#", "#A#####A#", "#A#####A#", "#A#####A#", "#CCCCCCC#") + .aisle("##CC@CC##", "##CGGGC##", "##CCCCC##", "#########", "#########", "#########", "#########", "#########", "#########", "#########", "##CCCCC##") .where("@", Predicates.controller(Predicates.blocks(definition.get()))) .where("G", Predicates.blocks(GTBlocks.FUSION_GLASS.get())) .where("C", Predicates.blocks("gtceu:atomic_casing").setMinGlobalLimited(150) @@ -746,41 +746,40 @@ GTCEuStartupEvents.registry("gtceu:machine", event => { "gtceu:block/multiblock/generator/large_steam_turbine", false) // Naquadah Fuel Refinery - if (doHarderNaqFuel) { - event.create("naquadah_refinery", "multiblock") - .rotationState(RotationState.NON_Y_AXIS) - .recipeTypes("naquadah_refinery") - .appearanceBlock(() => Block.getBlock("gtceu:stress_proof_casing")) - .recipeModifiers([GTRecipeModifiers.ELECTRIC_OVERCLOCK.apply(OverclockingLogic.NON_PERFECT_OVERCLOCK)]) - .pattern(definition => FactoryBlockPattern.start() - .aisle("##CCCCC##","##CCCCC##","#########","#########","#########","#########","#########","#########","#########","#########","#########") - .aisle("#CCCCCCC#","#CC#P#CC#","####P####","####P####","###SSS###","###VVV###","###GGG###","###VVV###","###SSS###","#########","#########") - .aisle("CCCCCCCCC","CCF###FCC","##F###F##","##FSSSF##","##S S##","##V V##","##G G##","##V V##","##S S##","###SSS###","#########") - .aisle("CCCCCCCCC","C##III##C","###SSS###","##SPPPS##","#S K K S#","#V K K V#","#G K K G#","#V K K V#","#S K K S#","##SPPPS##","###SSS###") - .aisle("CCCCCCCCC","CP#III#PC","#P#SSS#P#","#PSPPPSP#","#S E S#","#V E V#","#G E G#","#V E V#","#S E S#","##SPPPS##","###SMS###") - .aisle("CCCCCCCCC","C##III##C","###SSS###","##SPPPS##","#S K K S#","#V K K V#","#G K K G#","#V K K V#","#S K K S#","##SPPPS##","###SSS###") - .aisle("CCCCCCCCC","CCF###FCC","##F###F##","##FSSSF##","##S S##","##V V##","##G G##","##V V##","##S S##","###SSS###","#########") - .aisle("#CCCCCCC#"," CC#P#CC ","####P####","####P####","###SSS###","###VVV###","###GGG###","###VVV###","###SSS###","#########","#########") - .aisle("##CC@CC##","##CCCCC##","#########","#########","#########","#########","#########","#########","#########","#########","#########") - .where("@", Predicates.controller(Predicates.blocks(definition.get()))) - .where("C", Predicates.blocks("gtceu:stress_proof_casing").setMinGlobalLimited(85) - .or(Predicates.autoAbilities(definition.getRecipeTypes())) - .or(Predicates.abilities(PartAbility.MAINTENANCE).setExactLimit(1))) - .where("S", Predicates.blocks("gtceu:high_temperature_smelting_casing")) - .where("I", Predicates.blocks("gtceu:extreme_engine_intake_casing")) - .where("P", Predicates.blocks("gtceu:tungstensteel_pipe_casing")) - .where("K", Predicates.blocks("gtceu:superconducting_coil")) - .where("V", Predicates.blocks("gtceu:heat_vent")) - .where("G", Predicates.blocks("gtceu:laminated_glass")) - .where("E", Predicates.blocks("gtceu:ptfe_pipe_casing")) - .where("F", Predicates.blocks("gtceu:tungsten_frame")) - .where("M", Predicates.abilities(PartAbility.MUFFLER)) - .where(" ", Predicates.air()) - .where("#", Predicates.any()) - .build()) - .workableCasingRenderer("gtceu:block/casings/gcym/stress_proof_casing", - "gtceu:block/multiblock/fusion_reactor", false) - } + event.create("naquadah_refinery", "multiblock") + .rotationState(RotationState.NON_Y_AXIS) + .recipeTypes("naquadah_refinery") + .appearanceBlock(() => Block.getBlock("gtceu:stress_proof_casing")) + .recipeModifiers([GTRecipeModifiers.ELECTRIC_OVERCLOCK.apply(OverclockingLogic.NON_PERFECT_OVERCLOCK)]) + .pattern(definition => FactoryBlockPattern.start() + .aisle("##CCCCC##", "##CCCCC##", "#########", "#########", "#########", "#########", "#########", "#########", "#########", "#########", "#########") + .aisle("#CCCCCCC#", "#CC#P#CC#", "####P####", "####P####", "###SSS###", "###VVV###", "###GGG###", "###VVV###", "###SSS###", "#########", "#########") + .aisle("CCCCCCCCC", "CCF###FCC", "##F###F##", "##FSSSF##", "##S S##", "##V V##", "##G G##", "##V V##", "##S S##", "###SSS###", "#########") + .aisle("CCCCCCCCC", "C##III##C", "###SSS###", "##SPPPS##", "#S K K S#", "#V K K V#", "#G K K G#", "#V K K V#", "#S K K S#", "##SPPPS##", "###SSS###") + .aisle("CCCCCCCCC", "CP#III#PC", "#P#SSS#P#", "#PSPPPSP#", "#S E S#", "#V E V#", "#G E G#", "#V E V#", "#S E S#", "##SPPPS##", "###SMS###") + .aisle("CCCCCCCCC", "C##III##C", "###SSS###", "##SPPPS##", "#S K K S#", "#V K K V#", "#G K K G#", "#V K K V#", "#S K K S#", "##SPPPS##", "###SSS###") + .aisle("CCCCCCCCC", "CCF###FCC", "##F###F##", "##FSSSF##", "##S S##", "##V V##", "##G G##", "##V V##", "##S S##", "###SSS###", "#########") + .aisle("#CCCCCCC#", " CC#P#CC ", "####P####", "####P####", "###SSS###", "###VVV###", "###GGG###", "###VVV###", "###SSS###", "#########", "#########") + .aisle("##CC@CC##", "##CCCCC##", "#########", "#########", "#########", "#########", "#########", "#########", "#########", "#########", "#########") + .where("@", Predicates.controller(Predicates.blocks(definition.get()))) + .where("C", Predicates.blocks("gtceu:stress_proof_casing").setMinGlobalLimited(85) + .or(Predicates.autoAbilities(definition.getRecipeTypes())) + .or(Predicates.abilities(PartAbility.MAINTENANCE).setExactLimit(1))) + .where("S", Predicates.blocks("gtceu:high_temperature_smelting_casing")) + .where("I", Predicates.blocks("gtceu:extreme_engine_intake_casing")) + .where("P", Predicates.blocks("gtceu:tungstensteel_pipe_casing")) + .where("K", Predicates.blocks("gtceu:superconducting_coil")) + .where("V", Predicates.blocks("gtceu:heat_vent")) + .where("G", Predicates.blocks("gtceu:laminated_glass")) + .where("E", Predicates.blocks("gtceu:ptfe_pipe_casing")) + .where("F", Predicates.blocks("gtceu:tungsten_frame")) + .where("M", Predicates.abilities(PartAbility.MUFFLER)) + .where(" ", Predicates.air()) + .where("#", Predicates.any()) + .build()) + .workableCasingRenderer("gtceu:block/casings/gcym/stress_proof_casing", + "gtceu:block/multiblock/fusion_reactor", false) + // Omnic Forge event.create("omnic_forge", "multiblock") @@ -1029,22 +1028,22 @@ GTCEuStartupEvents.registry("gtceu:machine", event => { .appearanceBlock(() => Block.getBlock("kubejs:dimensional_stabilization_netherite_casing")) .recipeTypes([MoniRecipeTypes.CREATIVE_ENERGY_RECIPES]) .pattern(definition => FactoryBlockPattern.start() - .aisle("###############","###############","###############","###############","###############","###############","###############","###############","###############","###############","###############","#######H#######","#######H#######","#######H#######","#######H#######","#######H#######","#######H#######","#######H#######","###############") - .aisle("#####NNNNN#####","#####NNNNN#####","#######F#######","#######F#######","#######F#######","###############","###############","###############","###############","#######H#######","#######H#######","#######H#######","#####AAHAA#####","#######H#######","#####AAHAA#####","#######H#######","#######H#######","#######H#######","#######R#######") - .aisle("###NNNNNNNNN###","###NNNNNNNNN###","######AAA######","######AAA######","######AAA######","#######F#######","#######F#######","###############","#######H#######","#######H#######","#######H#######","###############","####A##P##A####","###############","####A##P##A####","###############","###############","###############","###############") - .aisle("##NNNNNNNNNNN##","##NNNNNNNNNNN##","#######F#######","#######F#######","######AAA######","######AAA######","######AAA######","#####CCCCC#####","#######H#######","#####CCCCC#####","###############","###############","###A#######A###","###############","###A#######A###","###############","###############","###############","###############") - .aisle("##NNNNNNNNNNN##","##NNNNAAANNNN##","###############","###############","###############","###############","###############","####CC###CC####","#######H#######","####CC###CC####","###############","###############","##A#########A##","###############","##A#########A##","###############","###############","###############","###############") - .aisle("#NNNNNNNNNNNNN#","#NNNNAAAAANNNN#","#####VAAAV#####","#####V###V#####","###############","###############","###############","###CC#####CC###","###############","###CC#####CC###","###############","###############","#A###########A#","###############","#A###########A#","###############","###############","###############","###############") - .aisle("#NNNNNNNNNNNNN#","#NNNAAAAAAANNN#","##A##AAAAA##A##","##A###AAA###A##","##AA##VAV##AA##","###A##V#V##A###","###A#######A###","###C#######C###","###############","###C#######C###","###############","###############","#A###########A#","###############","#A###########A#","###############","###############","###############","###############") - .aisle("#NNNNNNNNNNNNN#","#NNNAAAAAAANNN#","#FAF#AAAAA#FAF#","#FAF##AAA##FAF#","#FAA##AAA##AAF#","##FA###A###AF##","##FA###A###AF##","###C###A###C###","##HHH##P##HHH##","#HHC#######CHH#","#HH#########HH#","HH###########HH","HHP#########PHH","HH###########HH","HHP#########PHH","HH###########HH","HH###########HH","HH###########HH","#R###########R#") - .aisle("#NNNNNNNNNNNNN#","#NNNAAAAAAANNN#","##A##AAAAA##A##","##A###AAA###A##","##AA##VAV##AA##","###A##V#V##A###","###A#######A###","###C#######C###","###############","###C#######C###","###############","###############","#A###########A#","###############","#A###########A#","###############","###############","###############","###############") - .aisle("#NNNNNNNNNNNNN#","#NNNNAAAAANNNN#","#####VAAAV#####","#####V###V#####","###############","###############","###############","###CC#####CC###","###############","###CC#####CC###","###############","###############","#A###########A#","###############","#A###########A#","###############","###############","###############","###############") - .aisle("##NNNNNNNNNNN##","##NNNNAAANNNN##","###############","###############","###############","###############","###############","####CC###CC####","#######H#######","####CC###CC####","###############","###############","##A#########A##","###############","##A#########A##","###############","###############","###############","###############") - .aisle("##NNNNNNNNNNN##","##NNNNNNNNNNN##","#######F#######","#######F#######","######AAA######","######AAA######","######AAA######","#####CCCCC#####","#######H#######","#####CCCCC#####","###############","###############","###A#######A###","###############","###A#######A###","###############","###############","###############","###############") - .aisle("###NNNNNNNNN###","###NNNNNNNNN###","######AAA######","######AAA######","######AAA######","#######F#######","#######F#######","###############","#######H#######","#######H#######","#######H#######","###############","####A##P##A####","###############","####A##P##A####","###############","###############","###############","###############") - .aisle("#####NN@NN#####","#####NNNNN#####","#######F#######","#######F#######","#######F#######","###############","###############","###############","###############","#######H#######","#######H#######","#######H#######","#####AAHAA#####","#######H#######","#####AAHAA#####","#######H#######","#######H#######","#######H#######","#######R#######") - .aisle("###############","###############","###############","###############","###############","###############","###############","###############","###############","###############","###############","#######H#######","#######H#######","#######H#######","#######H#######","#######H#######","#######H#######","#######H#######","###############") - .where("N",Predicates.blocks("kubejs:dimensional_stabilization_netherite_casing").setMinGlobalLimited(226) + .aisle("###############", "###############", "###############", "###############", "###############", "###############", "###############", "###############", "###############", "###############", "###############", "#######H#######", "#######H#######", "#######H#######", "#######H#######", "#######H#######", "#######H#######", "#######H#######", "###############") + .aisle("#####NNNNN#####", "#####NNNNN#####", "#######F#######", "#######F#######", "#######F#######", "###############", "###############", "###############", "###############", "#######H#######", "#######H#######", "#######H#######", "#####AAHAA#####", "#######H#######", "#####AAHAA#####", "#######H#######", "#######H#######", "#######H#######", "#######R#######") + .aisle("###NNNNNNNNN###", "###NNNNNNNNN###", "######AAA######", "######AAA######", "######AAA######", "#######F#######", "#######F#######", "###############", "#######H#######", "#######H#######", "#######H#######", "###############", "####A##P##A####", "###############", "####A##P##A####", "###############", "###############", "###############", "###############") + .aisle("##NNNNNNNNNNN##", "##NNNNNNNNNNN##", "#######F#######", "#######F#######", "######AAA######", "######AAA######", "######AAA######", "#####CCCCC#####", "#######H#######", "#####CCCCC#####", "###############", "###############", "###A#######A###", "###############", "###A#######A###", "###############", "###############", "###############", "###############") + .aisle("##NNNNNNNNNNN##", "##NNNNAAANNNN##", "###############", "###############", "###############", "###############", "###############", "####CC###CC####", "#######H#######", "####CC###CC####", "###############", "###############", "##A#########A##", "###############", "##A#########A##", "###############", "###############", "###############", "###############") + .aisle("#NNNNNNNNNNNNN#", "#NNNNAAAAANNNN#", "#####VAAAV#####", "#####V###V#####", "###############", "###############", "###############", "###CC#####CC###", "###############", "###CC#####CC###", "###############", "###############", "#A###########A#", "###############", "#A###########A#", "###############", "###############", "###############", "###############") + .aisle("#NNNNNNNNNNNNN#", "#NNNAAAAAAANNN#", "##A##AAAAA##A##", "##A###AAA###A##", "##AA##VAV##AA##", "###A##V#V##A###", "###A#######A###", "###C#######C###", "###############", "###C#######C###", "###############", "###############", "#A###########A#", "###############", "#A###########A#", "###############", "###############", "###############", "###############") + .aisle("#NNNNNNNNNNNNN#", "#NNNAAAAAAANNN#", "#FAF#AAAAA#FAF#", "#FAF##AAA##FAF#", "#FAA##AAA##AAF#", "##FA###A###AF##", "##FA###A###AF##", "###C###A###C###", "##HHH##P##HHH##", "#HHC#######CHH#", "#HH#########HH#", "HH###########HH", "HHP#########PHH", "HH###########HH", "HHP#########PHH", "HH###########HH", "HH###########HH", "HH###########HH", "#R###########R#") + .aisle("#NNNNNNNNNNNNN#", "#NNNAAAAAAANNN#", "##A##AAAAA##A##", "##A###AAA###A##", "##AA##VAV##AA##", "###A##V#V##A###", "###A#######A###", "###C#######C###", "###############", "###C#######C###", "###############", "###############", "#A###########A#", "###############", "#A###########A#", "###############", "###############", "###############", "###############") + .aisle("#NNNNNNNNNNNNN#", "#NNNNAAAAANNNN#", "#####VAAAV#####", "#####V###V#####", "###############", "###############", "###############", "###CC#####CC###", "###############", "###CC#####CC###", "###############", "###############", "#A###########A#", "###############", "#A###########A#", "###############", "###############", "###############", "###############") + .aisle("##NNNNNNNNNNN##", "##NNNNAAANNNN##", "###############", "###############", "###############", "###############", "###############", "####CC###CC####", "#######H#######", "####CC###CC####", "###############", "###############", "##A#########A##", "###############", "##A#########A##", "###############", "###############", "###############", "###############") + .aisle("##NNNNNNNNNNN##", "##NNNNNNNNNNN##", "#######F#######", "#######F#######", "######AAA######", "######AAA######", "######AAA######", "#####CCCCC#####", "#######H#######", "#####CCCCC#####", "###############", "###############", "###A#######A###", "###############", "###A#######A###", "###############", "###############", "###############", "###############") + .aisle("###NNNNNNNNN###", "###NNNNNNNNN###", "######AAA######", "######AAA######", "######AAA######", "#######F#######", "#######F#######", "###############", "#######H#######", "#######H#######", "#######H#######", "###############", "####A##P##A####", "###############", "####A##P##A####", "###############", "###############", "###############", "###############") + .aisle("#####NN@NN#####", "#####NNNNN#####", "#######F#######", "#######F#######", "#######F#######", "###############", "###############", "###############", "###############", "#######H#######", "#######H#######", "#######H#######", "#####AAHAA#####", "#######H#######", "#####AAHAA#####", "#######H#######", "#######H#######", "#######H#######", "#######R#######") + .aisle("###############", "###############", "###############", "###############", "###############", "###############", "###############", "###############", "###############", "###############", "###############", "#######H#######", "#######H#######", "#######H#######", "#######H#######", "#######H#######", "#######H#######", "#######H#######", "###############") + .where("N", Predicates.blocks("kubejs:dimensional_stabilization_netherite_casing").setMinGlobalLimited(226) .or(Predicates.abilities(PartAbility.IMPORT_FLUIDS).setPreviewCount(1)) .or(Predicates.abilities(PartAbility.MAINTENANCE).setExactLimit(1))) .where("A", Predicates.blocks(GCYMBlocks.CASING_ATOMIC.get())) @@ -1088,11 +1087,11 @@ GTCEuStartupEvents.registry("gtceu:machine", event => { .where("C", Predicates.blocks(GTBlocks.SUPERCONDUCTING_COIL.get())) .where("F", Predicates.frames(GTMaterials.Europium)) .where("I", Predicates.blocks(GTBlocks.MACHINE_CASING_UIV.get())) - .where("D", Predicates.blocks(GTBlocks.COMPUTER_CASING.get()) - .or(Predicates.abilities(PartAbility.DATA_ACCESS))) + .where("D", Predicates.blocks(GTBlocks.ADVANCED_COMPUTER_CASING.get())) .where("N", Predicates.blocks("kubejs:bioalloy_casing").setMinGlobalLimited(392) - .or(Predicates.abilities(PartAbility.IMPORT_FLUIDS).setPreviewCount(1)) + .or(Predicates.abilities(PartAbility.IMPORT_FLUIDS).setMinGlobalLimited(1)) + .or(Predicates.abilities(PartAbility.COMPUTATION_DATA_RECEPTION).setExactLimit(1)) .or(Predicates.abilities(PartAbility.MAINTENANCE).setExactLimit(1))) .build()) .workableCasingRenderer("kubejs:block/bioalloy/casing",