From 9e93ce86022b0cd282a47893c2d91ebd1a9c301b Mon Sep 17 00:00:00 2001 From: Pyritie Date: Sat, 17 Jan 2026 12:29:09 +0000 Subject: [PATCH] #2753 --- CHANGELOG.md | 2 + kubejs/server_scripts/chalk/data.js | 2 + kubejs/server_scripts/chalk/recipes.js | 178 +++++++++++++++++-------- 3 files changed, 125 insertions(+), 57 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 27947abf0..686c47837 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -34,6 +34,8 @@ - Added wrapped locometal to gregtech facade blocks (#2726) @Pyritie - Peat can now be turned into creosote @Pyritie - Coke oven bricks now require mortar to craft @Pyritie +- Glowstone can now be quickly broken with a pickaxe/mining hammer @Pyritie +- Added some more knapping recipes for chalk items, improved the durability of others (#2753) @Pyritie ### Bug fixes - Fixed not being able to craft Paracetamol or Rad-Away @Pyritie - Fixed the missing dried fruit to yeast starter recipe (#2673) @Mqrius diff --git a/kubejs/server_scripts/chalk/data.js b/kubejs/server_scripts/chalk/data.js index c2eefba1c..e2790c2dc 100644 --- a/kubejs/server_scripts/chalk/data.js +++ b/kubejs/server_scripts/chalk/data.js @@ -8,4 +8,6 @@ const registerTFCDataForChalk = (evt) => { global.MINECRAFT_DYE_NAMES.forEach(dyeName => { evt.itemHeat(`tfg:wet_${dyeName}_chalk`, 1, null, null, `tfg:heating/wet_${dyeName}_chalk`) }) + + evt.itemHead('tfg:unfired_chalk', 1, null, null, 'tfg:heating/unfired_chalk') } \ No newline at end of file diff --git a/kubejs/server_scripts/chalk/recipes.js b/kubejs/server_scripts/chalk/recipes.js index 8fdd01e3d..8ebe2909d 100644 --- a/kubejs/server_scripts/chalk/recipes.js +++ b/kubejs/server_scripts/chalk/recipes.js @@ -8,65 +8,125 @@ const registerChalkRecipes = (evt) => { evt.remove({ output: "#chalk:chalks" }) evt.shaped('chalk:chalk_box', [ - 'ABA', + 'ABA', ' A ' ], { - A: 'paper', - B: ['tfc:glue'] - }).id('chalk:chalk_box') + A: 'paper', + B: ['tfc:glue'] + }).id('chalk:chalk_box') - // only 1/4 durability remaining + // only 1/2 durability remaining evt.recipes.tfc.knapping( - Item.of('chalk:white_chalk', '{Damage:48}'), - 'tfc:rock', - [ - ' X ', - ' X ', - ' X ', - ' X ', - ' X ' - ] - ).ingredient('tfc:rock/loose/chalk') - .id('tfg:knapping/chalk') - - evt.recipes.tfc.knapping( - Item.of('chalk:light_gray_chalk', '{Damage:48}'), - 'tfc:rock', - [ - ' X ', - ' X ', - ' X ', - ' X ', - ' X ' - ] - ).ingredient('tfc:rock/loose/limestone') - .id('tfg:knapping/limestone_chalk') + Item.of('chalk:white_chalk', '{Damage:32}'), + 'tfc:rock', + [ + 'X', + 'X', + 'X', + 'X', + 'X' + ] + ).ingredient('tfc:rock/loose/chalk') + .outsideSlotRequired(false) + .id('tfg:knapping/chalk') evt.recipes.tfc.knapping( - Item.of('chalk:brown_chalk', '{Damage:48}'), - 'tfc:rock', - [ - ' X ', - ' X ', - ' X ', - ' X ', - ' X ' - ] - ).ingredient('tfg:loose/dripstone') - .id('tfg:knapping/travertine_chalk') + Item.of('chalk:light_gray_chalk'), + 'tfc:rock', + [ + 'X', + 'X', + 'X', + 'X', + 'X' + ] + ).ingredient('tfc:rock/loose/limestone') + .outsideSlotRequired(false) + .id('tfg:knapping/limestone_chalk') evt.recipes.tfc.knapping( - Item.of('chalk:orange_chalk', '{Damage:48}'), - 'tfc:rock', - [ - ' X ', - ' X ', - ' X ', - ' X ', - ' X ' - ] - ).ingredient('tfc:rock/loose/claystone') - .id('tfg:knapping/claystone_chalk') + Item.of('chalk:light_gray_chalk', '{Damage:48}'), + 'tfc:rock', + [ + 'X', + 'X', + 'X', + 'X', + 'X' + ] + ).ingredient('tfc:rock/loose/conglomerate') + .outsideSlotRequired(false) + .id('tfg:knapping/conglomerate_chalk') + + evt.recipes.tfc.knapping( + Item.of('chalk:black_chalk'), + 'tfc:rock', + [ + 'X', + 'X', + 'X', + 'X', + 'X' + ] + ).ingredient('tfc:rock/loose/dolomite') + .outsideSlotRequired(false) + .id('tfg:knapping/dolomite_chalk') + + evt.recipes.tfc.knapping( + Item.of('chalk:gray_chalk'), + 'tfc:rock', + [ + 'X', + 'X', + 'X', + 'X', + 'X' + ] + ).ingredient('tfc:rock/loose/shale') + .outsideSlotRequired(false) + .id('tfg:knapping/shale_chalk') + + evt.recipes.tfc.knapping( + Item.of('chalk:brown_chalk'), + 'tfc:rock', + [ + 'X', + 'X', + 'X', + 'X', + 'X' + ] + ).ingredient('tfg:loose/dripstone') + .outsideSlotRequired(false) + .id('tfg:knapping/travertine_chalk') + + evt.recipes.tfc.knapping( + Item.of('chalk:orange_chalk'), + 'tfc:rock', + [ + 'X', + 'X', + 'X', + 'X', + 'X' + ] + ).ingredient('tfc:rock/loose/claystone') + .outsideSlotRequired(false) + .id('tfg:knapping/claystone_chalk') + + evt.recipes.tfc.knapping( + Item.of('chalk:orange_chalk'), + 'tfc:rock', + [ + 'X', + 'X', + 'X', + 'X', + 'X' + ] + ).ingredient('tfg:loose/mars_stone') + .outsideSlotRequired(false) + .id('tfg:knapping/mars_chalk') //Mix dusts for chalk sticks with clay to make an unfired chalk stick. Greggy or Create lets you use tiny dusts if needed @@ -74,13 +134,17 @@ const registerChalkRecipes = (evt) => { .itemIngredients(["minecraft:clay_ball", "#chalk:dusts_for_chalks"]) .outputItem("tfg:unfired_chalk") .id(`chalk:mixing_bowl/unfired_chalk_stick_from_dust`) - + + + evt.recipes.tfc.heating(`tfg:unfired_chalk`, 700) + .resultItem(`chalk:white_chalk`) + .id(`chalk:heating/undyed_chalk`) global.MINECRAFT_DYE_NAMES.forEach(dyeName => { evt.recipes.tfc.barrel_sealed(1000) - .inputItem('chalk:white_chalk') - .inputFluid(Fluid.of(`tfc:${dyeName}_dye`, 25)) - .outputItem(`chalk:${dyeName}_chalk`) + .inputItem('chalk:white_chalk') + .inputFluid(Fluid.of(`tfc:${dyeName}_dye`, 25)) + .outputItem(`chalk:${dyeName}_chalk`) .id(`chalk:barrel/dye/${dyeName}_chalk`) //gt mixer works as is @@ -100,7 +164,7 @@ const registerChalkRecipes = (evt) => { evt.recipes.create.mixing(`chalk:${dyeName}_chalk`, createIngredients) .heated() .id(`chalk:create_mixer/${dyeName}_chalk_from_dust`); - + //Unfired chalk sticks need to be placed in a barrel full of dye to colorize. Then heated until cured. evt.recipes.tfc.barrel_instant() @@ -111,7 +175,7 @@ const registerChalkRecipes = (evt) => { evt.recipes.tfc.heating(`tfg:wet_${dyeName}_chalk`, 700) .resultItem(`chalk:${dyeName}_chalk`) .id(`chalk:heating/${dyeName}_chalk`) - + evt.smelting( `chalk:${dyeName}_chalk`, `tfg:wet_${dyeName}_chalk`