From 3d2ed09f9b45c895ffc565607e4c2cb3bfd7dbb5 Mon Sep 17 00:00:00 2001 From: Pyritie Date: Wed, 23 Jul 2025 21:10:59 +0100 Subject: [PATCH] added create sandpaper recipes for early game gems, unified observer recipes --- CHANGELOG.md | 5 +++ .../assets/emi/recipe/filters/categories.json | 3 ++ kubejs/server_scripts/create/recipes.js | 3 ++ .../create_additions/recipes.js | 3 ++ .../gregtech/recipes.materials.js | 16 +++++++-- kubejs/server_scripts/minecraft/recipes.js | 36 +++++++++++++++++-- kubejs/server_scripts/tfc/recipes.removes.js | 1 + kubejs/startup_scripts/create/constants.js | 1 - .../create_additions/constants.js | 1 - 9 files changed, 61 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2ef8fbce8..c18846b8e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,10 @@ - Added mortar and pestel recipes for grain to flour @Pyritie - Added in-world shift + right-click interactions for bricks. Greens can be used to turn bricks into mossy bricks, and a knife reverts it. Hammers make cracked bricks and mortar repairs them. (#1416) @Redeix - Steam can now be pumped into Blaze Burners via the Straw (#1379) @Nyonyix +- Replaced moon skeletons with Strays @Pyritie +- Replaced Beneath cave endermen with a different, passive one (same loot table though) @Pyritie +- Added sandpaper recipes for early game gems @Pyritie +- Unified observer recipes @Pyritie ### Bug fixes - Fixed butchery knife crafting recipe (#1405) @Pyritie - Fixed new extruder molds missing a tag to work with the curving press (#1412) @Forsuin @@ -14,6 +18,7 @@ - Removed most empty tag recipes (#1420) @BlueBoat29 - Fixed Styrene Butadiene Belt recipe (#1421) @BlueBoat29 - Fixed deer dropping camelidae meat with a butchery knife @Pyritie +- Fixed gas pressurizer machine not having a GUI (#1425) @Pyritie ## [0.10.2] - 20-07-2025 ### Changes diff --git a/kubejs/assets/emi/recipe/filters/categories.json b/kubejs/assets/emi/recipe/filters/categories.json index 89a75d6d1..716e2c2c3 100644 --- a/kubejs/assets/emi/recipe/filters/categories.json +++ b/kubejs/assets/emi/recipe/filters/categories.json @@ -95,6 +95,9 @@ }, { "category": "species:goober_goo" + }, + { + "category": "vintageimprovements:grinder_sandpaper_polishing" } ] } \ No newline at end of file diff --git a/kubejs/server_scripts/create/recipes.js b/kubejs/server_scripts/create/recipes.js index 94628bdce..ddc7db17b 100644 --- a/kubejs/server_scripts/create/recipes.js +++ b/kubejs/server_scripts/create/recipes.js @@ -2381,4 +2381,7 @@ const registerCreateRecipes = (event) => { .itemOutputs('#forge:dusts/asurine') .duration(50) .EUt(2) + + event.shapeless('create:sand_paper', ['minecraft:paper', 'tfc:glue', '#forge:sand']) + .id('tfg:shapeless/sand_paper') } diff --git a/kubejs/server_scripts/create_additions/recipes.js b/kubejs/server_scripts/create_additions/recipes.js index 6e3dc1f23..01dc9edbf 100644 --- a/kubejs/server_scripts/create_additions/recipes.js +++ b/kubejs/server_scripts/create_additions/recipes.js @@ -221,4 +221,7 @@ const registerCreateAdditionsRecipes = (event) => { burnTime: 4 * 9 * 9 }).id('tfg:createadditions/liquid_burning/steam') //#endregion + + event.shapeless('createaddition:diamond_grit_sandpaper', ['minecraft:paper', 'tfc:glue', '#forge:dusts/diamond']) + .id('tfg:shapeless/diamond_grit_sand_paper') } diff --git a/kubejs/server_scripts/gregtech/recipes.materials.js b/kubejs/server_scripts/gregtech/recipes.materials.js index b51384e4c..dacf0dad6 100644 --- a/kubejs/server_scripts/gregtech/recipes.materials.js +++ b/kubejs/server_scripts/gregtech/recipes.materials.js @@ -365,13 +365,17 @@ function registerGTCEUMetalRecipes(event) { .duration(10) .EUt(16) - if (material.hasProperty(PropertyKey.GEM) && !TagPrefix.gem.isIgnored(material)) { + if (material.hasProperty(PropertyKey.GEM)) { const gemItem = ChemicalHelper.get(TagPrefix.gem, material, crushedOreItem.getCount()); hammerRecipe.chancedOutput(gemItem, 7500, 950) event.recipes.greate.pressing(TieredOutputItem.of(gemItem).withChance(0.75).withExtraTierChance(0.095), poorOreItem) .recipeTier(1) .id(`greate:pressing/poor_raw_${material.getName()}_to_gem`) + + let polishingCount = Math.max(crushedOreItem.getCount() / 2, 1); + event.recipes.create.sandpaper_polishing(gemItem.copyWithCount(polishingCount), poorOreItem) + .id(`tfg:polishing/poor_raw_${material.getName()}_to_gem`) } else { hammerRecipe.chancedOutput(crushedOreItem, 7500, 950) @@ -443,13 +447,16 @@ function registerGTCEUMetalRecipes(event) { .duration(10) .EUt(16) - if (material.hasProperty(PropertyKey.GEM) && !TagPrefix.gem.isIgnored(material)) { + if (material.hasProperty(PropertyKey.GEM)) { const gemItem = ChemicalHelper.get(TagPrefix.gem, material, crushedOreItem.getCount()) hammerRecipe.itemOutputs(gemItem) event.recipes.greate.pressing(gemItem, normalOreItem) .recipeTier(1) .id(`greate:pressing/raw_${material.getName()}_to_gem`) + + event.recipes.create.sandpaper_polishing(gemItem, normalOreItem) + .id(`tfg:polishing/raw_${material.getName()}_to_gem`) } else { hammerRecipe.itemOutputs(crushedOreItem) @@ -512,13 +519,16 @@ function registerGTCEUMetalRecipes(event) { .duration(10) .EUt(16) - if (material.hasProperty(PropertyKey.GEM) && !TagPrefix.gem.isIgnored(material)) { + if (material.hasProperty(PropertyKey.GEM)) { const gemItem = ChemicalHelper.get(TagPrefix.gem, material, crushedOreItem.getCount()) hammerRecipe.itemOutputs(gemItem) event.recipes.greate.pressing(gemItem, richOreItem) .recipeTier(1) .id(`greate:pressing/rich_raw_${material.getName()}_to_gem`) + + event.recipes.create.sandpaper_polishing(gemItem, richOreItem) + .id(`tfg:polishing/rich_raw_${material.getName()}_to_gem`) } else { hammerRecipe.itemOutputs(crushedOreItem) diff --git a/kubejs/server_scripts/minecraft/recipes.js b/kubejs/server_scripts/minecraft/recipes.js index a30e351fe..35271759d 100644 --- a/kubejs/server_scripts/minecraft/recipes.js +++ b/kubejs/server_scripts/minecraft/recipes.js @@ -648,20 +648,50 @@ const registerMinecraftRecipes = (event) => { //#region Выход: Наблюдатель + event.shaped('minecraft:observer', [ + 'AAA', + 'BBC', + 'AAA' + ], { + A: '#forge:cobblestone', + B: 'minecraft:redstone', + C: '#forge:gems/certus_quartz' + }).id('tfg:shaped/observer_certus_q') + + event.shaped('minecraft:observer', [ + 'AAA', + 'BBC', + 'AAA' + ], { + A: '#forge:cobblestone', + B: 'minecraft:redstone', + C: '#forge:gems/nether_quartz' + }).id('tfg:shaped/observer_nether_q') + + event.shaped('minecraft:observer', [ + 'AAA', + 'BBC', + 'AAA' + ], { + A: '#forge:cobblestone', + B: 'minecraft:redstone', + C: '#forge:gems/quartzite' + }).id('tfg:shaped/observer_quartzite') + event.recipes.gtceu.assembler('observer_certus_quartz') - .itemInputs('6x #forge:cobblestone', '2x minecraft:redstone', '#forge:plates/certus_quartz') + .itemInputs('6x #forge:cobblestone', '2x minecraft:redstone', '#forge:gems/certus_quartz') .itemOutputs('minecraft:observer') .duration(100) .EUt(30) event.recipes.gtceu.assembler('observer_nether_quartz') - .itemInputs('6x #forge:cobblestone', '2x minecraft:redstone', '#forge:plates/nether_quartz') + .itemInputs('6x #forge:cobblestone', '2x minecraft:redstone', '#forge:gems/nether_quartz') .itemOutputs('minecraft:observer') .duration(100) .EUt(30) event.recipes.gtceu.assembler('observer_quartzite') - .itemInputs('6x #forge:cobblestone', '2x minecraft:redstone', '#forge:plates/quartzite') + .itemInputs('6x #forge:cobblestone', '2x minecraft:redstone', '#forge:gems/quartzite') .itemOutputs('minecraft:observer') .duration(100) .EUt(30) diff --git a/kubejs/server_scripts/tfc/recipes.removes.js b/kubejs/server_scripts/tfc/recipes.removes.js index 481150181..f30cc8538 100644 --- a/kubejs/server_scripts/tfc/recipes.removes.js +++ b/kubejs/server_scripts/tfc/recipes.removes.js @@ -144,6 +144,7 @@ function removeTFCRecipes(event) { event.remove({ id: `tfc:crafting/steel_pump` }) event.remove({ id: `tfc:crafting/crankshaft` }) event.remove({ id: 'tfc:crafting/sandpaper' }) + event.remove({ id: 'tfc:crafting/vanilla/redstone/observer' }) event.remove({ id: 'tfc:crafting/vanilla/redstone/steel_minecart' }) event.remove({ id: 'tfc:crafting/vanilla/redstone/minecart' }) diff --git a/kubejs/startup_scripts/create/constants.js b/kubejs/startup_scripts/create/constants.js index 6f072945b..0295f656b 100644 --- a/kubejs/startup_scripts/create/constants.js +++ b/kubejs/startup_scripts/create/constants.js @@ -192,7 +192,6 @@ global.CREATE_DISABLED_ITEMS = [ 'create:refined_radiance_casing', 'create:shadow_steel_casing', 'create:wooden_bracket', - 'create:sand_paper', 'create:red_sand_paper', 'create:empty_blaze_burner', 'create:minecart_contraption', diff --git a/kubejs/startup_scripts/create_additions/constants.js b/kubejs/startup_scripts/create_additions/constants.js index 5c65dd508..c17400028 100644 --- a/kubejs/startup_scripts/create_additions/constants.js +++ b/kubejs/startup_scripts/create_additions/constants.js @@ -4,7 +4,6 @@ global.CREATE_ADDITIONS_DISABLED_ITEMS = [ 'createaddition:electrum_ingot', 'createaddition:electrum_nugget', - 'createaddition:diamond_grit_sandpaper', 'createaddition:electrum_amulet', 'createaddition:biomass_pellet', 'createaddition:diamond_grit',