This commit is contained in:
Pyritie 2025-08-27 01:56:11 +01:00
commit a99dd0f986
23 changed files with 1270 additions and 49 deletions

View file

@ -43,6 +43,8 @@ ServerEvents.tags('item', event => {
registerRailWaysItemTags(event)
registerRnrItemTags(event)
registerSophisticatedBackpacksItemTags(event)
registerSoulboundItemTags(event)
registeSNSItemTags(event)
registerSpeciesItemTags(event)
registerTACZItemTags(event)
registerTFCAmbientalItemTags(event)
@ -132,6 +134,7 @@ ServerEvents.tags('worldgen/biome', event => {
ServerEvents.tags('entity_type', event => {
registerAdAstraEntityTypeTags(event)
registerWABEntityTypeTags(event)
})
/**
@ -248,8 +251,11 @@ ServerEvents.recipes(event => {
registerProgrammedCircuitCardRecipes(event)
registerRailWaysRecipes(event)
registerRnrRecipes(event)
registerSandwormRecipes(event)
registerSophisticatedBackpacksRecipes(event)
registerSoulboundRecipes(event)
registerSimplylightRecipes(event)
registerSNSRecipes(event)
registerSpeciesRecipes(event)
registerTACZRecipes(event)
registerTFCRecipes(event)

View file

@ -0,0 +1,231 @@
"use strict";
const registerSNSRecipes = (event) => {
global.SNS_DISABLED_ITEMS.forEach(item => {
event.remove({ input: item })
event.remove({ output: item })
})
event.remove({ mod: 'sns', type: 'tfc:heating' })
event.remove({ output: 'sns:buckle'})
event.remove({ id: 'sns:crafting/ore_sack'})
event.remove({ id: 'sns:crafting/leather_sack'})
event.remove({ id: 'sns:crafting/burlap_sack'})
event.remove({ id: 'sns:crafting/seed_pouch'})
event.remove({ output: 'sns:pack_frame'})
event.remove({ id: 'sns:crafting/reinforced_fiber'})
event.recipes.tfc.sewing(
'sns:burlap_sack',
[
0, 0, 1, 0, 0, 1, 0, 0, 1,
0, 0, 1, 1, 0, 1, 0, 1, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1, 1, 0, 1, 0, 1, 0,
0, 0, 1, 0, 0, 1, 0, 0, 1
],
[
-1, -1, 0, 0, 0, 0, 0, 0,
-1, 0, 0, -1, -1, -1, -1, 0,
-1, 0, 0, -1, -1, -1, -1, 0,
-1, -1, 0, 0, 0, 0, 0, 0
]
).id('sns:sewing/burlap_sack')
event.recipes.tfc.sewing(
'sns:seed_pouch',
[
0, 0, 1, 0, 0, 1, 0, 0, 1,
0, 0, 1, 1, 1, 1, 1, 1, 0,
0, 0, 0, 0, 0, 0, 0, 1, 0,
0, 0, 1, 1, 1, 1, 1, 1, 0,
0, 0, 1, 0, 0, 1, 0, 0, 1
],
[
-1, -1, 1, 1, 1, 1, 1, 1,
-1, 1, 1, 0, 0, 0, 0, 1,
-1, 1, 1, 0, 0, 0, 0, 1,
-1, -1, 1, 1, 1, 1, 1, 1
]
).id('sns:sewing/seed_pouch')
event.recipes.tfc.damage_inputs_shaped_crafting(
event.shaped('sns:leather_sack', [
'AAA',
'BCB',
'DBE'
], {
A: 'tfc:jute_fiber',
B: 'sns:leather_strip',
C: 'sns:unfinished_leather_sack',
D: 'minecraft:name_tag',
E: 'tfc:bone_needle'
}
)
).id('sns:crafting/leather_sack')
event.recipes.tfc.damage_inputs_shaped_crafting(
event.shaped('sns:leather_sack', [
' A ',
'BCB',
'DBE'
], {
A: '#forge:rope',
B: 'sns:leather_strip',
C: 'sns:unfinished_leather_sack',
D: 'minecraft:name_tag',
E: 'tfc:bone_needle'
}
)
).id('sns:crafting/leather_sack_coil')
event.recipes.tfc.damage_inputs_shaped_crafting(
event.shaped('sns:ore_sack', [
'AAA',
'BCB',
'DBE'
], {
A: 'sns:reinforced_fiber',
B: '#forge:leather',
C: 'sns:unfinished_leather_sack',
D: 'minecraft:name_tag',
E: 'tfc:bone_needle'
}
)
).id('sns:crafting/ore_sack')
event.recipes.tfc.anvil(
'sns:buckle',
'#forge:plates/wrought_iron',
[
'upset_last',
'hit_second_last',
'shrink_any'
]
).tier(3)
.id('sns:anvil/buckle')
event.recipes.tfc.anvil(
'2x sns:buckle',
'#forge:plates/steel',
[
'upset_last',
'hit_second_last',
'shrink_any'
]
).tier(4)
.id('sns:anvil/buckle2')
event.recipes.gtceu.extruder('sns:buckle')
.itemInputs('#forge:plates/wrought_iron')
.notConsumable('gtceu:small_pipe_extruder_mold')
.itemOutputs('sns:buckle')
.duration(40)
.EUt(GTValues.VA[GTValues.LV])
event.custom({
type: 'vintageimprovements:curving',
ingredients: [{ tag: 'forge:plates/wrought_iron' }],
itemAsHead: 'gtceu:small_pipe_extruder_mold',
results: [{ item: 'sns:buckle' }],
processingTime: 50 * global.VINTAGE_IMPROVEMENTS_DURATION_MULTIPLIER
}).id('sns:vi/curving/buckle')
event.recipes.gtceu.extruder('sns:buckle2')
.itemInputs('#forge:plates/steel')
.notConsumable('gtceu:small_pipe_extruder_mold')
.itemOutputs('2x sns:buckle')
.duration(80)
.EUt(GTValues.VA[GTValues.LV])
event.custom({
type: 'vintageimprovements:curving',
ingredients: [{ tag: 'forge:plates/steel' }],
itemAsHead: 'gtceu:small_pipe_extruder_mold',
results: [{ item: '2x sns:buckle' }],
processingTime: 80 * global.VINTAGE_IMPROVEMENTS_DURATION_MULTIPLIER
}).id('sns:vi/curving/buckle')
event.shaped('sns:pack_frame', [
'AAA',
'A A',
'AAA'
], {
A: '#forge:rods/wrought_iron'
}).id('sns:shaped/pack_frame')
event.shaped('2x sns:reinforced_fiber', [
'AAA',
'BBB',
'AAA'
], {
A: 'tfc:jute_fiber',
B: '#forge:string'
}).id('sns:shaped/reinforced_fiber')
event.shaped('2x sns:reinforced_fiber', [
' A ',
'BBB',
' C '
], {
A: '#forge:rope',
B: '#forge:string',
C: '#forge:tools/knifes'
}).id('sns:shaped/reinforced_fiber_rope')
event.recipes.gtceu.assembler('sns:reinforced_fiber')
.itemInputs('2x tfc:jute_fiber', '#forge:string')
.itemOutputs('sns:reinforced_fiber')
.duration(40)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.assembler('sns:reinforced_fabric')
.itemInputs('16x sns:reinforced_fiber')
.itemOutputs('sns:reinforced_fabric')
.circuit(16)
.duration(100)
.EUt(GTValues.VA[GTValues.LV])
generateCutterRecipe(event, '#forge:leather', '4x sns:leather_strip', 80, GTValues.VA[GTValues.LV], 'sns:leather_strip_cut')
event.recipes.gtceu.assembler('sns:bound_leather_strip')
.itemInputs('2x sns:leather_strip', 'sns:reinforced_fiber')
.itemOutputs('sns:bound_leather_strip')
.circuit(3)
.duration(120)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.bender('sns:horseshoe_steel_electric_only')
.itemInputs('#forge:rods/steel')
.itemOutputs('sns:metal/horseshoe/steel')
.circuit(4)
.duration(40)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.bender('sns:horseshoe_black_steel_electric_only')
.itemInputs('#forge:rods/black_steel')
.itemOutputs('sns:metal/horseshoe/black_steel')
.circuit(4)
.duration(40)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.bender('sns:horseshoe_blue_steel_electric_only')
.itemInputs('#forge:rods/blue_steel')
.itemOutputs('sns:metal/horseshoe/blue_steel')
.circuit(4)
.duration(40)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.bender('sns:horseshoe_red_steel_electric_only')
.itemInputs('#forge:rods/red_steel')
.itemOutputs('sns:metal/horseshoe/red_steel')
.circuit(4)
.duration(40)
.EUt(GTValues.VA[GTValues.LV])
}

View file

@ -0,0 +1,11 @@
// priority: 0
"use strict";
function registeSNSItemTags(event) {
global.SNS_DISABLED_ITEMS.forEach(item => {
event.removeAllTagsFrom(item)
event.add('c:hidden_from_recipe_viewers', item)
})
}

View file

@ -0,0 +1,15 @@
// priority: 0
"use strict";
const registerSandwormRecipes = (event) => {
event.remove({ mod: 'sandworm_mod'})
event.recipes.gtceu.assembler('sandworm_mod:thumper')
.itemInputs('6x #forge:plates/maraging_steel_300', '#gtceu:circuits/iv', 'gtceu:ev_electric_piston')
.inputFluids(Fluid.of('gtceu:radon', 100))
.itemOutputs('sandworm_mod:thumper')
.duration(200)
.circuit(10)
.EUt(GTValues.VA[GTValues.EV]*2);
}

View file

@ -0,0 +1,25 @@
// priority: 0
"use strict";
const registerSoulboundRecipes = (event) => {
global.SOULBINDABLE_ITEMS.forEach(item => {
event.shapeless(Item.of(item, '{soulbindingSoulboundItems:1b}'), ['endermanoverhaul:soul_pearl', item])
.modifyResult((craftingGrid, result) => {
let orig = craftingGrid.find(Ingredient.of(item))
result.nbt.put("Damage", orig.nbt.getInt("Damage"));
if(item === 'ad_astra:space_suit') {
try {
result.nbt.put('BotariumData', orig.nbt.get('BotariumData'))
} catch (exception) {
console.error(exception);
}
}
result.nbt.put('soulbindingSoulboundItems', true)
return result;
}).id(`tfg:soulbind_${item}`);
})
}

View file

@ -0,0 +1,10 @@
// priority: 0
"use strict";
const registerSoulboundItemTags = (event) => {
global.SOULBINDABLE_ITEMS.forEach(item => {
event.add('tfg:soulbindable_items', item)
})
}

View file

@ -183,6 +183,9 @@ const registerTFCRecipes = (event) => {
event.recipes.tfc.heating('tfc:plant/winged_kelp', 200)
.resultItem('tfc:food/dried_kelp')
// Burning Bread
event.recipes.tfc.heating('#tfc:foods/breads', 850)
// Soda Ash
event.smelting('3x tfc:powder/soda_ash', 'tfc:food/dried_seaweed').id('tfg:smelting/dried_seaweed_to_soda')
event.smelting('3x tfc:powder/soda_ash', 'tfc:food/dried_kelp').id('tfg:smelting/dried_kelp_to_soda')

View file

@ -153,6 +153,7 @@ function removeTFCRecipes(event) {
event.remove({ id: 'tfc:crafting/alabaster_brick' })
event.remove({ id: /^tfc:crafting\/dough\/.*/ })
event.remove({ id: 'tfc:heating/destroy_bread' })
event.remove({ id: 'tfc:crafting/gunpowder_graphite' })
event.remove({ id: 'tfc:crafting/gunpowder' })
@ -160,4 +161,4 @@ function removeTFCRecipes(event) {
event.remove({ output: 'tfc:rustic_windmill_blade'})
event.remove({ output: 'tfc:lattice_windmill_blade'})
event.remove({ id: 'tfchotornot:heating/insulating_items'})
}
}

View file

@ -25,4 +25,13 @@ const registerWABItemTags = (event) => {
event.add('tfc:foods/cooked_meats', 'wan_ancient_beasts:cooked_toxlacanth')
event.add('firmalife:foods/cooked_fish', 'wan_ancient_beasts:cooked_toxlacanth')
event.add('tfc:food/meats', 'wan_ancient_beasts:cooked_toxlacanth')
}
const registerWABEntityTypeTags = (event) => {
event.add('wan_ancient_beasts:eater_ignore', '#wan_ancient_beasts:ancient_mobs')
event.add('wan_ancient_beasts:eater_ignore', 'tfg:sniffer')
event.add('wan_ancient_beasts:eater_ignore', 'tfg:wraptor')
event.add('wan_ancient_beasts:eater_ignore', 'species:springling')
}

View file

@ -0,0 +1,11 @@
// priority: 0
"use strict";
global.SNS_DISABLED_ITEMS = [
'sns:mob_net',
'sns:lunchbox'
];

View file

@ -0,0 +1,6 @@
global.SOULBINDABLE_ITEMS = [
'ad_astra:space_helmet',
'ad_astra:space_suit',
'ad_astra:space_pants',
'ad_astra:space_boots'
]