merge
This commit is contained in:
commit
bfaad34f2d
473 changed files with 8159 additions and 6681 deletions
|
|
@ -44,12 +44,18 @@ const registerTFGItemSize = (event) => {
|
|||
|
||||
event.itemSize('tfg:trowel', 'large', 'medium', 'trowel')
|
||||
|
||||
event.itemSize('tfg:railgun_ammo_shell', 'large', 'heavy', 'trowel')
|
||||
|
||||
event.itemSize('tfg:harvest_basket', 'large', 'medium', 'harvest_basket')
|
||||
event.itemSize('tfg:aluminium_harvest_basket', 'large', 'medium', 'aluminium_harvest_basket')
|
||||
|
||||
event.itemSize('tfg:rapeseed_product', 'small', 'light', 'rapeseed_product')
|
||||
event.itemSize('tfg:sunflower_product', 'small', 'light', 'sunflower_product')
|
||||
event.itemSize('betterend:amber_roots', 'small', 'light', 'amber_roots')
|
||||
event.itemSize('betterend:amber_root_product', 'small', 'light', 'amber_roots')
|
||||
event.itemSize('betterend:blossom_berry_product', 'small', 'light', 'amber_roots')
|
||||
event.itemSize('betterend:cave_pumpkin', 'small', 'light', 'amber_roots')
|
||||
event.itemSize('betterend:chorus_mushroom_product', 'small', 'light', 'amber_roots')
|
||||
event.itemSize('betterend:shadow_berry_product', 'small', 'light', 'amber_roots')
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -436,7 +442,7 @@ const registerTFGFLPlanters = (event) => {
|
|||
0.15,
|
||||
'betterend:bolux_mushroom_seeds',
|
||||
'betterend:bolux_mushroom_product',
|
||||
'phosphorus',
|
||||
'phosphorous',
|
||||
[
|
||||
// TODO: all
|
||||
'betterend:block/bolux_mushroom_greenhouse_0',
|
||||
|
|
@ -455,7 +461,7 @@ const registerTFGFLPlanters = (event) => {
|
|||
0.15,
|
||||
'betterend:chorus_mushroom_seeds',
|
||||
'betterend:chorus_mushroom_product',
|
||||
'phosphorus',
|
||||
'phosphorous',
|
||||
[
|
||||
'betterend:block/chorus_mushroom_0',
|
||||
'betterend:block/chorus_mushroom_1',
|
||||
|
|
@ -473,7 +479,7 @@ const registerTFGFLPlanters = (event) => {
|
|||
0.15,
|
||||
'betterend:cave_pumpkin_seeds',
|
||||
'betterend:cave_pumpkin',
|
||||
'phosphorus',
|
||||
'phosphorous',
|
||||
[
|
||||
// TODO: all
|
||||
'betterend:block/cave_pumpkin_greenhouse_0',
|
||||
|
|
|
|||
|
|
@ -1,6 +1,36 @@
|
|||
// priority: 0
|
||||
"use strict";
|
||||
|
||||
const $HeightMap = Java.loadClass("net.minecraft.world.level.levelgen.Heightmap")
|
||||
|
||||
const ROCK_LAYER_HEIGHT = 40;
|
||||
|
||||
// Bare minimum
|
||||
TFCEvents.createChunkDataProvider('moon', event => {
|
||||
var aquifer = [];
|
||||
let i = 0;
|
||||
while (i < 16) {
|
||||
aquifer.push(32);
|
||||
i++;
|
||||
}
|
||||
var heights = [];
|
||||
for (let x = 0 ; x < 16 ; x++) {
|
||||
for (let z = 0 ; z < 16 ; z++) {
|
||||
heights[x + 16 * z] = 80;
|
||||
}
|
||||
}
|
||||
|
||||
event.partial((data, chunk) => {
|
||||
data.generatePartial(0, 0, 0, 0, 0)
|
||||
})
|
||||
event.full((data, chunk) => {
|
||||
data.generateFull(heights, aquifer)
|
||||
})
|
||||
event.rocks((x, y, z, surfaceY, cache, rockLayers) => {
|
||||
return rockLayers.sampleAtLayer(0, 0)
|
||||
})
|
||||
})
|
||||
|
||||
TFCEvents.createChunkDataProvider('mars', event => {
|
||||
|
||||
const rain = TFC.misc.lerpFloatLayer(0, 0, 0, 0);
|
||||
|
|
@ -14,15 +44,14 @@ TFCEvents.createChunkDataProvider('mars', event => {
|
|||
.affine(6, 12)
|
||||
.scaled(6, 18, 0, 1)
|
||||
|
||||
// Precompute the surface & aquifer heights as constants as this is nether and does not realistically change
|
||||
let heights = [];
|
||||
const rockNoise = TFC.misc.newOpenSimplex2D(event.worldSeed + 8008135)
|
||||
.octaves(3)
|
||||
.scaled(0x80000000, 0x7fffffff) // Integer.MIN_VALUE to Integer.MAX_VALUE
|
||||
.spread(0.00001) // spread it out so the vaiance is small
|
||||
|
||||
// Precompute the aquifer heights as constants as this is not used
|
||||
var aquifer = [];
|
||||
let i = 0;
|
||||
while (i < 256) {
|
||||
heights.push(127);
|
||||
i++;
|
||||
}
|
||||
let aquifer = [];
|
||||
i = 0;
|
||||
while (i < 16) {
|
||||
aquifer.push(32);
|
||||
i++;
|
||||
|
|
@ -49,10 +78,16 @@ TFCEvents.createChunkDataProvider('mars', event => {
|
|||
});
|
||||
|
||||
event.full((data, chunk) => {
|
||||
let heights = [];
|
||||
for (let z = 0; z < 16; z++) {
|
||||
for (let x = 0; x < 16; x++) {
|
||||
heights[x + 16 * z] = chunk.getHeight($HeightMap.Types.OCEAN_FLOOR_WG, x, z);
|
||||
}
|
||||
}
|
||||
data.generateFull(heights, aquifer);
|
||||
});
|
||||
|
||||
event.rocks((x, y, z, surfaceY, cache, rockLayers) => {
|
||||
return rockLayers.sampleAtLayer(0, 0);
|
||||
return rockLayers.sampleAtLayer(rockNoise.noise(x, z), (surfaceY - y) / ROCK_LAYER_HEIGHT);
|
||||
});
|
||||
})
|
||||
|
|
|
|||
|
|
@ -134,11 +134,14 @@ function registerTFGFoodRecipes(event) {
|
|||
itemOutputProvider: TFC.isp.of(`2x tfc:food/${grain}_flour`).copyOldestFood()
|
||||
})
|
||||
|
||||
event.recipes.tfc.advanced_shapeless_crafting(
|
||||
event.recipes.tfc.advanced_shaped_crafting(
|
||||
TFC.isp.of(`tfc:food/${grain}_flour`).copyFood(), [
|
||||
TFC.ingredient.notRotten(`tfc:food/${grain}_grain`),
|
||||
'#forge:tools/mortars'
|
||||
]).id(`tfg:mortar/${grain}_flour`)
|
||||
'A',
|
||||
'B'
|
||||
], {
|
||||
A: TFC.ingredient.notRotten(`tfc:food/${grain}_grain`),
|
||||
B: '#forge:tools/mortars'
|
||||
}, 0, 0).id(`tfg:mortar/${grain}_flour`)
|
||||
|
||||
// Flatbread dough
|
||||
processorRecipe(`${grain}_flatbread_dough`, 300, 8, {
|
||||
|
|
@ -511,23 +514,23 @@ function registerTFGFoodRecipes(event) {
|
|||
itemOutputProvider: TFC.isp.of(`4x firmalife:food/masa_flour`).copyOldestFood()
|
||||
})
|
||||
|
||||
event.recipes.tfc.advanced_shapeless_crafting(
|
||||
TFC.isp.of(`4x firmalife:food/masa_flour`).copyFood(), [
|
||||
TFC.ingredient.notRotten(`firmalife:food/nixtamal`),
|
||||
'#forge:tools/mortars'
|
||||
]).id(`tfg:mortar/masa_flour`)
|
||||
event.recipes.tfc.advanced_shaped_crafting(
|
||||
TFC.isp.of(`4x firmalife:food/masa_flour`).copyFood(), ['A', 'B'], {
|
||||
A: TFC.ingredient.notRotten(`firmalife:food/nixtamal`),
|
||||
B: '#forge:tools/mortars'
|
||||
}, 0, 0).id(`tfg:mortar/masa_flour`)
|
||||
|
||||
event.recipes.tfc.advanced_shapeless_crafting(
|
||||
TFC.isp.of(`4x firmalife:food/soybean_paste`).copyFood(), [
|
||||
TFC.ingredient.notRotten(`firmalife:food/dehydrated_soybeans`),
|
||||
'#forge:tools/mortars'
|
||||
]).id(`tfg:mortar/soybean_paste`)
|
||||
event.recipes.tfc.advanced_shaped_crafting(
|
||||
TFC.isp.of(`4x firmalife:food/soybean_paste`).copyFood(), ['A', 'B'], {
|
||||
A: TFC.ingredient.notRotten(`firmalife:food/dehydrated_soybeans`),
|
||||
B: '#forge:tools/mortars'
|
||||
}, 0, 0).id(`tfg:mortar/soybean_paste`)
|
||||
|
||||
event.recipes.tfc.advanced_shapeless_crafting(
|
||||
TFC.isp.of(`2x tfc:olive_paste`).copyFood(), [
|
||||
TFC.ingredient.notRotten(`tfc:food/olive`),
|
||||
'#forge:tools/mortars'
|
||||
]).id(`tfg:mortar/olive_paste`)
|
||||
event.recipes.tfc.advanced_shaped_crafting(
|
||||
TFC.isp.of(`2x tfc:olive_paste`).copyFood(), ['A', 'B'], {
|
||||
A: TFC.ingredient.notRotten(`tfc:food/olive`),
|
||||
B: '#forge:tools/mortars'
|
||||
}, 0, 0).id(`tfg:mortar/olive_paste`)
|
||||
|
||||
processorRecipe('firmalife_masa', 300, 2, {
|
||||
circuit: 3,
|
||||
|
|
@ -560,6 +563,7 @@ function registerTFGFoodRecipes(event) {
|
|||
itemInputs: ['tfc:food/olive'],
|
||||
itemOutputs: ['2x tfc:olive_paste'],
|
||||
itemOutputProvider: TFC.isp.of('2x tfc:olive_paste'),
|
||||
circuit: 3
|
||||
})
|
||||
|
||||
processorRecipe("soybean_paste", 60, 8, {
|
||||
|
|
@ -714,7 +718,7 @@ function registerTFGFoodRecipes(event) {
|
|||
circuit: 10,
|
||||
itemInputs: ['#tfc:foods/fruits'],
|
||||
fluidInputs: ['#tfg:clean_water 100'],
|
||||
fluidOutputs: [Fluid.of('firmalife:yeast_starter', 600)],
|
||||
fluidOutputs: [Fluid.of('firmalife:yeast_starter', 100)],
|
||||
})
|
||||
|
||||
processorRecipe("cocoa_dust", 100, 4, {
|
||||
|
|
@ -869,7 +873,7 @@ function registerTFGFoodRecipes(event) {
|
|||
.itemOutput('tfg:food/ice_soup')
|
||||
.id('tfg:pot/ice_soup')
|
||||
|
||||
event.shapeless('4x tfc:powder/salt', ['#forge:dusts/salt', '#forge:tools/mortars'])
|
||||
event.shaped('4x tfc:powder/salt', ['A', 'B'], {A: '#forge:dusts/salt', B: '#forge:tools/mortars'})
|
||||
.id(`tfg:mortar/salt`)
|
||||
|
||||
//#endregion
|
||||
|
|
@ -943,6 +947,17 @@ function registerTFGFoodRecipes(event) {
|
|||
.circuit(7)
|
||||
.EUt(GTValues.VA[GTValues.LV])
|
||||
|
||||
event.shaped('tfg:electric_greenhouse', [
|
||||
'ABA',
|
||||
'CDC',
|
||||
'BCB'
|
||||
], {
|
||||
A: '#gtceu:circuits/mv',
|
||||
B: '#forge:single_cables/copper',
|
||||
C: 'tfc:compost',
|
||||
D: 'gtceu:steel_machine_casing'
|
||||
}).id('tfg:shaped/electric_greenhouse')
|
||||
|
||||
// Tweaks to the machine crafts that are more annoying to do in java
|
||||
event.replaceInput({id: 'gtceu:shaped/lv_food_processor'}, 'gtceu:lv_electric_piston', 'gtceu:steel_whisk')
|
||||
event.replaceInput({id: 'gtceu:shaped/mv_food_processor'}, 'gtceu:mv_electric_piston', 'gtceu:aluminium_whisk')
|
||||
|
|
|
|||
|
|
@ -43,6 +43,13 @@ function registerTFGMiscellaneousRecipes(event) {
|
|||
event.recipes.tfc.pot('tfc:powder/charcoal', Fluid.of('tfg:conifer_pitch', 1000), 1200, 300)
|
||||
.itemOutput('tfg:conifer_rosin')
|
||||
.id('tfg:pot/conifer_pitch_to_rosin')
|
||||
|
||||
event.recipes.gtceu.fluid_solidifier('tfg:pitch_to_rosin')
|
||||
.inputFluids(Fluid.of('tfg:conifer_pitch', 1000))
|
||||
.itemInputs('tfc:powder/charcoal')
|
||||
.itemOutputs('tfg:conifer_rosin')
|
||||
.duration(20*24)
|
||||
.EUt(GTValues.VA[GTValues.LV])
|
||||
|
||||
// Decorative Vases
|
||||
global.MINECRAFT_DYE_NAMES.forEach(color => {
|
||||
|
|
@ -990,6 +997,7 @@ function registerTFGMiscellaneousRecipes(event) {
|
|||
.EUt(GTValues.VA[GTValues.EV])
|
||||
//endregion
|
||||
|
||||
//#region Casings
|
||||
global.GTCEU_SUPERCONDUCTORS.forEach((type, index) => {
|
||||
const multiplier = index + 1
|
||||
|
||||
|
|
@ -1000,7 +1008,7 @@ function registerTFGMiscellaneousRecipes(event) {
|
|||
ChemicalHelper.get(TagPrefix.rod, GTMaterials.SteelMagnetic, 1),
|
||||
ChemicalHelper.get(TagPrefix.wireFine, GTMaterials[type.materialId], 4)
|
||||
)
|
||||
.inputFluids(Fluid.of('gtceu:silicone_rubber', 144))
|
||||
.inputFluids(Fluid.of('gtceu:epoxy', 144))
|
||||
.itemOutputs(Item.of('tfg:superconductor_coil_small', 4 * multiplier))
|
||||
.circuit(4)
|
||||
.duration(400)
|
||||
|
|
@ -1012,7 +1020,7 @@ function registerTFGMiscellaneousRecipes(event) {
|
|||
ChemicalHelper.get(TagPrefix.rod, GTMaterials.Steel, 2),
|
||||
ChemicalHelper.get(TagPrefix.rod, GTMaterials.SteelMagnetic, 1),
|
||||
ChemicalHelper.get(TagPrefix.wireGtSingle, GTMaterials[type.materialId], 4))
|
||||
.inputFluids(Fluid.of('gtceu:silicone_rubber', 144))
|
||||
.inputFluids(Fluid.of('gtceu:epoxy', 144))
|
||||
.itemOutputs(Item.of('tfg:superconductor_coil_large', 4 * multiplier))
|
||||
.circuit(7)
|
||||
.duration(600)
|
||||
|
|
@ -1031,6 +1039,18 @@ function registerTFGMiscellaneousRecipes(event) {
|
|||
.circuit(4)
|
||||
.duration(800)
|
||||
.EUt(GTValues.VA[GTValues.MV])
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:assembler/machine_casing_aluminium_plated_steel')
|
||||
.itemInputs(
|
||||
ChemicalHelper.get(TagPrefix.plate, GTMaterials.Aluminium, 6),
|
||||
ChemicalHelper.get(TagPrefix.frameGt, GTMaterials.Steel, 1),
|
||||
)
|
||||
.inputFluids(Fluid.of('gtceu:silicon', 72))
|
||||
.itemOutputs('2x tfg:machine_casing_aluminium_plated_steel')
|
||||
.circuit(6)
|
||||
.duration(20 * (2.5))
|
||||
.EUt(GTValues.VH[GTValues.LV])
|
||||
//#endregion
|
||||
|
||||
//region ammonia borane
|
||||
event.recipes.gtceu.chemical_reactor('tfg:sodium_hydride_synthesis')
|
||||
|
|
@ -1137,57 +1157,130 @@ function registerTFGMiscellaneousRecipes(event) {
|
|||
|
||||
//Tier 3 insulation
|
||||
event.recipes.gtceu.forming_press('tfg:mli_shielding')
|
||||
.itemInputs('4x #forge:dusts/ammonia_borane', '2x tfg:aes_polyurethane', '4x gtceu:carbon_fiber_plate')
|
||||
.itemInputs('4x #forge:plates/ammonia_borane', '2x tfg:aes_polyurethane', '4x gtceu:carbon_fiber_plate')
|
||||
.itemOutputs('tfg:mli_shielding')
|
||||
.duration(100)
|
||||
.EUt(GTValues.VA[GTValues.IV])
|
||||
//endregion
|
||||
|
||||
// Universal compost
|
||||
const COMPOST_COLORS = ['browns', 'greens'];
|
||||
COMPOST_COLORS.forEach(color => {
|
||||
//#region Universal compost
|
||||
|
||||
//Greens
|
||||
// Lows via crafting with mortar
|
||||
event.shapeless(Item.of(`tfg:universal_compost_${color}`, 1), [
|
||||
Ingredient.of([`#tfc:compost_${color}_low`]).subtract([`tfg:universal_compost_${color}`]),
|
||||
'#forge:tools/mortars'
|
||||
])
|
||||
.id(`tfg:shapeless/universal_compost_${color}_low`)
|
||||
event.shaped(Item.of('tfg:universal_compost_greens', 1), [
|
||||
'AB'
|
||||
], {
|
||||
A: Ingredient.of(['#tfc:compost_greens_low']).subtract(['tfg:universal_compost_greens']),
|
||||
B: '#forge:tools/mortars'
|
||||
}).id('tfg:shaped/universal_compost_greens_from_low')
|
||||
|
||||
// Mediums via crafting with mortar
|
||||
event.shapeless(Item.of(`tfg:universal_compost_${color}`, 2), [
|
||||
`#tfc:compost_${color}`,
|
||||
'#forge:tools/mortars'
|
||||
])
|
||||
.id(`tfg:shapeless/universal_compost_${color}_medium`)
|
||||
event.shaped(Item.of('tfg:universal_compost_greens', 2), [
|
||||
'AB'
|
||||
], {
|
||||
A: '#tfc:compost_greens',
|
||||
B: '#forge:tools/mortars'
|
||||
}).id('tfg:shaped/universal_compost_greens_from_medium')
|
||||
|
||||
// Highs via crafting with mortar
|
||||
event.shapeless(Item.of(`tfg:universal_compost_${color}`, 4), [
|
||||
`#tfc:compost_${color}_high`,
|
||||
'#forge:tools/mortars'
|
||||
])
|
||||
.id(`tfg:shapeless/universal_compost_${color}_high`)
|
||||
event.shaped(Item.of('tfg:universal_compost_greens', 4), [
|
||||
'AB'
|
||||
], {
|
||||
A: '#tfc:compost_greens_high',
|
||||
B: '#forge:tools/mortars'
|
||||
}).id('tfg:shaped/universal_compost_greens_from_high')
|
||||
|
||||
// Filters
|
||||
const greens_low = Ingredient.of('#tfc:compost_greens_low')
|
||||
const browns_low = Ingredient.of('#tfc:compost_browns_low').itemIds
|
||||
const greens_medium = Ingredient.of('#tfc:compost_greens')
|
||||
const browns_medium = Ingredient.of('#tfc:compost_browns').itemIds
|
||||
const greens_high = Ingredient.of('#tfc:compost_greens_high')
|
||||
const browns_high = Ingredient.of('#tfc:compost_browns_high').itemIds
|
||||
|
||||
let low_filtered = greens_low
|
||||
let medium_filtered = greens_medium
|
||||
let high_filtered = greens_high
|
||||
|
||||
browns_low.forEach(item => {
|
||||
low_filtered = low_filtered.subtract(item)
|
||||
low_filtered = low_filtered.subtract('tfg:universal_compost_greens')
|
||||
})
|
||||
browns_medium.forEach(item => {
|
||||
medium_filtered = medium_filtered.subtract(item)
|
||||
})
|
||||
browns_high.forEach(item => {
|
||||
high_filtered = high_filtered.subtract(item)
|
||||
})
|
||||
|
||||
// Lows via forge hammer
|
||||
event.recipes.gtceu.forge_hammer(`tfg:universal_compost_${color}_low`)
|
||||
.itemInputs(Ingredient.of(`#tfc:compost_${color}_low`).subtract(`tfg:universal_compost_${color}`))
|
||||
.itemOutputs(`tfg:universal_compost_${color}`)
|
||||
event.recipes.gtceu.forge_hammer('tfg:universal_compost_greens_low')
|
||||
.itemInputs(low_filtered)
|
||||
.itemOutputs('tfg:universal_compost_greens')
|
||||
.duration(20)
|
||||
.EUt(8)
|
||||
|
||||
// Mediums via forge hammer
|
||||
event.recipes.gtceu.forge_hammer(`tfg:universal_compost_${color}_medium`)
|
||||
.itemInputs(`#tfc:compost_${color}`)
|
||||
.itemOutputs(Item.of(`tfg:universal_compost_${color}`, 2))
|
||||
event.recipes.gtceu.forge_hammer('tfg:universal_compost_greens_medium')
|
||||
.itemInputs(medium_filtered)
|
||||
.itemOutputs(Item.of('tfg:universal_compost_greens', 2))
|
||||
.duration(20)
|
||||
.EUt(8)
|
||||
|
||||
// Highs via forge hammer
|
||||
event.recipes.gtceu.forge_hammer(`tfg:universal_compost_${color}_high`)
|
||||
.itemInputs(`#tfc:compost_${color}_high`)
|
||||
.itemOutputs(Item.of(`tfg:universal_compost_${color}`, 4))
|
||||
event.recipes.gtceu.forge_hammer('tfg:universal_compost_greens_high')
|
||||
.itemInputs(high_filtered)
|
||||
.itemOutputs(Item.of('tfg:universal_compost_greens', 4))
|
||||
.duration(20)
|
||||
.EUt(8)
|
||||
})
|
||||
|
||||
//Browns
|
||||
// Lows via crafting with mortar
|
||||
event.shaped(Item.of('tfg:universal_compost_browns', 1), [
|
||||
'BA'
|
||||
], {
|
||||
A: Ingredient.of(['#tfc:compost_browns_low']).subtract(['tfg:universal_compost_browns']),
|
||||
B: '#forge:tools/mortars'
|
||||
}).id('tfg:shaped/universal_compost_browns_from_low')
|
||||
|
||||
// Mediums via crafting with mortar
|
||||
event.shaped(Item.of('tfg:universal_compost_browns', 2), [
|
||||
'BA'
|
||||
], {
|
||||
A: '#tfc:compost_browns',
|
||||
B: '#forge:tools/mortars'
|
||||
}).id('tfg:shaped/universal_compost_browns_from_medium')
|
||||
|
||||
// Highs via crafting with mortar
|
||||
event.shaped(Item.of('tfg:universal_compost_browns', 4), [
|
||||
'BA'
|
||||
], {
|
||||
A: '#tfc:compost_browns_high',
|
||||
B: '#forge:tools/mortars'
|
||||
}).id('tfg:shaped/universal_compost_browns_from_high')
|
||||
|
||||
// Lows via forge hammer
|
||||
event.recipes.gtceu.forge_hammer('tfg:universal_compost_browns_low')
|
||||
.itemInputs('#tfc:compost_browns_low')
|
||||
.itemOutputs('tfg:universal_compost_browns')
|
||||
.duration(20)
|
||||
.EUt(8)
|
||||
|
||||
// Mediums via forge hammer
|
||||
event.recipes.gtceu.forge_hammer('tfg:universal_compost_browns_medium')
|
||||
.itemInputs('#tfc:compost_browns')
|
||||
.itemOutputs(Item.of('tfg:universal_compost_browns', 2))
|
||||
.duration(20)
|
||||
.EUt(8)
|
||||
|
||||
// Highs via forge hammer
|
||||
event.recipes.gtceu.forge_hammer('tfg:universal_compost_browns_high')
|
||||
.itemInputs('#tfc:compost_browns_high')
|
||||
.itemOutputs(Item.of('tfg:universal_compost_browns', 4))
|
||||
.duration(20)
|
||||
.EUt(8)
|
||||
|
||||
//#endregion
|
||||
|
||||
// Etching Tip
|
||||
event.recipes.tfc.damage_inputs_shapeless_crafting(event.recipes.minecraft.crafting_shapeless('tfg:etching_diamond_tip',[
|
||||
|
|
|
|||
|
|
@ -95,6 +95,53 @@ function registerTFGSpaceRecipes(event) {
|
|||
.addDataString("fluidA", "minecraft:lava")
|
||||
.outputFluids(Fluid.of("minecraft:lava", 1000))
|
||||
|
||||
event.recipes.gtceu.aqueous_accumulator('water_moon')
|
||||
.circuit(aaCircuit++)
|
||||
.dimension('ad_astra:moon')
|
||||
.duration(20*5)
|
||||
.EUt(GTValues.VHA[GTValues.MV])
|
||||
.addDataString("fluidA", "minecraft:water")
|
||||
.outputFluids(Fluid.of("minecraft:water", 1000))
|
||||
|
||||
event.recipes.gtceu.aqueous_accumulator('sea_water_moon')
|
||||
.circuit(aaCircuit++)
|
||||
.dimension('ad_astra:moon')
|
||||
.duration(20*5)
|
||||
.EUt(GTValues.VA[GTValues.MV])
|
||||
.addDataString("fluidA", "tfc:salt_water")
|
||||
.outputFluids(Fluid.of("tfc:salt_water", 1000))
|
||||
|
||||
event.recipes.gtceu.aqueous_accumulator('water_orbit')
|
||||
.circuit(aaCircuit++)
|
||||
.dimension('ad_astra:earth_orbit')
|
||||
.dimension('ad_astra:moon_orbit')
|
||||
.dimension('ad_astra:mars_orbit')
|
||||
.dimension('ad_astra:venus_orbit')
|
||||
.dimension('ad_astra:mercury_orbit')
|
||||
.duration(20*5)
|
||||
.EUt(GTValues.VHA[GTValues.MV])
|
||||
.addDataString("fluidA", "minecraft:water")
|
||||
.outputFluids(Fluid.of("minecraft:water", 1000))
|
||||
|
||||
event.recipes.gtceu.aqueous_accumulator('sea_water_orbit')
|
||||
.circuit(aaCircuit)
|
||||
.dimension('ad_astra:earth_orbit')
|
||||
.dimension('ad_astra:moon_orbit')
|
||||
.dimension('ad_astra:mars_orbit')
|
||||
.dimension('ad_astra:venus_orbit')
|
||||
.dimension('ad_astra:mercury_orbit')
|
||||
.duration(20*5)
|
||||
.EUt(GTValues.VA[GTValues.MV])
|
||||
.addDataString("fluidA", "tfc:salt_water")
|
||||
.outputFluids(Fluid.of("tfc:salt_water", 1000))
|
||||
|
||||
event.recipes.gtceu.aqueous_accumulator('semiheavy_water_mars')
|
||||
.dimension('ad_astra:mars')
|
||||
.duration(20)
|
||||
.EUt(GTValues.VHA[GTValues.ULV])
|
||||
.addDataString("fluidA", "tfg:semiheavy_ammoniacal_water")
|
||||
.outputFluids(Fluid.of("tfg:semiheavy_ammoniacal_water", 1000))
|
||||
|
||||
// Plants - Can't use the default builder here because fertiliser is much harder to get on the moon,
|
||||
// and we're using helium-3 as the fertiliser
|
||||
|
||||
|
|
@ -214,4 +261,84 @@ function registerTFGSpaceRecipes(event) {
|
|||
.duration(300)
|
||||
.EUt(GTValues.VA[GTValues.EV])
|
||||
.cleanroom(CleanroomType.CLEANROOM)
|
||||
|
||||
// Railgun stuff
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:railgun_ammo_basic')
|
||||
.itemInputs('#forge:double_plates/steel', '2x #forge:rods/magnetic_iron', '2x #forge:fine_wires/annealed_copper')
|
||||
.inputFluids('gtceu:rocket_fuel 250')
|
||||
.itemOutputs('tfg:railgun_ammo_shell')
|
||||
.duration(20 * 10)
|
||||
.EUt(GTValues.VA[GTValues.MV])
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:railgun_ammo_advanced')
|
||||
.itemInputs('#forge:double_plates/titanium', '2x #forge:rods/magnetic_steel', '2x #forge:fine_wires/gold')
|
||||
.inputFluids('gtceu:rocket_fuel 250')
|
||||
.itemOutputs('4x tfg:railgun_ammo_shell')
|
||||
.duration(20 * 10)
|
||||
.EUt(GTValues.VA[GTValues.MV])
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:railgun_ammo_best')
|
||||
.itemInputs('#forge:double_plates/tungsten', '2x #forge:rods/magnetic_neodymium', '2x #forge:fine_wires/aluminium')
|
||||
.inputFluids('gtceu:rocket_fuel 250')
|
||||
.itemOutputs('8x tfg:railgun_ammo_shell')
|
||||
.duration(20 * 10)
|
||||
.EUt(GTValues.VA[GTValues.MV])
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:railgun_ammo_moon')
|
||||
.itemInputs('#forge:double_plates/steel', '2x ae2:charged_certus_quartz_crystal', '2x ae2:quartz_fiber')
|
||||
.inputFluids('gtceu:rocket_fuel 250')
|
||||
.itemOutputs('4x tfg:railgun_ammo_shell')
|
||||
.dimension('ad_astra:moon')
|
||||
.duration(20 * 10)
|
||||
.EUt(GTValues.VA[GTValues.MV])
|
||||
|
||||
event.shaped('tfg:railgun_ammo_loader', [
|
||||
'RMR',
|
||||
'MBM',
|
||||
'CCC'
|
||||
], {
|
||||
B: 'gtceu:mv_input_bus',
|
||||
R: 'gtceu:mv_robot_arm',
|
||||
M: 'gtceu:mv_electric_motor',
|
||||
C: '#forge:single_cables/annealed_copper'
|
||||
}).id('tfg:shaped/railgun_ammo_loader')
|
||||
|
||||
event.shaped('tfg:interplanetary_logistics_monitor', [
|
||||
'CDC',
|
||||
'SHE',
|
||||
'WCW'
|
||||
], {
|
||||
C: '#gtceu:circuits/hv',
|
||||
D: 'gtceu:computer_monitor_cover',
|
||||
S: 'gtceu:hv_sensor',
|
||||
H: 'gtceu:hv_machine_hull',
|
||||
E: 'gtceu:hv_emitter',
|
||||
W: '#forge:single_cables/silver'
|
||||
}).id('tfg:shaped/interplanetary_logistics_monitor')
|
||||
|
||||
event.shaped('tfg:interplanetary_item_launcher', [
|
||||
'NSN',
|
||||
'CHC',
|
||||
'NEN'
|
||||
], {
|
||||
C: '#gtceu:circuits/iv',
|
||||
S: 'gtceu:hv_sensor',
|
||||
E: 'gtceu:hv_emitter',
|
||||
H: 'gtceu:ev_machine_hull',
|
||||
N: '#forge:plates/hsla_steel'
|
||||
}).id('tfg:shaped/interplanetary_item_launcher')
|
||||
|
||||
event.shaped('tfg:interplanetary_item_receiver', [
|
||||
'CSC',
|
||||
'WHW',
|
||||
'CSC'
|
||||
], {
|
||||
C: '#gtceu:circuits/mv',
|
||||
S: 'gtceu:mv_sensor',
|
||||
W: '#forge:double_cables/copper',
|
||||
H: 'gtceu:mv_machine_hull'
|
||||
}).id('tfg:shaped/interplanetary_item_receiver')
|
||||
|
||||
// the railgun inputs and outputs are in tfg-core
|
||||
}
|
||||
|
|
@ -47,7 +47,7 @@ function registerTFGSupportRecipes(event) {
|
|||
}).id('tfg:shaped/light_concrete_support'))
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:gtceu/assembler/light_concrete_support')
|
||||
.circuit(4)
|
||||
.circuit(11)
|
||||
.inputFluids(Fluid.of('gtceu:concrete', 36))
|
||||
.itemOutputs('8x tfg:light_concrete_support')
|
||||
.itemInputs('3x gtceu:light_concrete')
|
||||
|
|
@ -66,7 +66,7 @@ function registerTFGSupportRecipes(event) {
|
|||
}).id('tfg:shaped/dark_concrete_support'))
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:gtceu/assembler/dark_concrete_support')
|
||||
.circuit(4)
|
||||
.circuit(11)
|
||||
.inputFluids(Fluid.of('gtceu:concrete', 36))
|
||||
.itemOutputs('8x tfg:dark_concrete_support')
|
||||
.itemInputs('3x gtceu:dark_concrete')
|
||||
|
|
@ -98,7 +98,7 @@ function registerTFGSupportRecipes(event) {
|
|||
}).id(`tfg:shaped/mossy/${stone}_support`))
|
||||
|
||||
event.recipes.gtceu.assembler(`tfg:gtceu/assembler/${stone}_support`)
|
||||
.circuit(4)
|
||||
.circuit(11)
|
||||
.inputFluids(Fluid.of('gtceu:concrete', 36))
|
||||
.itemOutputs(`8x tfg:${stone}_support`)
|
||||
.itemInputs(`3x tfc:rock/loose/${stone}`)
|
||||
|
|
@ -106,7 +106,7 @@ function registerTFGSupportRecipes(event) {
|
|||
.EUt(GTValues.VA[GTValues.ULV])
|
||||
|
||||
event.recipes.gtceu.assembler(`tfg:gtceu/assembler/mossy/${stone}_support`)
|
||||
.circuit(4)
|
||||
.circuit(11)
|
||||
.inputFluids(Fluid.of('gtceu:concrete', 36))
|
||||
.itemOutputs(`8x tfg:${stone}_support`)
|
||||
.itemInputs(`3x tfc:rock/mossy_loose/${stone}`)
|
||||
|
|
@ -126,7 +126,7 @@ function registerTFGSupportRecipes(event) {
|
|||
}).id('tfg:shaped/travertine_support'))
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:gtceu/assembler/travertine_support')
|
||||
.circuit(4)
|
||||
.circuit(11)
|
||||
.inputFluids(Fluid.of('gtceu:concrete', 36))
|
||||
.itemOutputs('8x tfg:travertine_support')
|
||||
.itemInputs('3x tfg:loose/dripstone')
|
||||
|
|
@ -145,7 +145,7 @@ function registerTFGSupportRecipes(event) {
|
|||
}).id('tfg:shaped/migmatite_support'))
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:gtceu/assembler/migmatite_support')
|
||||
.circuit(4)
|
||||
.circuit(11)
|
||||
.inputFluids(Fluid.of('gtceu:concrete', 36))
|
||||
.itemOutputs('8x tfg:migmatite_support')
|
||||
.itemInputs('3x tfg:loose/deepslate')
|
||||
|
|
@ -164,7 +164,7 @@ function registerTFGSupportRecipes(event) {
|
|||
}).id('tfg:shaped/pyroxenite_support'))
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:gtceu/assembler/pyroxenite_support')
|
||||
.circuit(4)
|
||||
.circuit(11)
|
||||
.inputFluids(Fluid.of('gtceu:concrete', 36))
|
||||
.itemOutputs('8x tfg:pyroxenite_support')
|
||||
.itemInputs('3x beneath:blackstone_pebble')
|
||||
|
|
@ -182,7 +182,7 @@ function registerTFGSupportRecipes(event) {
|
|||
}).id('tfg:shaped/rebar_support')
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:gtceu/assembler/rebar_support')
|
||||
.circuit(4)
|
||||
.circuit(11)
|
||||
.itemOutputs('8x tfg:rebar_support')
|
||||
.itemInputs(ChemicalHelper.get(TagPrefix.rod, GTMaterials.Steel, 2), ChemicalHelper.get(TagPrefix.wireFine, GTMaterials.Steel, 1))
|
||||
.duration(100)
|
||||
|
|
@ -199,7 +199,7 @@ function registerTFGSupportRecipes(event) {
|
|||
.id('tfg:anvil/steel_support')
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:gtceu/assembler/steel_support')
|
||||
.circuit(4)
|
||||
.circuit(11)
|
||||
.itemOutputs('4x tfg:steel_support')
|
||||
.itemInputs('2x #forge:double_ingots/steel')
|
||||
.duration(100)
|
||||
|
|
@ -229,4 +229,4 @@ function registerTFGSupportRecipes(event) {
|
|||
.duration(GTMaterials.Steel.getMass() * 2)
|
||||
.category(GTRecipeCategories.EXTRACTOR_RECYCLING)
|
||||
.EUt(GTValues.VA[GTValues.ULV])
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -191,9 +191,6 @@ const registerTFGItemTags = (event) => {
|
|||
event.add('tfg:any_iron_double_ingot', '#forge:double_ingots/iron')
|
||||
event.add('tfg:any_iron_double_ingot', '#forge:double_ingots/wrought_iron')
|
||||
|
||||
event.add('tfg:any_iron_plate', '#forge:double_plates/iron')
|
||||
event.add('tfg:any_iron_plate', '#forge:double_plates/wrought_iron')
|
||||
|
||||
event.add('tfg:any_bronze_frame', '#forge:frames/bronze')
|
||||
event.add('tfg:any_bronze_frame', '#forge:frames/bismuth_bronze')
|
||||
event.add('tfg:any_bronze_frame', '#forge:frames/black_bronze')
|
||||
|
|
@ -243,6 +240,34 @@ const registerTFGItemTags = (event) => {
|
|||
event.add('tfg:foods/usable_in_meal_bag', 'tfc:food/boiled_egg');
|
||||
//#endregion
|
||||
|
||||
//#region Blacklisted from the railgun
|
||||
event.add('tfg:cannot_launch_in_railgun', '#tfc:vessels')
|
||||
event.add('tfg:cannot_launch_in_railgun', '#tfc:large_vessels')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'ae2:item_storage_cell_1k')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'ae2:item_storage_cell_4k')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'ae2:item_storage_cell_16k')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'ae2:item_storage_cell_64k')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'ae2:item_storage_cell_256k')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'ae2:fluid_storage_cell_1k')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'ae2:fluid_storage_cell_4k')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'ae2:fluid_storage_cell_16k')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'ae2:fluid_storage_cell_64k')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'ae2:fluid_storage_cell_256k')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'ae2:spatial_storage_cell_2')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'ae2:spatial_storage_cell_16')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'ae2:spatial_storage_cell_128')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'megacells:item_storage_cell_1m')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'megacells:item_storage_cell_4m')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'megacells:item_storage_cell_16m')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'megacells:item_storage_cell_64m')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'megacells:fluid_storage_cell_1m')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'megacells:fluid_storage_cell_4m')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'megacells:fluid_storage_cell_16m')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'megacells:fluid_storage_cell_64m')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'create:minecart_contraption')
|
||||
event.add('tfg:cannot_launch_in_railgun', 'tfg:railgun_ammo_shell')
|
||||
//#endregion
|
||||
|
||||
// #region Space blocks
|
||||
event.add('tfg:moon_plants', 'tfg:lunar_roots')
|
||||
event.add('tfg:moon_plants', 'tfg:lunar_sprouts')
|
||||
|
|
@ -415,6 +440,11 @@ const registerTFGBlockTags = (event) => {
|
|||
event.add('tfg:harvester_harvestable', '#tfc:fruit_tree_leaves')
|
||||
event.add('tfg:harvester_harvestable', '#tfc:berry_bushes')
|
||||
event.add('tfg:harvester_harvestable', '#tfc:any_spreading_bush')
|
||||
event.add('tfg:harvester_harvestable', '#firmalife:grape_strings')
|
||||
event.add('tfg:harvester_harvestable', '#firmalife:grape_trellis_posts_plant')
|
||||
//added for QOL but doesnt harvest anything
|
||||
event.add('tfg:harvester_harvestable', 'firmalife:grape_fluff_red')
|
||||
event.add('tfg:harvester_harvestable', 'firmalife:grape_fluff_white')
|
||||
|
||||
event.add('minecraft:mineable/pickaxe', 'tfg:superconductor_coil_large')
|
||||
event.add('minecraft:mineable/pickaxe', 'tfg:superconductor_coil_small')
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue