From 69b4d83067c751440a5ba73615eb457fa722c85c Mon Sep 17 00:00:00 2001 From: Pyritie Date: Sat, 7 Jun 2025 00:58:45 +0100 Subject: [PATCH] added recipes for ae2 deco blocks, stone dust centrifuge recipes for the moon --- kubejs/server_scripts/ae2/recipes.js | 40 +++++++++++++ kubejs/server_scripts/ae2/tags.js | 18 ++++++ kubejs/server_scripts/tfc/recipes.stone.js | 36 +++++++++-- kubejs/server_scripts/tfg/recipes.rocks.js | 70 ++++++++++++++++++---- kubejs/startup_scripts/ae2/constants.js | 2 - 5 files changed, 147 insertions(+), 19 deletions(-) diff --git a/kubejs/server_scripts/ae2/recipes.js b/kubejs/server_scripts/ae2/recipes.js index 1bd876d48..99f55449a 100644 --- a/kubejs/server_scripts/ae2/recipes.js +++ b/kubejs/server_scripts/ae2/recipes.js @@ -2176,4 +2176,44 @@ const registerAE2Recipes = (event) => { .duration(100) .category(GTRecipeCategories.MACERATOR_RECYCLING) .EUt(GTValues.VA[GTValues.ULV]) + + // Certus deco blocks + + event.stonecutting('ae2:cut_quartz_block', '#tfg:certus_quartz_blocks') + event.stonecutting('ae2:smooth_quartz_block', '#tfg:certus_quartz_blocks') + event.stonecutting('ae2:quartz_bricks', '#tfg:certus_quartz_blocks') + event.stonecutting('ae2:quartz_pillar', '#tfg:certus_quartz_blocks') + event.stonecutting('ae2:chiseled_quartz_block', '#tfg:certus_quartz_blocks') + event.stonecutting('ae2:quartz_stairs', '#tfg:certus_quartz_blocks') + event.stonecutting('ae2:cut_quartz_stairs', '#tfg:certus_quartz_blocks') + event.stonecutting('ae2:smooth_quartz_stairs', '#tfg:certus_quartz_blocks') + event.stonecutting('ae2:quartz_brick_stairs', '#tfg:certus_quartz_blocks') + event.stonecutting('ae2:chiseled_quartz_stairs', '#tfg:certus_quartz_blocks') + event.stonecutting('ae2:quartz_pillar_stairs', '#tfg:certus_quartz_blocks') + event.stonecutting('ae2:quartz_wall', '#tfg:certus_quartz_blocks') + event.stonecutting('ae2:cut_quartz_wall', '#tfg:certus_quartz_blocks') + event.stonecutting('ae2:smooth_quartz_wall', '#tfg:certus_quartz_blocks') + event.stonecutting('ae2:quartz_brick_wall', '#tfg:certus_quartz_blocks') + event.stonecutting('ae2:chiseled_quartz_wall', '#tfg:certus_quartz_blocks') + event.stonecutting('ae2:quartz_pillar_wall', '#tfg:certus_quartz_blocks') + event.stonecutting('2x ae2:quartz_slab', '#tfg:certus_quartz_blocks') + event.stonecutting('2x ae2:cut_quartz_slab', '#tfg:certus_quartz_blocks') + event.stonecutting('2x ae2:smooth_quartz_slab', '#tfg:certus_quartz_blocks') + event.stonecutting('2x ae2:quartz_brick_slab', '#tfg:certus_quartz_blocks') + event.stonecutting('2x ae2:chiseled_quartz_slab', '#tfg:certus_quartz_blocks') + event.stonecutting('2x ae2:quartz_pillar_slab', '#tfg:certus_quartz_blocks') + + event.recipes.gtceu.macerator('tfg:macerate_certus_deco') + .itemInputs('#tfg:certus_quartz_blocks') + .itemOutputs('#forge:dusts/certus_quartz') + .duration(150) + .EUt(2) + .category(GTRecipeCategories.MACERATOR_RECYCLING) + + event.recipes.gtceu.macerator('tfg:macerate_sky_stone') + .itemInputs('#tfg:sky_stone_blocks') + .itemOutputs('ae2:sky_dust') + .duration(150) + .EUt(2) + .category(GTRecipeCategories.MACERATOR_RECYCLING) } diff --git a/kubejs/server_scripts/ae2/tags.js b/kubejs/server_scripts/ae2/tags.js index 719cf7567..2ee655e8a 100644 --- a/kubejs/server_scripts/ae2/tags.js +++ b/kubejs/server_scripts/ae2/tags.js @@ -6,6 +6,23 @@ const registerAE2ItemTags = (event) => { event.removeAllTagsFrom(item) event.add('c:hidden_from_recipe_viewers', item) }) + + // We use the quartz block as a raw ore block + event.remove('forge:storage_blocks', 'ae2:quartz_block') + event.remove('forge:storage_blocks/certus_quartz', 'ae2:quartz_block') + + event.add('tfg:certus_quartz_blocks', 'ae2:cut_quartz_block') + event.add('tfg:certus_quartz_blocks', 'ae2:smooth_quartz_block') + event.add('tfg:certus_quartz_blocks', 'ae2:quartz_bricks') + event.add('tfg:certus_quartz_blocks', 'ae2:quartz_pillar') + event.add('tfg:certus_quartz_blocks', 'ae2:chiseled_quartz_block') + + event.add('tfg:sky_stone_blocks', 'ae2:sky_stone_block') + event.add('tfg:sky_stone_blocks', 'ae2:smooth_sky_stone_block') + event.add('tfg:sky_stone_blocks', 'ae2:sky_stone_brick') + event.add('tfg:sky_stone_blocks', 'ae2:sky_stone_small_brick') + + event.add('tfg:stone_dusts', 'ae2:sky_dust') } const registerAE2BlockTags = (event) => { @@ -13,4 +30,5 @@ const registerAE2BlockTags = (event) => { global.AE2_DISABLED_ITEMS.forEach(item => { event.removeAllTagsFrom(item) }) + } \ No newline at end of file diff --git a/kubejs/server_scripts/tfc/recipes.stone.js b/kubejs/server_scripts/tfc/recipes.stone.js index fa44ca41b..10870c5ee 100644 --- a/kubejs/server_scripts/tfc/recipes.stone.js +++ b/kubejs/server_scripts/tfc/recipes.stone.js @@ -637,8 +637,8 @@ function registerTFCStoneRecipes(event) { .EUt(GTValues.VA[GTValues.MV]) .duration(480) .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('gabbro'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Rutile, 1), 6700, 700) .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Iron, 1), 3700, 700) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Rutile, 1), 2700, 700) .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 1700, 700) event.recipes.gtceu.centrifuge('shale_dust_separation') @@ -653,7 +653,7 @@ function registerTFCStoneRecipes(event) { .EUt(GTValues.VA[GTValues.MV]) .duration(480) .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('claystone'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Aluminium, 1), 6700, 700) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Bauxite, 1), 6700, 700) .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Silicon, 1), 6700, 700) .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Hematite, 1), 6700, 700) .outputFluids(Fluid.of(oxygenFluid, 5)) @@ -715,7 +715,7 @@ function registerTFCStoneRecipes(event) { .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Sodium, 1), 6700, 700) .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Calcium, 1), 5700, 700) .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.SiliconDioxide, 1), 4700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Aluminium, 1), 3700, 700) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Kyanite, 1), 3700, 700) .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 1500, 700) .outputFluids(Fluid.of(oxygenFluid, 12)) @@ -768,10 +768,36 @@ function registerTFCStoneRecipes(event) { .EUt(GTValues.VA[GTValues.MV]) .duration(480) .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('moon_stone'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Olivine, 1), 3700, 700) + .chancedOutput('ae2:sky_dust', 4700, 700) .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Magnetite, 1), 3700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Ilmenite, 1), 1700, 700) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.CertusQuartz, 1), 2700, 700) .outputFluids(Fluid.of('gtceu:helium_3', 50)) + event.recipes.gtceu.centrifuge('moon_deepslate_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('moon_deepslate'), 1)) + .chancedOutput('ae2:sky_dust', 4700, 700) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Olivine, 1), 3700, 700) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, TFGHelpers.getMaterial('desh'), 1), 2700, 700) + .outputFluids(Fluid.of('gtceu:helium_3', 50)) + + event.recipes.gtceu.centrifuge('glacio_stone_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('glacio_stone'), 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.SiliconDioxide, 1), 4700, 700) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Ice, 1), 2700, 700) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 1700, 700) + .outputFluids(Fluid.of('gtceu:helium_3', 50)) + + event.recipes.gtceu.centrifuge('tfg:sky_dust') + .EUt(GTValues.VA[GTValues.LV]) + .duration(100) + .itemInputs('ae2:sky_dust') + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.CertusQuartz, 1), 4700, 700) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Iron, 1), 3700, 700) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 2700, 700) + // #endregion } \ No newline at end of file diff --git a/kubejs/server_scripts/tfg/recipes.rocks.js b/kubejs/server_scripts/tfg/recipes.rocks.js index ee1f6b718..15d19f0b4 100644 --- a/kubejs/server_scripts/tfg/recipes.rocks.js +++ b/kubejs/server_scripts/tfg/recipes.rocks.js @@ -92,7 +92,11 @@ function registerTFGRockRecipes(event) { { raw: 'ad_astra:conglomerate', polished: 'ad_astra:polished_conglomerate' }, { raw: 'ad_astra:permafrost', polished: 'ad_astra:polished_permafrost' }, { raw: 'ad_astra:permafrost_bricks', polished: 'ad_astra:chiseled_permafrost_bricks' }, - { raw: 'ad_astra:chiseled_permafrost_bricks', polished: 'ad_astra:permafrost_tiles' } + { raw: 'ad_astra:chiseled_permafrost_bricks', polished: 'ad_astra:permafrost_tiles' }, + { raw: 'ae2:sky_stone_block', polished: 'ae2:smooth_sky_stone_block' }, + { raw: 'ae2:smooth_sky_stone_block', polished: 'ae2:sky_stone_brick' }, + { raw: 'ae2:sky_stone_brick', polished: 'ae2:sky_stone_small_brick' }, + { raw: 'gtceu:certus_quartz_block', polished: 'ae2:cut_quartz_block' }, ] RAW_TO_POLISHED.forEach(x => { @@ -458,6 +462,46 @@ function registerTFGRockRecipes(event) { dust: 'gtceu:ice_dust', stonecutting: true }, + { + raw: 'ae2:sky_stone_block', + stair: 'ae2:sky_stone_stairs', + slab: 'ae2:sky_stone_slab', + wall: 'ae2:sky_stone_wall', + dust: 'ae2:sky_dust', + stonecutting: true + }, + { + raw: 'ae2:smooth_sky_stone_block', + stair: 'ae2:smooth_sky_stone_stairs', + slab: 'ae2:smooth_sky_stone_slab', + wall: 'ae2:smooth_sky_stone_wall', + dust: 'ae2:sky_dust', + stonecutting: true + }, + { + raw: 'ae2:sky_stone_brick', + stair: 'ae2:sky_stone_brick_stairs', + slab: 'ae2:sky_stone_brick_slab', + wall: 'ae2:sky_stone_brick_wall', + dust: 'ae2:sky_dust', + stonecutting: true + }, + { + raw: 'ae2:sky_stone_small_brick', + stair: 'ae2:sky_stone_small_brick_stairs', + slab: 'ae2:sky_stone_small_brick_slab', + wall: 'ae2:sky_stone_small_brick_wall', + dust: 'ae2:sky_dust', + stonecutting: true + }, + { + raw: 'ae2:fluix_block', + stair: 'ae2:fluix_stairs', + slab: 'ae2:fluix_slab', + wall: 'ae2:fluix_wall', + dust: 'ae2:fluix_dust', + stonecutting: true + } // #endregion ] @@ -499,7 +543,7 @@ function registerTFGRockRecipes(event) { } } if ("wall" in x) { - event.recipes.tfc.chisel(x.slab, x.raw, 'smooth') + event.recipes.tfc.chisel(x.wall, x.raw, 'smooth') if (x.stonecutting) { event.stonecutting(x.wall, x.raw).id(`${x.raw}_to_${x.wall}`.replace(/:/g, '_')) @@ -546,11 +590,13 @@ function registerTFGRockRecipes(event) { { block: 'minecraft:deepslate', dust: 'gtceu:deepslate_dust' }, { block: 'minecraft:dripstone_block', dust: 'tfg:dripstone_dust' }, { block: 'ad_astra:moon_stone', dust: 'tfg:moon_stone_dust' }, + { block: 'ad_astra:moon_deepslate', dust: 'tfg:moon_deepslate_dust' }, { block: 'ad_astra:mars_stone', dust: 'tfg:mars_stone_dust' }, { block: 'ad_astra:venus_stone', dust: 'tfg:venus_stone_dust' }, { block: 'ad_astra:mercury_stone', dust: 'tfg:mercury_stone_dust' }, { block: 'ad_astra:glacio_stone', dust: 'tfg:glacio_stone_dust' }, { block: 'ad_astra:permafrost', dust: 'gtceu:ice_dust' }, + { block: 'ae2:sky_stone', dust: 'ae2:sky_dust' } ] MACERATOR.forEach(x => { @@ -643,18 +689,18 @@ function registerTFGRockRecipes(event) { event.remove({id: 'greate:splashing/obsidian'}) //magma block + stone group - const magma_blocks = [ - {magma: 'minecraft:magma_block', rock: 'minecraft:blackstone'}, - {magma: 'tfc:rock/magma/granite', rock: 'tfc:rock/raw/granite'}, - {magma: 'tfc:rock/magma/diorite', rock: 'tfc:rock/raw/diorite'}, - {magma: 'tfc:rock/magma/gabbro', rock: 'tfc:rock/raw/gabbro'}, - {magma: 'tfc:rock/magma/rhyolite', rock: 'tfc:rock/raw/rhyolite'}, - {magma: 'tfc:rock/magma/basalt', rock: 'tfc:rock/raw/basalt'}, - {magma: 'tfc:rock/magma/andesite', rock: 'tfc:rock/raw/andesite'}, - {magma: 'tfc:rock/magma/dacite', rock: 'tfc:rock/raw/dacite'} + const MAGMA_BLOCKS = [ + { magma: 'minecraft:magma_block', rock: 'minecraft:blackstone' }, + { magma: 'tfc:rock/magma/granite', rock: 'tfc:rock/raw/granite' }, + { magma: 'tfc:rock/magma/diorite', rock: 'tfc:rock/raw/diorite' }, + { magma: 'tfc:rock/magma/gabbro', rock: 'tfc:rock/raw/gabbro' }, + { magma: 'tfc:rock/magma/rhyolite', rock: 'tfc:rock/raw/rhyolite' }, + { magma: 'tfc:rock/magma/basalt', rock: 'tfc:rock/raw/basalt' }, + { magma: 'tfc:rock/magma/andesite', rock: 'tfc:rock/raw/andesite' }, + { magma: 'tfc:rock/magma/dacite', rock: 'tfc:rock/raw/dacite' } ]; - magma_blocks.forEach(block => { + MAGMA_BLOCKS.forEach(block => { event.recipes.gtceu.fluid_solidifier(`tfg:gtceu/fluid_solidifier/${block.magma}`.replace(/:/g, '/')) .itemInputs(`1x ${block.rock}`) diff --git a/kubejs/startup_scripts/ae2/constants.js b/kubejs/startup_scripts/ae2/constants.js index 4c97d0fb0..22d04c28c 100644 --- a/kubejs/startup_scripts/ae2/constants.js +++ b/kubejs/startup_scripts/ae2/constants.js @@ -34,12 +34,10 @@ global.AE2_DISABLED_ITEMS = [ 'ae2:sky_stone_chest', 'ae2:smooth_sky_stone_chest', 'ae2:sky_stone_tank', - 'gtceu:raw_certus_quartz_block', // Другое 'ae2:meteorite_compass', 'ae2:silicon', - 'ae2:sky_dust', 'ae2:creative_energy_cell', 'ae2:tiny_tnt', 'ae2:crystal_resonance_generator'