diff --git a/kubejs/assets/gtceu/lang/en_us.json b/kubejs/assets/gtceu/lang/en_us.json index 055255c4c..1781e33bb 100644 --- a/kubejs/assets/gtceu/lang/en_us.json +++ b/kubejs/assets/gtceu/lang/en_us.json @@ -5027,8 +5027,8 @@ "item.gtceu.tool.tooltip.harvest_level_extra": "§eHarvest Level %s §f(%s§f)", "item.gtceu.tool.tooltip.max_uses": "%s §eTotal Durability", "item.gtceu.tool.tooltip.mining_speed": "%s §dMining Speed", - "item.gtceu.tool.tooltip.repair_info": "", - "item.gtceu.tool.tooltip.repair_material": "", + "item.gtceu.tool.tooltip.repair_info": "§8Craft with a Repair Kit to repair 25% durability", + "item.gtceu.tool.tooltip.repair_material": "§8Craft with a Repair Kit to repair 25% durability", "item.gtceu.tool.usable_as": "§8Usable as: §f%s", "item.gtceu.tool.wire_cutter": "%s Wire Cutter", "item.gtceu.tool.wrench": "%s Wrench", diff --git a/kubejs/assets/tfg/lang/en_us.json b/kubejs/assets/tfg/lang/en_us.json index cacee00c2..8a76d3c91 100644 --- a/kubejs/assets/tfg/lang/en_us.json +++ b/kubejs/assets/tfg/lang/en_us.json @@ -2207,6 +2207,7 @@ "tfg.tooltip.armor.space_suit_warmth": "§7Warmth: 0", "tfg.tooltip.armor.space_suit_insulation": "§7Insulation: +10", "tfg.tooltip.armor.space_suit_set": "§7Wear the full set to be §eFully Insulated§7 from ambient temperatures.", + "tfg.tooltip.repair_kits": "§7Repairs 25% of a tool's maximum durability", "tfg.tooltip.support.tier1": "§79 x 5 x 9", "tfg.tooltip.support.tier2": "§717 x 9 x 17", "tfg.tooltip.support.tier3": "§733 x 13 x 33", diff --git a/kubejs/client_scripts/tooltips.js b/kubejs/client_scripts/tooltips.js index 3fd5949df..dfa33b02c 100644 --- a/kubejs/client_scripts/tooltips.js +++ b/kubejs/client_scripts/tooltips.js @@ -27,6 +27,9 @@ const registerTooltips = (event) => { event.addAdvanced(['tfg:polycaprolactam_fabric'], (item, advanced, text) => { text.add(1, Text.translate('tfg.tooltip.polycaprolactam')) }) + event.addAdvanced(['#forge:repair_kit_materials'], (item, advanced, text) => { + text.add(1, Text.translate('tfg.tooltip.repair_kits')) + }) //#region Multiblock Controler Tooltip diff --git a/kubejs/server_scripts/diggerhelmet/recipes.js b/kubejs/server_scripts/diggerhelmet/recipes.js index 1e57cd5ef..76df6483f 100644 --- a/kubejs/server_scripts/diggerhelmet/recipes.js +++ b/kubejs/server_scripts/diggerhelmet/recipes.js @@ -104,18 +104,15 @@ function registerDiggerHelmetRecipes(event) { type: 'diggerhelmet:helmet_repair', pattern: [ ' C ', - 'RHT', - 'BAB' + 'RHT' ], key: { 'H': { item: `diggerhelmet:${metal}_digger_helmet` }, - 'R': { tag: `forge:plates/${metal}` }, + 'R': ChemicalHelper.get(TFGTagPrefix.repairKit, TFGHelpers.getMaterial(metal), 1), 'T': { tag: 'tfc:hammers' }, - 'C': { tag: 'tfc:candles' }, - 'A': { tag: 'forge:tools/screwdrivers'}, - 'B': { tag: `forge:screws/${metal}`} + 'C': { tag: 'tfc:candles' } }, - repairPercentage: 0.75, + repairPercentage: 0.25, toolDamagePercentage: 0.01 }).id(`tfg:diggerhelmet/repair_${metal}_helmet`) @@ -124,18 +121,15 @@ function registerDiggerHelmetRecipes(event) { type: 'diggerhelmet:helmet_repair', pattern: [ ' C ', - 'RHT', - 'BAB' + 'RHT' ], key: { 'H': { item: `diggerhelmet:broken_${metal}_digger_helmet` }, - 'R': { tag: `forge:plates/${metal}` }, + 'R': ChemicalHelper.get(TFGTagPrefix.repairKit, TFGHelpers.getMaterial(metal), 1), 'T': { tag: 'tfc:hammers' }, - 'C': { tag: 'tfc:candles' }, - 'A': { tag: 'forge:tools/screwdrivers'}, - 'B': { tag: `forge:screws/${metal}`} + 'C': { tag: 'tfc:candles' } }, - repairPercentage: 0.75, + repairPercentage: 0.25, toolDamagePercentageBroken: 0.02 }).id(`tfg:diggerhelmet/repair_broken_${metal}_helmet`) }) diff --git a/kubejs/server_scripts/grapplemod/recipes.js b/kubejs/server_scripts/grapplemod/recipes.js index d90708f60..cd18ec1e3 100644 --- a/kubejs/server_scripts/grapplemod/recipes.js +++ b/kubejs/server_scripts/grapplemod/recipes.js @@ -285,7 +285,7 @@ function registerGrapplingHookRecipes(event) { }).id('tfg:grapplemod/shapeless/grapplinghook'); //Repair - event.recipes.kubejs.shapeless(Item.of('grapplemod:grapplinghook').withName(Text.translate("tfg.grapplemod.repair")), ['grapplemod:grapplinghook', 'gtceu:wrought_iron_dust']) + event.recipes.kubejs.shapeless(Item.of('grapplemod:grapplinghook').withName(Text.translate("tfg.grapplemod.repair")), ['grapplemod:grapplinghook', 'gtceu:repair_kit_wrought_iron']) .modifyResult((craftingGrid, result) => { try { let fallbackItem = Item.of("minecraft:air"); diff --git a/kubejs/server_scripts/gregtech/recipes.js b/kubejs/server_scripts/gregtech/recipes.js index 6ade9d2bb..6ebadd856 100644 --- a/kubejs/server_scripts/gregtech/recipes.js +++ b/kubejs/server_scripts/gregtech/recipes.js @@ -421,13 +421,15 @@ const registerGTCEURecipes = (event) => { // Modify HV Dynamo Hatch to be craftable before Cleanroom - event.replaceInput({ id: 'gtceu:assembler/dynamo_hatch_hv' }, 'gtceu:lpic_chip', 'gtceu:ulpic_chip') + event.recipes.gtceu.assembler('gtceu:voltage_coil_hv') + .itemInputs('#forge:rods/magnetic_steel', '#forge:fine_wires/black_steel') + .circuit(1) + .duration(20*20) + .EUt(GTValues.VA[GTValues.MV]) - global.modifyRecipe(event, "gtceu:assembler/dynamo_hatch_hv", { - newId: "gtceu:assembler/dynamo_hatch_hv", - duration: 20 * 10, - eut: GTValues.VA[GTValues.MV] - }) - - event.replaceInput({ id: 'gtceu:assembler/assembler/dynamo_hatch_hv' }, 'gtceu:lpic_chip', 'gtceu:ulpic_chip') + event.recipes.gtceu.assembler('gtceu:dynamo_hatch_hv') + .itemInputs('gtceu:hv_machine_hull', '2x #forge:springs/gold', '2x gtceu:ulpic_chip', 'gtceu:hv_voltage_coil') + .inputFluids('gtceu:sodium_potassium 1000') + .duration(20*20) + .EUt(GTValues.VA[GTValues.MV]) } diff --git a/kubejs/server_scripts/tfg/equipment/recipes.repair_tools.js b/kubejs/server_scripts/tfg/equipment/recipes.repair_tools.js index 45f1f44f8..4448e52c8 100644 --- a/kubejs/server_scripts/tfg/equipment/recipes.repair_tools.js +++ b/kubejs/server_scripts/tfg/equipment/recipes.repair_tools.js @@ -5,238 +5,172 @@ function registerTFGRepairKitRecipes(event) { - const ELECTRIC_TOOLS = ['drill', 'buzzsaw', 'wrench', 'chainsaw', 'wire_cutter', 'screwdriver']; - const MANUAL_TOOLS = ['knife', 'hoe', 'scythe', 'hammer', 'file', 'sword', 'butchery_knife', 'crowbar']; - const ONLY_MANUAL_TOOLS = ['spade', 'pickaxe', 'shovel', 'axe', 'wrench', 'mortar', 'saw', 'screwdriver', 'wire_cutter', 'mining_hammer']; - const ONLY_COLORED_TOOLS = ['buzzsaw']; + const ELECTRIC_TOOLS = ['drill', 'buzzsaw', 'wrench', 'chainsaw', 'wire_cutter', 'screwdriver']; + const MANUAL_TOOLS = ['knife', 'hoe', 'scythe', 'hammer', 'file', 'sword', 'butchery_knife', 'crowbar']; + const ONLY_MANUAL_TOOLS = ['spade', 'pickaxe', 'shovel', 'axe', 'wrench', 'mortar', 'saw', 'screwdriver', 'wire_cutter', 'mining_hammer']; + const ONLY_COLORED_TOOLS = ['buzzsaw']; - function repairElectricTools(namespace, tierMaterial, repairKitMaterial, repairPercent) { - ELECTRIC_TOOLS.forEach(tool => { - let toolId = `${namespace}:${tierMaterial}_${repairKitMaterial}_${tool}`; - let repairKitId = `${namespace}:repair_kit_${repairKitMaterial}`; - if (!Item.of(toolId).isEmpty() && !Item.of(repairKitId).isEmpty()) { - event.recipes.tfc.no_remainder_shapeless_crafting( - event.shapeless( - toolId, - [ - toolId, - Item.of(repairKitId, `{RepairPercent:${repairPercent}f}`) - ] - ) - ); - } - }); - } + function repairElectricTools(namespace, tierMaterial, repairKitMaterial, repairPercent) { + ELECTRIC_TOOLS.forEach(tool => { + let toolId = `${namespace}:${tierMaterial}_${repairKitMaterial}_${tool}`; + let repairKitId = `${namespace}:repair_kit_${repairKitMaterial}`; + if (!Item.of(toolId).isEmpty() && !Item.of(repairKitId).isEmpty()) { + event.recipes.tfc.no_remainder_shapeless_crafting( + event.shapeless( + toolId, + [ + toolId, + Item.of(repairKitId, `{RepairPercent:${repairPercent}f}`) + ] + ) + ); + } + }); + } - function repairManualTools(namespace, material, repairPercent) { - MANUAL_TOOLS.forEach(tool => { - let toolId = `${namespace}:${material}_${tool}`; - let repairKitId = `${namespace}:repair_kit_${material}`; - if (!Item.of(toolId).isEmpty() && !Item.of(repairKitId).isEmpty()) { - event.recipes.tfc.no_remainder_shapeless_crafting( - event.shapeless( - toolId, - [ - toolId, - Item.of(repairKitId, `{RepairPercent:${repairPercent}f}`) - ] - ) - ); - } - }); - } + function repairManualTools(namespace, material, repairPercent) { + MANUAL_TOOLS.forEach(tool => { + let toolId = `${namespace}:${material}_${tool}`; + let repairKitId = `${namespace}:repair_kit_${material}`; + if (!Item.of(toolId).isEmpty() && !Item.of(repairKitId).isEmpty()) { + event.recipes.tfc.no_remainder_shapeless_crafting( + event.shapeless( + toolId, + [ + toolId, + Item.of(repairKitId, `{RepairPercent:${repairPercent}f}`) + ] + ) + ); + } + }); + } - function repairOnlyManualTools(namespace, material, repairPercent) { - ONLY_MANUAL_TOOLS.forEach(tool => { - let toolId = `${namespace}:${material}_${tool}`; - let repairKitId = `${namespace}:repair_kit_${material}`; - if (!Item.of(toolId).isEmpty() && !Item.of(repairKitId).isEmpty()) { - event.recipes.tfc.no_remainder_shapeless_crafting( - event.shapeless( - toolId, - [ - toolId, - Item.of(repairKitId, `{RepairPercent:${repairPercent}f}`) - ] - ) - ); - } - }); - } + function repairOnlyManualTools(namespace, material, repairPercent) { + ONLY_MANUAL_TOOLS.forEach(tool => { + let toolId = `${namespace}:${material}_${tool}`; + let repairKitId = `${namespace}:repair_kit_${material}`; + if (!Item.of(toolId).isEmpty() && !Item.of(repairKitId).isEmpty()) { + event.recipes.tfc.no_remainder_shapeless_crafting( + event.shapeless( + toolId, + [ + toolId, + Item.of(repairKitId, `{RepairPercent:${repairPercent}f}`) + ] + ) + ); + } + }); + } - function repairColoredSteel(namespace, material, repairPercent) { - ONLY_COLORED_TOOLS.forEach(tool => { - let toolId = `${namespace}:${material}_${tool}`; - let repairKitId = `${namespace}:repair_kit_${material}`; - if (!Item.of(toolId).isEmpty() && !Item.of(repairKitId).isEmpty()) { - event.recipes.tfc.no_remainder_shapeless_crafting( - event.shapeless( - toolId, - [ - toolId, - Item.of(repairKitId, `{RepairPercent:${repairPercent}f}`) - ] - ) - ); - } - }); - } + function repairColoredSteel(namespace, material, repairPercent) { + ONLY_COLORED_TOOLS.forEach(tool => { + let toolId = `${namespace}:${material}_${tool}`; + let repairKitId = `${namespace}:repair_kit_${material}`; + if (!Item.of(toolId).isEmpty() && !Item.of(repairKitId).isEmpty()) { + event.recipes.tfc.no_remainder_shapeless_crafting( + event.shapeless( + toolId, + [ + toolId, + Item.of(repairKitId, `{RepairPercent:${repairPercent}f}`) + ] + ) + ); + } + }); + } - // 'namespace':'tier if electric'_material' Amount repaired in percentage + // 'namespace':'tier if electric'_material' Amount repaired in percentage - repairColoredSteel('gtceu', 'red_steel', 0.25); - repairColoredSteel('gtceu', 'blue_steel', 0.25); + repairColoredSteel('gtceu', 'red_steel', 0.25); + repairColoredSteel('gtceu', 'blue_steel', 0.25); - repairElectricTools('tfg', 'hv', 'boron_carbide', 0.25); - repairElectricTools('tfg', 'mv', 'diamond_tipped_mo_50_re', 0.25); - repairElectricTools('gtceu', 'iv', 'hsse', 0.25); - repairElectricTools('gtceu', 'iv', 'naquadah_alloy', 0.25); - repairElectricTools('gtceu', 'iv', 'duranium', 0.25); - repairElectricTools('gtceu', 'ev', 'ostrum_iodide', 0.25); - repairElectricTools('gtceu', 'ev', 'tungsten_carbide', 0.25); - repairElectricTools('gtceu', 'hv', 'ultimet', 0.25); - repairElectricTools('gtceu', 'lv', 'blue_steel', 0.25); - repairElectricTools('gtceu', 'lv', 'red_steel', 0.25); - repairElectricTools('gtceu', 'mv', 'vanadium_steel', 0.25); + repairElectricTools('tfg', 'hv', 'boron_carbide', 0.25); + repairElectricTools('tfg', 'mv', 'diamond_tipped_mo_50_re', 0.25); + repairElectricTools('gtceu', 'iv', 'hsse', 0.25); + repairElectricTools('gtceu', 'iv', 'naquadah_alloy', 0.25); + repairElectricTools('gtceu', 'iv', 'duranium', 0.25); + repairElectricTools('gtceu', 'ev', 'ostrum_iodide', 0.25); + repairElectricTools('gtceu', 'ev', 'tungsten_carbide', 0.25); + repairElectricTools('gtceu', 'hv', 'ultimet', 0.25); + repairElectricTools('gtceu', 'lv', 'blue_steel', 0.25); + repairElectricTools('gtceu', 'lv', 'red_steel', 0.25); + repairElectricTools('gtceu', 'mv', 'vanadium_steel', 0.25); - repairManualTools('tfg', 'boron_carbide', 0.25); - repairManualTools('tfg', 'diamond_tipped_mo_50_re', 0.25); - repairManualTools('gtceu', 'hsse', 0.25); - repairManualTools('gtceu', 'naquadah_alloy', 0.25); - repairManualTools('gtceu', 'duranium', 0.25); - repairManualTools('gtceu', 'ostrum_iodide', 0.25); - repairManualTools('gtceu', 'tungsten_carbide', 0.25); - repairManualTools('gtceu', 'ultimet', 0.25); - repairManualTools('gtceu', 'blue_steel', 0.25); - repairManualTools('gtceu', 'red_steel', 0.25); - repairManualTools('gtceu', 'vanadium_steel', 0.25); + repairManualTools('tfg', 'boron_carbide', 0.25); + repairManualTools('tfg', 'diamond_tipped_mo_50_re', 0.25); + repairManualTools('gtceu', 'hsse', 0.25); + repairManualTools('gtceu', 'naquadah_alloy', 0.25); + repairManualTools('gtceu', 'duranium', 0.25); + repairManualTools('gtceu', 'ostrum_iodide', 0.25); + repairManualTools('gtceu', 'tungsten_carbide', 0.25); + repairManualTools('gtceu', 'ultimet', 0.25); + repairManualTools('gtceu', 'blue_steel', 0.25); + repairManualTools('gtceu', 'red_steel', 0.25); + repairManualTools('gtceu', 'vanadium_steel', 0.25); - repairOnlyManualTools('gtceu', 'black_bronze', 0.25); - repairOnlyManualTools('gtceu', 'black_steel', 0.25); - repairOnlyManualTools('gtceu', 'steel', 0.25); - repairOnlyManualTools('gtceu', 'wrought_iron', 0.25); - repairOnlyManualTools('gtceu', 'bronze', 0.25); - repairOnlyManualTools('gtceu', 'copper', 0.25); - repairOnlyManualTools('gtceu', 'bismuth_bronze', 0.25); + repairOnlyManualTools('gtceu', 'black_bronze', 0.25); + repairOnlyManualTools('gtceu', 'black_steel', 0.25); + repairOnlyManualTools('gtceu', 'steel', 0.25); + repairOnlyManualTools('gtceu', 'wrought_iron', 0.25); + repairOnlyManualTools('gtceu', 'bronze', 0.25); + repairOnlyManualTools('gtceu', 'copper', 0.25); + repairOnlyManualTools('gtceu', 'bismuth_bronze', 0.25); - repairOnlyManualTools('gtceu', 'blue_steel', 0.25); - repairOnlyManualTools('gtceu', 'red_steel', 0.25); + repairOnlyManualTools('gtceu', 'blue_steel', 0.25); + repairOnlyManualTools('gtceu', 'red_steel', 0.25); - repairManualTools('gtceu', 'black_bronze', 0.25); - repairManualTools('gtceu', 'black_steel', 0.25); - repairManualTools('gtceu', 'steel', 0.25); - repairManualTools('gtceu', 'wrought_iron', 0.25); - repairManualTools('gtceu', 'bronze', 0.25); - repairManualTools('gtceu', 'copper', 0.25); - repairManualTools('gtceu', 'bismuth_bronze', 0.25); + repairManualTools('gtceu', 'black_bronze', 0.25); + repairManualTools('gtceu', 'black_steel', 0.25); + repairManualTools('gtceu', 'steel', 0.25); + repairManualTools('gtceu', 'wrought_iron', 0.25); + repairManualTools('gtceu', 'bronze', 0.25); + repairManualTools('gtceu', 'copper', 0.25); + repairManualTools('gtceu', 'bismuth_bronze', 0.25); - //#region Generate recipe for Repair Kit + // Generate recipe for Repair Kit - function materialUnfiredRepairKit(namespace, material) { - event.shapeless( - Item.of(`${namespace}:unfired_repair_kit_${material}`, 16), // arg 1: output - [ - 'gtceu:brick_wooden_form', - '#tfg:stone_dusts', - 'minecraft:clay_ball', - `#forge:dusts/${material}` - ] - ) + forEachMaterial(material => { + if (!material.hasProperty(PropertyKey.TOOL)) + return; - event.recipes.gtceu.assembler(`tfg:unfired_repair_kit_${namespace}_${material}`) - .notConsumable('gtceu:brick_wooden_form') - .itemInputs( - '#tfg:stone_dusts', - 'minecraft:clay_ball', - `#forge:dusts/${material}`) - .itemOutputs(Item.of(`${namespace}:unfired_repair_kit_${material}`, 16)) - .duration(20 * 5) - .EUt(GTValues.VHA[GTValues.LV]) - .circuit(7) - } + var unfiredKit = ChemicalHelper.get(TFGTagPrefix.unfiredRepairKit, material, 1); + var firedKit = ChemicalHelper.get(TFGTagPrefix.repairKit, material, 1); - materialUnfiredRepairKit('tfg', 'boron_carbide'); - materialUnfiredRepairKit('gtceu', 'hsse'); - materialUnfiredRepairKit('gtceu', 'naquadah_alloy'); - materialUnfiredRepairKit('gtceu', 'duranium'); - materialUnfiredRepairKit('gtceu', 'ostrum_iodide'); - materialUnfiredRepairKit('gtceu', 'tungsten_carbide'); - materialUnfiredRepairKit('gtceu', 'ultimet'); - materialUnfiredRepairKit('gtceu', 'blue_steel'); - materialUnfiredRepairKit('gtceu', 'red_steel'); - materialUnfiredRepairKit('gtceu', 'vanadium_steel'); - materialUnfiredRepairKit('gtceu', 'black_bronze'); - materialUnfiredRepairKit('gtceu', 'black_steel'); - materialUnfiredRepairKit('gtceu', 'steel'); - materialUnfiredRepairKit('gtceu', 'wrought_iron'); - materialUnfiredRepairKit('gtceu', 'bronze'); - materialUnfiredRepairKit('gtceu', 'copper'); - materialUnfiredRepairKit('gtceu', 'bismuth_bronze'); + if (unfiredKit.isEmpty() || firedKit.isEmpty()) + return; - event.recipes.gtceu.assembler(`tfg:unfired_repair_kit_tfg_unfired_repair_kit_diamond_tipped_mo_50_re}`) - .notConsumable('gtceu:brick_wooden_form') - .itemInputs( - '#tfg:stone_dusts', - 'minecraft:clay_ball', - `#forge:ingots/diamond_tipped_mo_50_re`) - .itemOutputs(Item.of(`tfg:unfired_repair_kit_diamond_tipped_mo_50_re`, 16)) - .duration(20 * 5) - .EUt(GTValues.VHA[GTValues.LV]) - .circuit(7) + let materialInput = ChemicalHelper.get(material == GTMaterials.get('tfg:diamond_tipped_mo_50_re') + ? TagPrefix.ingot : TagPrefix.dust, material, 1); + + event.shapeless(unfiredKit.withCount(16), [ + 'gtceu:brick_wooden_form', + '#tfg:stone_dusts', + 'tfc:ceramic/unfired_brick', + materialInput + ]).id(`tfg:shapeless/unfired_repair_kit_${material.getName()}`) - event.shapeless( - Item.of(`tfg:unfired_repair_kit_diamond_tipped_mo_50_re`, 16), // arg 1: output - [ - 'gtceu:brick_wooden_form', - '#tfg:stone_dusts', - 'minecraft:clay_ball', - `#forge:ingots/diamond_tipped_mo_50_re` - ] - ) + event.recipes.gtceu.forming_press(`tfg:unfired_repair_kit_${material.getName()}`) + .notConsumable('gtceu:ingot_casting_mold') + .itemInputs( + '#tfg:stone_dusts', + ['minecraft:clay_ball', 'tfc:ceramic/unfired_brick'], + materialInput) + .itemOutputs(unfiredKit.withCount(16)) + .duration(20 * 5) + .EUt(GTValues.VHA[GTValues.LV]) + event.smelting(firedKit, unfiredKit) + .id(`tfg:smelting/repair_kit_${material.getName()}`) - function materialPrimalKit(namespace, repairKitMaterial) { - event.recipes.tfc.heating(`${namespace}:unfired_repair_kit_${repairKitMaterial}`, 1399) - .resultItem(`${namespace}:repair_kit_${repairKitMaterial}`) - .id(`tfg:heating/repair_kit_${namespace}_${repairKitMaterial}`) - } - - materialPrimalKit('gtceu', 'black_bronze'); - materialPrimalKit('gtceu', 'black_steel'); - materialPrimalKit('gtceu', 'steel'); - materialPrimalKit('gtceu', 'wrought_iron'); - materialPrimalKit('gtceu', 'bronze'); - materialPrimalKit('gtceu', 'copper'); - materialPrimalKit('gtceu', 'bismuth_bronze'); - materialPrimalKit('gtceu', 'blue_steel'); - materialPrimalKit('gtceu', 'red_steel'); - - function materialElectricKit(namespace, repairKitMaterial) { - event.smelting( - Item.of(`${namespace}:repair_kit_${repairKitMaterial}`), - `${namespace}:unfired_repair_kit_${repairKitMaterial}` - ) - .id(`tfg:smelting/repair_kit_${namespace}_${repairKitMaterial}`) - } - - materialElectricKit('tfg', 'boron_carbide'); - materialElectricKit('tfg', 'diamond_tipped_mo_50_re'); - materialElectricKit('gtceu', 'hsse'); - materialElectricKit('gtceu', 'naquadah_alloy'); - materialElectricKit('gtceu', 'duranium'); - materialElectricKit('gtceu', 'ostrum_iodide'); - materialElectricKit('gtceu', 'tungsten_carbide'); - materialElectricKit('gtceu', 'ultimet'); - materialElectricKit('gtceu', 'blue_steel'); - materialElectricKit('gtceu', 'red_steel'); - materialElectricKit('gtceu', 'vanadium_steel'); - materialElectricKit('gtceu', 'black_bronze'); - materialElectricKit('gtceu', 'black_steel'); - materialElectricKit('gtceu', 'steel'); - materialElectricKit('gtceu', 'wrought_iron'); - materialElectricKit('gtceu', 'bronze'); - materialElectricKit('gtceu', 'copper'); - materialElectricKit('gtceu', 'bismuth_bronze'); + if (material.hasProperty(TFGPropertyKey.TFC_PROPERTY)) { + event.recipes.tfc.heating(unfiredKit, 1399) + .resultItem(firedKit) + .id(`tfg:heating/repair_kit_${material.getName()}`) + } + }) }; \ No newline at end of file