diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bd9adc8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,14 @@ +# IDE files +.vscode/ +.trae/ + +# IDE configuration files +**/jsconfig.json +config/probe-settings.json + +# OS files +Thumbs.db +.DS_Store + +# Change log +change log/ \ No newline at end of file diff --git a/server_scripts/cbc_melting.js b/server_scripts/cbc_melting.js index 0125eda..8c42fe8 100644 --- a/server_scripts/cbc_melting.js +++ b/server_scripts/cbc_melting.js @@ -2,13 +2,13 @@ ServerEvents.recipes(event => { event.forEachRecipe({ type: 'tfc:heating' }, recipe => { const json = recipe.json if (!json.has('result_fluid')) return - + const resultFluid = json.get('result_fluid') const ingredient = json.get('ingredient') - const ingredientArray = ingredient.isJsonArray() + const ingredientArray = ingredient.isJsonArray() ? JSON.parse(ingredient.toString()) : [JSON.parse(ingredient.toString())] - + const allValid = ingredientArray.every(ing => { if (ing.item) { return Item.exists(ing.item) @@ -18,16 +18,16 @@ ServerEvents.recipes(event => { } return false }) - + if (!allValid) return - + const temperature = json.has('temperature') ? json.get('temperature').getAsFloat() : 0 const heatRequirement = temperature > 1080 ? 'superheated' : 'heated' - + // 基准 1080°C → 20s (400 tick),1500°C → 30s (600 tick),线性插值 // 斜率: (600-400) / (1500-1080) ≈ 0.476 tick/°C const processingTime = Math.round(400 + (temperature - 1080) * (200 / 420)) - + event.custom({ type: 'createbigcannons:melting', heat_requirement: heatRequirement, diff --git a/server_scripts/event_recipes.js b/server_scripts/event_recipes.js index 5b070f1..17e0b8a 100644 --- a/server_scripts/event_recipes.js +++ b/server_scripts/event_recipes.js @@ -11,6 +11,20 @@ ServerEvents.recipes(event => { B: '#c:gravels' } ) + event.shaped( + Item.of('create:empty_blaze_burner'), + [ + ' A ', + 'ABC', + ' C ' + ], + { + A: '#c:sheets/red_steel', + B: '#c:gravels', + C: '#c:sheets/blue_steel' + } + ) + event.shaped( Item.of('drivebywire:wire'), [ @@ -124,16 +138,4 @@ ServerEvents.recipes(event => { 1500 ).fluidOutput(Fluid.of('tfc:metal/cast_iron', 900)) - - event.replaceInput( - { input: 'minecraft:blast_furnace' }, - 'minecraft:blast_furnace', - 'tfc:blast_furnace' - ) - event.replaceInput( - { input: 'create:empty_blaze_burner' }, - 'create:empty_blaze_burner', - 'createlowheated:basic_burner' - ) - }) \ No newline at end of file diff --git a/server_scripts/remove.js b/server_scripts/remove.js index d4abc16..c485dcf 100644 --- a/server_scripts/remove.js +++ b/server_scripts/remove.js @@ -12,5 +12,9 @@ ServerEvents.recipes(event => { event.remove({ output: 'minecraft:copper_block' }) event.remove({ output: 'minecraft:dried_kelp' }) event.remove({ output: 'minecraft:honeycomb' }) + event.remove({ + mod: 'functionalstorage', + id: /.*_upgrade/ + }) }) \ No newline at end of file diff --git a/server_scripts/tfc_compact.js b/server_scripts/tfc_compact.js new file mode 100644 index 0000000..3aa6511 --- /dev/null +++ b/server_scripts/tfc_compact.js @@ -0,0 +1,68 @@ +ServerEvents.recipes(event => { + event.shapeless(Item.of('create:andesite_alloy', 8), + [ + '#c:cobblestones', + '#c:ingots/zinc' + ] + ) + event.shapeless(Item.of('create:andesite_alloy', 8), + [ + '#c:cobblestones', + '#c:ingots/iron' + ] + ) + + event.replaceInput( + { input: 'minecraft:slime_ball' }, + 'minecraft:slime_ball', + 'tfc:glue' + ) + + //metal + event.replaceInput( + { input: 'minecraft:iron_ingot' }, + 'minecraft:iron_ingot', + '#c:ingots/wrought_iron' + ) + event.replaceOutput( + { output: 'minecraft:iron_ingot' }, + 'minecraft:iron_ingot', + 'tfc:metal/ingot/wrought_iron' + ) + event.remove({ output: 'minecraft:iron_ingot' }) + event.remove({ output: 'minecraft:gold_ingot' }) + event.remove({ output: 'minecraft:gold_block' }) + event.remove({ output: 'create:brass_block' }) + + event.recipes.tfc.heating( + 'minecraft:iron_nugget', + 1500 + ).fluidOutput(Fluid.of('tfc:metal/cast_iron', 10)) + event.recipes.tfc.heating( + 'minecraft:iron_block', + 1500 + ).fluidOutput(Fluid.of('tfc:metal/cast_iron', 900)) + + + // 将 mod 配方中的原版高炉替换为 TFC firebox(造价更低) + event.replaceInput( + { input: 'minecraft:blast_furnace' }, + 'minecraft:blast_furnace', + 'tfc:firebox' + ) + + // create blaze_burner - 使用 tfc:firebox 替代昂贵的 tfc:blast_furnace + event.shaped( + Item.of('create:blaze_burner'), + [ + ' A ', + 'ABA', + ' C ' + ], + { + A: '#farmerstfc:magma_block', + B: 'tfc:firebox', + C: 'create:empty_blaze_burner' + } + ) +})