* require black steel plates before the forge hammer, add some blue steel things post-deployer that require a colored steel anvil, start refractory clay dust * first draft of bakelite, new phenolic boards, new cupro coils * add another page to the medicine quest * cl * backup of lv quests * quest stuff and some recipe tweaks * tweak --------- Co-authored-by: Redeix <redeix.m@gmail.com>
216 lines
No EOL
10 KiB
JavaScript
216 lines
No EOL
10 KiB
JavaScript
"use strict";
|
|
|
|
function registerTFGClayRecipes(event) {
|
|
|
|
event.shapeless('tfc:crucible', ['tfc:crucible']).id('tfg:empty_crucible')
|
|
|
|
event.shaped('minecraft:clay', [
|
|
'AA',
|
|
'AA'
|
|
], {
|
|
A: 'minecraft:clay_ball'
|
|
}).id('tfg:shaped/clay_balls_to_block')
|
|
|
|
event.shapeless('4x minecraft:clay_ball', ['minecraft:clay'])
|
|
.id('tfg:shapeless/clay_block_to_balls')
|
|
|
|
const TFC_FURNACE_MOLD_RECIPE_COMPONENTS = /** @type {const} */ ([
|
|
{ input: "tfc:ceramic/unfired_ingot_mold", output: "tfc:ceramic/ingot_mold", name: "ingot_mold" },
|
|
{ input: "tfc:ceramic/unfired_pickaxe_head_mold", output: "tfc:ceramic/pickaxe_head_mold", name: "pickaxe_head_mold" },
|
|
{ input: "tfc:ceramic/unfired_propick_head_mold", output: "tfc:ceramic/propick_head_mold", name: "propick_head_mold" },
|
|
{ input: "tfc:ceramic/unfired_axe_head_mold", output: "tfc:ceramic/axe_head_mold", name: "axe_head_mold" },
|
|
{ input: "tfc:ceramic/unfired_shovel_head_mold", output: "tfc:ceramic/shovel_head_mold", name: "shovel_head_mold" },
|
|
{ input: "tfc:ceramic/unfired_hoe_head_mold", output: "tfc:ceramic/hoe_head_mold", name: "hoe_head_mold" },
|
|
{ input: "tfc:ceramic/unfired_chisel_head_mold", output: "tfc:ceramic/chisel_head_mold", name: "chisel_head_mold" },
|
|
{ input: "tfc:ceramic/unfired_hammer_head_mold", output: "tfc:ceramic/hammer_head_mold", name: "hammer_head_mold" },
|
|
{ input: "tfc:ceramic/unfired_saw_blade_mold", output: "tfc:ceramic/saw_blade_mold", name: "saw_blade_mold" },
|
|
{ input: "tfc:ceramic/unfired_javelin_head_mold", output: "tfc:ceramic/javelin_head_mold", name: "javelin_head_mold" },
|
|
{ input: "tfc:ceramic/unfired_sword_blade_mold", output: "tfc:ceramic/sword_blade_mold", name: "sword_blade_mold" },
|
|
{ input: "tfc:ceramic/unfired_mace_head_mold", output: "tfc:ceramic/mace_head_mold", name: "mace_head_mold" },
|
|
{ input: "tfc:ceramic/unfired_knife_blade_mold", output: "tfc:ceramic/knife_blade_mold", name: "knife_blade_mold" },
|
|
{ input: "tfc:ceramic/unfired_scythe_blade_mold", output: "tfc:ceramic/scythe_blade_mold", name: "scythe_blade_mold" },
|
|
{ input: "tfc:ceramic/unfired_bell_mold", output: "tfc:ceramic/bell_mold", name: "bell_mold" },
|
|
{ input: "tfc:ceramic/unfired_fire_ingot_mold", output: "tfc:ceramic/fire_ingot_mold", name: "fire_ingot_mold" },
|
|
{ input: "tfc:ceramic/unfired_brick", output: "minecraft:brick", name: "brick" },
|
|
{ input: "tfc:ceramic/unfired_crucible", output: "tfc:crucible", name: "crucible" },
|
|
{ input: "tfc:ceramic/unfired_flower_pot", output: "minecraft:flower_pot", name: "flower_pot" },
|
|
{ input: "tfc:ceramic/unfired_pan", output: "tfc:pan/empty", name: "pan" },
|
|
{ input: "tfc:ceramic/unfired_blowpipe", output: "tfc:ceramic_blowpipe", name: "ceramic_blowpipe" },
|
|
{ input: "tfc:ceramic/unfired_bowl", output: "tfc:ceramic/bowl", name: "bowl" },
|
|
{ input: "tfc:ceramic/unfired_fire_brick", output: "tfc:ceramic/fire_brick", name: "fire_brick" },
|
|
{ input: "tfc:ceramic/unfired_jug", output: "tfc:ceramic/jug", name: "jug" },
|
|
{ input: "tfc:ceramic/unfired_pot", output: "tfc:ceramic/pot", name: "pot" },
|
|
{ input: "tfc:ceramic/unfired_spindle_head", output: "tfc:ceramic/spindle_head", name: "spindle_head" },
|
|
{ input: "tfc:ceramic/unfired_vessel", output: "tfc:ceramic/vessel", name: "vessel" },
|
|
{ input: "tfc:ceramic/unfired_large_vessel", output: "tfc:ceramic/large_vessel", name: "large_vessel" },
|
|
{ input: "tfcchannelcasting:unfired_channel", output: "tfcchannelcasting:channel", name: "channel" },
|
|
{ input: "tfcchannelcasting:unfired_mold_table", output: "tfcchannelcasting:mold_table", name: "mold_table" },
|
|
{ input: "firmalife:oven_top", output: "firmalife:cured_oven_top", name: "oven_top" },
|
|
{ input: "firmalife:oven_chimney", output: "firmalife:cured_oven_chimney", name: "oven_chimney" },
|
|
{ input: "firmalife:oven_bottom", output: "firmalife:cured_oven_bottom", name: "oven_bottom" },
|
|
{ input: "firmalife:oven_hopper", output: "firmalife:cured_oven_hopper", name: "oven_hopper" },
|
|
{ input: "tfg:unfired_rod_mold", output: "tfg:rod_mold", name: "rod_mold" },
|
|
{ input: "tfg:unfired_small_gear_mold", output: "tfg:small_gear_mold", name: "small_gear_mold" },
|
|
{ input: "tfg:unfired_nugget_mold", output: "tfg:nugget_mold", name: "nugget_mold" }
|
|
]);
|
|
|
|
TFC_FURNACE_MOLD_RECIPE_COMPONENTS.forEach(element => {
|
|
event.smelting(element.output, element.input)
|
|
.id(`tfg:smelting/${element.name}`)
|
|
})
|
|
|
|
global.MINECRAFT_DYE_NAMES.forEach(dye => {
|
|
event.smelting(`tfc:ceramic/${dye}_glazed_vessel`, `tfc:ceramic/${dye}_unfired_vessel`)
|
|
.id(`tfg:smelting/${dye}_glazed_vessel`)
|
|
|
|
event.smelting(`tfc:ceramic/large_vessel/${dye}`, `tfc:ceramic/unfired_large_vessel/${dye}`)
|
|
.id(`tfg:smelting/${dye}_large_vessel`)
|
|
})
|
|
|
|
const TFC_CLAY_TO_UNFIRED_MOLD_RECIPE_COMPONENTS = /** @type {const} */ ([
|
|
{ input: "5x minecraft:clay_ball", output: "2x tfc:ceramic/unfired_flower_pot", name: "flower_pot" },
|
|
{ input: "5x minecraft:clay_ball", output: "4x tfc:ceramic/unfired_bowl", name: "bowl" },
|
|
{ input: "5x minecraft:clay_ball", output: "10x rnr:unfired_roof_tile", name: "roof_tile" },
|
|
{ input: "5x minecraft:clay_ball", output: "firmalife:oven_top", name: "oven_top" },
|
|
{ input: "5x minecraft:clay_ball", output: "firmalife:oven_chimney", name: "oven_chimney" },
|
|
{ input: "5x minecraft:clay_ball", output: "firmalife:oven_bottom", name: "oven_bottom" }
|
|
]);
|
|
|
|
for (let i = 0; i < TFC_CLAY_TO_UNFIRED_MOLD_RECIPE_COMPONENTS.length; i++) {
|
|
let element = TFC_CLAY_TO_UNFIRED_MOLD_RECIPE_COMPONENTS[i];
|
|
|
|
event.recipes.gtceu.assembler(`tfg:tfc/${element.name}`)
|
|
.itemInputs(element.input)
|
|
.circuit(i)
|
|
.itemOutputs(element.output)
|
|
.duration(450)
|
|
.EUt(2)
|
|
}
|
|
|
|
const TFC_FIRE_CLAY_TO_UNFIRED_MOLD_RECIPE_COMPONENTS = /** @type {const} */ ([
|
|
{ input: "5x tfc:fire_clay", output: "tfc:ceramic/unfired_crucible", name: "crucible" }
|
|
]);
|
|
|
|
for (let i = 0; i < TFC_FIRE_CLAY_TO_UNFIRED_MOLD_RECIPE_COMPONENTS.length; i++) {
|
|
let element = TFC_FIRE_CLAY_TO_UNFIRED_MOLD_RECIPE_COMPONENTS[i];
|
|
|
|
event.recipes.gtceu.assembler(`tfg:tfc/${element.name}`)
|
|
.itemInputs(element.input)
|
|
.circuit(i)
|
|
.itemOutputs(element.output)
|
|
.duration(450)
|
|
.EUt(2)
|
|
}
|
|
|
|
event.shapeless('3x tfc:ceramic/unfired_brick', ['4x minecraft:clay_ball', 'gtceu:brick_wooden_form', 'minecraft:clay_ball'])
|
|
.id('tfg:shapeless/unfired_brick_via_wooden_form')
|
|
|
|
event.shapeless('3x tfc:ceramic/unfired_fire_brick', ['4x tfc:fire_clay', 'gtceu:brick_wooden_form', 'tfc:fire_clay'])
|
|
.id('tfg:shapeless/unfired_fire_brick_via_wooden_form')
|
|
|
|
event.recipes.gtceu.extruder('tfg:unfired_clay_brick')
|
|
.itemInputs('minecraft:clay_ball')
|
|
.notConsumable('gtceu:ingot_extruder_mold')
|
|
.itemOutputs('tfc:ceramic/unfired_brick')
|
|
.duration(20)
|
|
.EUt(2)
|
|
|
|
event.recipes.gtceu.extruder('tfg:unfired_fire_clay_brick')
|
|
.itemInputs('tfc:fire_clay')
|
|
.notConsumable('gtceu:ingot_extruder_mold')
|
|
.itemOutputs('tfc:ceramic/unfired_fire_brick')
|
|
.duration(20)
|
|
.EUt(2)
|
|
|
|
// Kaolinite Clay - regular smelting recipes can't have multiple inputs
|
|
event.recipes.gtceu.alloy_smelter('tfg:kaolinite')
|
|
.itemInputs('tfc:kaolin_clay')
|
|
.circuit(1)
|
|
.chancedOutput('tfc:powder/kaolinite', 2000, 0)
|
|
.duration(100)
|
|
.EUt(16)
|
|
|
|
// Fire Clay
|
|
event.recipes.gtceu.alloy_smelter('tfg:cheaper_fire_clay')
|
|
.itemInputs('#forge:dusts/graphite', '4x tfc:kaolin_clay')
|
|
.itemOutputs('2x tfc:fire_clay')
|
|
.duration(600)
|
|
.EUt(GTValues.VA[GTValues.ULV])
|
|
|
|
event.recipes.gtceu.alloy_smelter('tfg:oops_i_smelted_all_my_kaolin')
|
|
.itemInputs('minecraft:clay_ball', 'tfc:powder/kaolinite')
|
|
.itemOutputs('tfc:kaolin_clay')
|
|
.duration(600)
|
|
.EUt(GTValues.VA[GTValues.ULV])
|
|
|
|
// Compressed Coke Clay
|
|
event.shaped('gtceu:compressed_coke_clay', [
|
|
'AAA',
|
|
'BCB',
|
|
'BBB'
|
|
], {
|
|
A: 'minecraft:clay_ball',
|
|
B: '#forge:sand',
|
|
C: 'gtceu:brick_wooden_form'
|
|
}).replaceIngredient('gtceu:brick_wooden_form', 'gtceu:brick_wooden_form').id('gtceu:shaped/compressed_coke_clay')
|
|
|
|
// Coke Oven Brick
|
|
event.recipes.tfc.heating('gtceu:compressed_coke_clay', 1399)
|
|
.resultItem('gtceu:coke_oven_brick')
|
|
.id('tfg:heating/coke_oven_bricks')
|
|
|
|
event.recipes.gtceu.alloy_smelter('gtceu:coke_oven_brick')
|
|
.itemInputs('3x #forge:sand', '2x minecraft:clay_ball')
|
|
.itemOutputs('gtceu:coke_oven_brick')
|
|
.duration(7.5 * 20)
|
|
.EUt(GTValues.VA[GTValues.ULV])
|
|
|
|
// Ceramic Recycling
|
|
event.recipes.gtceu.macerator('tfg:sherd_to_brick_dust')
|
|
.itemInputs('firmalife:pottery_sherd')
|
|
.itemOutputs('#forge:dusts/brick')
|
|
.category(GTRecipeCategories.MACERATOR_RECYCLING)
|
|
.duration(20)
|
|
.EUt(2)
|
|
|
|
event.recipes.gtceu.macerator('tfg:ceramic_molds')
|
|
.itemInputs('#tfc:fired_molds')
|
|
.itemOutputs('2x #forge:dusts/brick')
|
|
.category(GTRecipeCategories.MACERATOR_RECYCLING)
|
|
.duration(20)
|
|
.EUt(2)
|
|
|
|
event.recipes.gtceu.macerator('tfg:large_vessels')
|
|
.itemInputs('#tfc:fired_large_vessels')
|
|
.itemOutputs('5x #forge:dusts/brick')
|
|
.category(GTRecipeCategories.MACERATOR_RECYCLING)
|
|
.duration(20)
|
|
.EUt(2)
|
|
|
|
var refractoryClay = GTMaterials.get('tfg:refractory_clay');
|
|
TFGHelpers.registerMaterialInfo('tfc:blast_furnace', [GTMaterials.WroughtIron, 16, refractoryClay, 5])
|
|
TFGHelpers.registerMaterialInfo('tfc:fire_bricks', [refractoryClay, 5])
|
|
TFGHelpers.registerMaterialInfo('tfc:crucible', [refractoryClay, 5])
|
|
TFGHelpers.registerMaterialInfo('tfc:ceramic/fire_brick', [refractoryClay, 1])
|
|
TFGHelpers.registerMaterialInfo('tfcchannelcasting:channel', [refractoryClay, 5/4])
|
|
TFGHelpers.registerMaterialInfo('tfcchannelcasting:mold_table', [refractoryClay, 5])
|
|
TFGHelpers.registerMaterialInfo('tfc:ceramic/fire_ingot_mold', [refractoryClay, 5/2])
|
|
TFGHelpers.registerMaterialInfo('tfg:rod_mold', [refractoryClay, 5])
|
|
TFGHelpers.registerMaterialInfo('tfg:small_gear_mold', [refractoryClay, 5])
|
|
|
|
// Renewable clay
|
|
event.recipes.gtceu.rock_breaker("clay_duping")
|
|
.notConsumable('minecraft:clay')
|
|
.itemOutputs('minecraft:clay')
|
|
.adjacentFluids(["tfc:salt_water", "tfc:spring_water"])
|
|
.duration(50)
|
|
.EUt(GTValues.VA[GTValues.LV])
|
|
|
|
// heating
|
|
event.recipes.tfc.heating('tfg:unfired_rod_mold', 1399)
|
|
.resultItem('tfg:rod_mold')
|
|
event.recipes.tfc.heating('tfg:unfired_small_gear_mold', 1399)
|
|
.resultItem('tfg:small_gear_mold')
|
|
event.recipes.tfc.heating('tfg:unfired_nugget_mold', 1399)
|
|
.resultItem('tfg:nugget_mold')
|
|
} |