diff --git a/kubejs/server_scripts/afc/tags.js b/kubejs/server_scripts/afc/tags.js index f56819634..771ed2740 100644 --- a/kubejs/server_scripts/afc/tags.js +++ b/kubejs/server_scripts/afc/tags.js @@ -30,6 +30,7 @@ const registerAFCItemTags = (event) => { event.add('tfg:hardwood', `#afc:${woodType}_logs`) event.add('tfg:stripped_hardwood', `afc:wood/stripped_log/${woodType}`) event.add('tfg:stripped_hardwood', `afc:wood/stripped_wood/${woodType}`) + event.add('tfg:hardwood_supports', `afc:wood/support/${woodType}`); }); //Softwood Tags @@ -37,6 +38,7 @@ const registerAFCItemTags = (event) => { event.add('tfg:softwood', `#afc:${woodType}_logs`) event.add('tfg:stripped_softwood', `afc:wood/stripped_log/${woodType}`) event.add('tfg:stripped_softwood', `afc:wood/stripped_wood/${woodType}`) + event.add('tfg:softwood_supports', `afc:wood/support/${woodType}`); }) // AFC saplings are missing the item tag for whatever reason diff --git a/kubejs/server_scripts/gregtech/recipes.js b/kubejs/server_scripts/gregtech/recipes.js index 52694c1f4..b76dc2ea4 100644 --- a/kubejs/server_scripts/gregtech/recipes.js +++ b/kubejs/server_scripts/gregtech/recipes.js @@ -938,6 +938,22 @@ const registerGTCEURecipes = (event) => { }) // #endregion + //#region support recycling + event.recipes.gtceu.macerator(`hardwood_support_to_dust`) + .itemInputs('#tfg:hardwood_supports') + .itemOutputs('gtceu:hardwood_dust') + .duration(150) + .EUt(2) + .category(GTRecipeCategories.MACERATOR_RECYCLING); + + event.recipes.gtceu.macerator(`softwood_support_to_dust`) + .itemInputs('#tfg:softwood_supports') + .itemOutputs('gtceu:wood_dust') + .duration(150) + .EUt(2) + .category(GTRecipeCategories.MACERATOR_RECYCLING); + //#endregion + //#region Voiding covers event.replaceInput({ id: 'gtceu:shaped/cover_fluid_voiding' }, diff --git a/kubejs/server_scripts/tfc/recipes.stone.js b/kubejs/server_scripts/tfc/recipes.stone.js index 41cc3e426..28df78c39 100644 --- a/kubejs/server_scripts/tfc/recipes.stone.js +++ b/kubejs/server_scripts/tfc/recipes.stone.js @@ -1,6 +1,10 @@ // priority: 0 "use strict"; +/** + * + * @param {Internal.RecipesEventJS} event + */ function registerTFCStoneRecipes(event) { global.TFC_STONE_TYPES.forEach(stone => { @@ -561,6 +565,17 @@ function registerTFCStoneRecipes(event) { .EUt(2) .category(GTRecipeCategories.MACERATOR_RECYCLING) + //#endregion + + //#region Recycle beam + let dustSmall = ChemicalHelper.get(TagPrefix.dustSmall, stoneMaterial, 1); + event.recipes.gtceu.macerator(`${stone}_support_to_dust`) + .itemInputs(`tfg:${stone}_support`) + .itemOutputs(dustSmall) + .duration(150) + .EUt(2) + .category(GTRecipeCategories.MACERATOR_RECYCLING); + //#endregion //#endregion diff --git a/kubejs/server_scripts/tfc/tags.js b/kubejs/server_scripts/tfc/tags.js index 259a8fe0b..ec4deede5 100644 --- a/kubejs/server_scripts/tfc/tags.js +++ b/kubejs/server_scripts/tfc/tags.js @@ -151,6 +151,7 @@ function registerTFCItemTags(event) { event.add("tfg:hardwood", `#tfc:${woodType}_logs`); event.add("tfg:stripped_hardwood", `tfc:wood/stripped_log/${woodType}`); event.add("tfg:stripped_hardwood", `tfc:wood/stripped_wood/${woodType}`); + event.add("tfg:hardwood_supports", `tfc:wood/support/${woodType}`); }); //Softwood Tags @@ -158,6 +159,7 @@ function registerTFCItemTags(event) { event.add("tfg:softwood", `#tfc:${woodType}_logs`); event.add("tfg:stripped_softwood", `tfc:wood/stripped_log/${woodType}`); event.add("tfg:stripped_softwood", `tfc:wood/stripped_wood/${woodType}`); + event.add("tfg:softwood_supports", `tfc:wood/support/${woodType}`); }); // Теги для сосудов по цветам @@ -260,15 +262,19 @@ function registerTFCItemTags(event) { // Теги для каменных ступенек тфк global.TFC_STONE_TYPES.forEach((stoneTypeName) => { + + //Add to buttons + event.add("minecraft:stone_buttons", `tfc:rock/button/${stoneTypeName}`); + event.add("minecraft:buttons", `tfc:rock/button/${stoneTypeName}`); + + //Add to rock slabs global.TFC_ROCK_SLAB_BLOCK_TYPES.forEach((slabType) => { event.add(`tfg:rock_slabs`, `tfc:rock/${slabType}/${stoneTypeName}_slab`); event.add(`tfg:rock_stairs`, `tfc:rock/${slabType}/${stoneTypeName}_stairs`); event.add(`tfg:rock_walls`, `tfc:rock/${slabType}/${stoneTypeName}_wall`); }); - }); - - // Теги для кирпичных ступенек тфк - global.TFC_STONE_TYPES.forEach((stoneTypeName) => { + + //Add to brick slabs global.TFC_BRICK_SLAB_BLOCK_TYPES.forEach((slabType) => { event.add(`tfg:brick_slabs`, `tfc:rock/${slabType}/${stoneTypeName}_slab`); event.add(`tfg:brick_stairs`, `tfc:rock/${slabType}/${stoneTypeName}_stairs`); @@ -329,12 +335,6 @@ function registerTFCItemTags(event) { event.add("forge:mushrooms", "tfc:plant/artists_conk"); event.add("forge:raw_materials/sylvite", "tfc:ore/sylvite"); - - global.TFC_STONE_TYPES.forEach((stone) => { - event.add("minecraft:stone_buttons", `tfc:rock/button/${stone}`); - event.add("minecraft:buttons", `tfc:rock/button/${stone}`); - }); - event.add("tfc:any_knapping", "#tfc:pit_kiln_straw"); event.add("tfg:burlap_fiber", "tfc:jute_fiber"); diff --git a/kubejs/server_scripts/tfg/recipes.supports.js b/kubejs/server_scripts/tfg/recipes.supports.js index ddb1e88c4..741a821e9 100644 --- a/kubejs/server_scripts/tfg/recipes.supports.js +++ b/kubejs/server_scripts/tfg/recipes.supports.js @@ -13,14 +13,21 @@ function registerTFGSupportRecipes(event) { .itemInputs('1x tfg:rebar_support') .duration(60) .EUt(GTValues.VA[GTValues.ULV]) - - event.recipes.gtceu.assembler('tfg:gtceu/assembler/reinforced_light_concrete_support') + + event.recipes.gtceu.assembler('tfg:gtceu/assembler/reinforced_light_concrete_support') .inputFluids(Fluid.of('gtceu:concrete', 96)) .itemOutputs('1x tfg:reinforced_light_concrete_support') .itemInputs('1x tfg:rebar_support') .duration(120) .EUt(GTValues.VA[GTValues.ULV]) + event.recipes.gtceu.macerator(`reinforced_light_concrete_support_to_dust`) + .itemInputs('tfg:reinforced_light_concrete_support') + .itemOutputs('gtceu:tiny_steel_dust') + .duration(150) + .EUt(2) + .category(GTRecipeCategories.MACERATOR_RECYCLING); + event.recipes.gtceu.chemical_bath('tfg:gtceu/chemical_bath/reinforced_dark_concrete_support') .inputFluids(Fluid.of('tfc:black_dye', 10)) .itemOutputs('1x tfg:reinforced_dark_concrete_support') @@ -35,6 +42,13 @@ function registerTFGSupportRecipes(event) { .duration(60) .EUt(GTValues.VA[GTValues.ULV]) + event.recipes.gtceu.macerator(`reinforced_dark_concrete_support_to_dust`) + .itemInputs('tfg:reinforced_dark_concrete_support') + .itemOutputs('gtceu:tiny_steel_dust') + .duration(150) + .EUt(2) + .category(GTRecipeCategories.MACERATOR_RECYCLING); + event.recipes.tfc.damage_inputs_shaped_crafting( event.shaped('8x tfg:light_concrete_support', [ 'AB ', @@ -116,19 +130,19 @@ function registerTFGSupportRecipes(event) { // REDO w/ table and loop const EXO_STONE_SUPPORTS = [ - { loose: 'tfg:loose/deepslate', support: 'tfg:migmatite_support' }, - { loose: 'beneath:blackstone_pebble', support: 'tfg:pyroxenite_support' }, - { loose: 'tfg:loose/dripstone', support: 'tfg:travertine_support' }, - { loose: 'tfg:loose/crackrack', support: 'tfg:keratophyre_support' }, - { loose: 'tfg:loose/moon_stone', support: 'tfg:anorthosite_support' }, - { loose: 'tfg:loose/moon_deepslate', support: 'tfg:norite_support' }, - { loose: 'tfg:loose/mars_stone', support: 'tfg:argillite_support' }, - { loose: 'tfg:loose/venus_stone', support: 'tfg:trachyte_support' }, - { loose: 'tfg:loose/mercury_stone', support: 'tfg:komatiite_support' }, - { loose: 'tfg:loose/glacio_stone', support: 'tfg:phonolite_support' }, - { loose: 'tfg:loose/permafrost', support: 'tfg:permafrost_support' }, - { loose: 'tfg:loose/red_granite', support: 'tfg:red_granite_support' }, - { loose: 'gtceu:stone_ingot', support: 'tfg:stone_support' } + { loose: 'tfg:loose/deepslate', support: 'tfg:migmatite_support', material: 'deepslate' }, + { loose: 'beneath:blackstone_pebble', support: 'tfg:pyroxenite_support', material: 'blackstone', }, + { loose: 'tfg:loose/dripstone', support: 'tfg:travertine_support', material: 'dripstone' }, + { loose: 'tfg:loose/crackrack', support: 'tfg:keratophyre_support', material: 'netherrack'}, + { loose: 'tfg:loose/moon_stone', support: 'tfg:anorthosite_support', material: 'moon_stone' }, + { loose: 'tfg:loose/moon_deepslate', support: 'tfg:norite_support', material: 'moon_deepslate' }, + { loose: 'tfg:loose/mars_stone', support: 'tfg:argillite_support', material: 'mars_stone' }, + { loose: 'tfg:loose/venus_stone', support: 'tfg:trachyte_support', material: 'venus_stone', }, + { loose: 'tfg:loose/mercury_stone', support: 'tfg:komatiite_support', material: 'mercury_stone' }, + { loose: 'tfg:loose/glacio_stone', support: 'tfg:phonolite_support', material: 'glacio_stone' }, + { loose: 'tfg:loose/permafrost', support: 'tfg:permafrost_support', material: 'ice' }, + { loose: 'tfg:loose/red_granite', support: 'tfg:red_granite_support', material: 'granite_red' }, + { loose: 'gtceu:stone_ingot', support: 'tfg:stone_support', material: 'stone' } ] EXO_STONE_SUPPORTS.forEach(s => { @@ -151,6 +165,19 @@ function registerTFGSupportRecipes(event) { .itemInputs(`3x ${s.loose}`) .duration(40) .EUt(GTValues.VA[GTValues.ULV]) + + console.log(s.material); + let regexMatch = s.support.match(/tfg:(.*?)_support/); + let supportName = regexMatch[1]; + let stoneMaterial = TFGHelpers.getMaterial(s.material); + let dustSmall = ChemicalHelper.get(TagPrefix.dustSmall, stoneMaterial, 1) + + event.recipes.gtceu.macerator(`${supportName}_support_to_dust`) + .itemInputs(s.support) + .itemOutputs(dustSmall) + .duration(150) + .EUt(2) + .category(GTRecipeCategories.MACERATOR_RECYCLING); }) // Metal Supports @@ -170,6 +197,13 @@ function registerTFGSupportRecipes(event) { .duration(100) .EUt(GTValues.VA[GTValues.ULV]) + event.recipes.gtceu.macerator(`rebar_support_to_dust`) + .itemInputs(`tfg:rebar_support`) + .itemOutputs(`gtceu:tiny_steel_dust`) + .duration(150) + .EUt(2) + .category(GTRecipeCategories.MACERATOR_RECYCLING); + event.recipes.tfc.anvil( '1x tfg:steel_support', '#forge:double_ingots/steel', @@ -186,4 +220,11 @@ function registerTFGSupportRecipes(event) { .duration(100) .EUt(GTValues.VA[GTValues.ULV]) .addMaterialInfo(true) + + event.recipes.gtceu.macerator("steel_support_to_dust") + .itemInputs('tfg:steel_support') + .itemOutputs('2x gtceu:steel_dust') + .duration(150) + .EUt(2) + .category(GTRecipeCategories.MACERATOR_RECYCLING); }