Merge pull request #739 from Nebby1999/main

Feature:  Papermaking Overhaul with Wood
This commit is contained in:
Dmitry 2025-01-26 00:00:21 +07:00 committed by GitHub
commit d8fa521bc9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
19 changed files with 551 additions and 18 deletions

View file

@ -3805,8 +3805,8 @@
item: "tfc:papyrus"
type: "item"
}]
x: 27.0d
y: 1.0d
x: 23.5d
y: -3.5d
}
{
dependencies: ["0D47455ABB97C81D"]
@ -3816,8 +3816,8 @@
item: "tfc:papyrus_strip"
type: "item"
}]
x: 24.0d
y: 1.0d
x: 23.5d
y: -1.0d
}
{
dependencies: [
@ -3831,13 +3831,16 @@
type: "item"
}]
x: 19.5d
y: 1.0d
y: -1.0d
}
{
dependencies: [
"147911B5CA3A7DD8"
"6F769ABFCA894E24"
"0F9BE65A65F9CF4D"
]
dependency_requirement: "one_completed"
description: ["You can either use 4 Papyrus Strips in a Loom, or Dry a Soaked Unrefined Paper in a Drying Mat"]
id: "7E8F9F6F35614B13"
tasks: [{
id: "2677C234ED0D56FF"
@ -3862,7 +3865,7 @@
type: "item"
}]
x: 21.0d
y: -0.5d
y: -3.5d
}
{
dependencies: ["2658E7679CD42ACD"]
@ -3872,7 +3875,7 @@
item: "minecraft:name_tag"
type: "item"
}]
x: 24.0d
x: 23.5d
y: 3.0d
}
{
@ -3890,7 +3893,7 @@
type: "item"
}]
x: 22.0d
y: -1.5d
y: -4.5d
}
{
dependencies: ["45D907EF7902A200"]
@ -4592,7 +4595,7 @@
match_nbt: false
type: "item"
}]
x: 27.0d
x: 26.5d
y: 3.0d
}
{
@ -4661,12 +4664,13 @@
type: "item"
}]
x: 21.0d
y: -1.5d
y: -4.5d
}
{
dependencies: [
"42FD437930CA74C7"
"593CC9165759B714"
"2658E7679CD42ACD"
]
dependency_requirement: "one_completed"
hide_dependency_lines: true
@ -4677,7 +4681,7 @@
type: "item"
}]
x: 22.0d
y: -0.5d
y: -3.5d
}
{
dependencies: [
@ -5243,7 +5247,7 @@
item: "tfc:treated_hide"
type: "item"
}]
x: 24.5d
x: 21.5d
y: -7.0d
}
{
@ -5255,9 +5259,113 @@
item: "tfc:groundcover/pumice"
type: "item"
}]
x: 27.0d
x: 21.5d
y: -8.5d
}
{
dependencies: ["07EACA7D4EB51EB8"]
description: ["Press the Thermochemically Treated Hardwood Pulp into a Sheet"]
id: "0F9BE65A65F9CF4D"
tasks: [{
id: "06E98C5646CEF615"
item: "tfg:soaked_unrefined_paper"
type: "item"
}]
x: 21.5d
y: 1.0d
}
{
dependencies: ["2B95877FDA27F418"]
description: ["Cook the Hardwood Pulp in Lye using a Vat or a Pot"]
id: "07EACA7D4EB51EB8"
tasks: [{
id: "2521D9D73CC0BCA5"
item: "gtceu:thermochemically_treated_hardwood_dust"
type: "item"
}]
x: 23.5d
y: 1.0d
}
{
dependencies: ["72B2543628818D03"]
description: ["Quern the Soaked Hardwood Strip to get Hardwood Pulp"]
id: "2B95877FDA27F418"
tasks: [{
id: "392BBB461D37F945"
item: "gtceu:hardwood_dust"
type: "item"
}]
x: 26.5d
y: 1.0d
}
{
dependencies: [
"6E24ECF6CEE950D1"
"5FD97BDCAA82B23A"
]
description: ["Submerge the Hardwood Strip in a Barrel full of Water to Soak it"]
id: "72B2543628818D03"
tasks: [{
id: "27EC545C4FD8B47E"
item: "tfg:soaked_hardwood_strip"
type: "item"
}]
x: 26.5d
y: -3.5d
}
{
dependencies: ["3579D6F2BC5DAABB"]
description: ["Put an Axe and a Stripped Hardwood Log in a Crafting Table to create the Strips"]
id: "5FD97BDCAA82B23A"
tasks: [{
id: "0324746AB4D87295"
item: "tfg:hardwood_strip"
type: "item"
}]
x: 26.5d
y: -7.0d
}
{
dependencies: ["0CC8FB9750DF4E27"]
description: ["Right click a placed Hardwood Log to Strip it"]
id: "3579D6F2BC5DAABB"
tasks: [{
id: "6831FBD90C8DD7A6"
item: {
Count: 1
id: "ftbfiltersystem:smart_filter"
tag: {
"ftbfiltersystem:filter": "ftbfiltersystem:item_tag(tfg:stripped_hardwood)"
}
}
title: "Any #tfg:stripped_hardwood"
type: "item"
}]
title: "Any Stripped Hardwood"
x: 26.5d
y: -8.5d
}
{
dependencies: ["76EF4D00586A8B74"]
description: ["Get any kind of Hardwood, check the Papermaking page for a list of valid wood types"]
hide_dependency_lines: true
id: "0CC8FB9750DF4E27"
tasks: [{
id: "5067BA8D80512DF4"
item: {
Count: 1
id: "ftbfiltersystem:smart_filter"
tag: {
"ftbfiltersystem:filter": "ftbfiltersystem:item_tag(tfg:hardwood)"
}
}
title: "Any #tfg:hardwood"
type: "item"
}]
title: "Get Hardwood"
x: 24.5d
y: -8.5d
}
]
title: "Primitive Age"
}

View file

@ -1,4 +1,16 @@
{
"item.gtceu.tiny_wood_dust": "Tiny Pile of Softwood Pulp",
"item.gtceu.small_wood_dust": "Small Pile of Softwood Pulp",
"item.gtceu.wood_dust": "Softwood Pulp",
"item.gtceu.tiny_hardwood_dust": "Tiny Pile of Hardwood Pulp",
"item.gtceu.small_hardwood_dust": "Small Pile of Hardwood Pulp",
"item.gtceu.hardwood_dust": "Hardwood Pulp",
"item.gtceu.tiny_thermochemically_treated_hardwood_dust": "Tiny Pile of Thermochemically Treated Hardwood Pulp",
"item.gtceu.small_thermochemically_treated_hardwood_dust": "Small Pile of Thermochemically Treated Hardwood Pulp",
"item.gtceu.thermochemically_treated_hardwood_dust": "Thermochemicallyy Treated Hardwood Pulp",
"gtceu.jei.bedrock_fluid.tfc_salt_water_deposit": "Sea Water Deposit",
"block.gtceu.greenhouse": "Electric Greenhouse",

View file

@ -0,0 +1,157 @@
{
"name": "Papermaking",
"category": "tfc:mechanics",
"icon": "tfc:unrefined_paper",
"pages": [
{
"type": "patchouli:text",
"text": "$(thing)Paper$() is either made from the processed stalk of the $(l:mechanics/crops#papyrus)Papyrus$() crop, from $(l:mechanics/papermaking#parchment)Animal Hides$(), or $(l:mechanics/papermaking/paperfromwood)from a lengthy process using specific types of Wood$(). Paper is useful for written materials like $(thing)Books$() and $(thing)Maps$()."
},
{
"type": "patchouli:crafting",
"recipe": "tfc:crafting/papyrus_strips",
"text": "Papyrus must first be cut into strips with a $(thing)Knife$()"
},
{
"type": "tfc:sealed_barrel_recipe",
"recipe": "tfc:barrel/soaked_papyrus_strip",
"text": "Then, papyrus strips are soaked in a $(l:mechanics/barrels)Barrel$() of $(thing)Water$()."
},
{
"type": "tfc:loom_recipe",
"recipe": "tfc:loom/unrefined_paper",
"text": "Then, soaked papyrus strips are woven together in a loom to make $(thing)Unrefined Paper$(). Finally, it must be placed on a log and $(l:mechanics/leather_making#scraping)Scraped$() to make $(thing)Paper$()."
},
{
"type": "patchouli:crafting",
"recipe": "tfc:crafting/vanilla/map",
"recipe2": "tfc:crafting/vanilla/name_tag"
},
{
"type": "patchouli:crafting",
"recipe": "minecraft:writable_book",
"recipe2": "minecraft:book"
},
{
"type": "patchouli:crafting",
"recipe": "tfc:crafting/wood/pine_lectern",
"recipe2": "tfc:crafting/wood/kapok_bookshelf"
},
{
"type": "patchouli:text",
"text": "Flip to the next page for information on papermaking via the parchment process."
},
{
"type": "patchouli:text",
"anchor": "parchment",
"text": "$(thing)Parchment Paper$() starts with a scraped hide. Review the $(l:mechanics/leather_making)leather making chapter$() to learn how to make it. Parchment requires treatment with a few different items. First, $(thing)Pumice$() is needed. Pumice is found on the ground near $(l:the_world/geology)Volcanoes$(), or from $(l:mechanics/sluices)Sluicing$() or $(l:mechanics/panning)Panning$() ore deposits with Andesite, Rhyolite, or Dacite in them.",
"title": "Parchment"
},
{
"type": "patchouli:multiblock",
"multiblock": {
"pattern": [
[
"X"
],
[
"0"
]
],
"mapping": {
"X": "tfc:groundcover/pumice"
}
},
"name": "Pumice",
"text": "A Pumice rock placed on the ground.",
"enable_visualize": false
},
{
"type": "patchouli:crafting",
"recipe": "tfc:crafting/large_treated_hide",
"text": "Crafting pumice, a hammer, and scraped hide gives sections of $(thing)Treated Hide$()."
},
{
"type": "patchouli:crafting",
"recipe": "tfc:crafting/parchment",
"text": "Treated hide, $(l:mechanics/glassworking#lime)lime powder$(), flour, and a fresh egg will complete the treatment process and yield usable paper."
},
{
"type": "patchouli:text",
"anchor": "paperfromwood",
"text": "$(thing)Creating Paper from Wood$() is an ancient process that requires processing of sturdy types of wood into sheets, which are broken down into a pulp, and then pressed, dried and scraped to make paper.$(br2)Note that softer types of wood are not suitable for making paper",
"title": "Paper from Wood"
},
{
"type": "patchouli:text",
"text": "First you need to find Hardwood:$(br2)Acacia$(br)Ash$(br)Aspen$(br)Birch$(br)Blackwood$(br)Chestnut$(br)Hickory$(br)Maple$(br)Oak$(br)Rosewood$(br)Sycamore"
},
{
"type": "patchouli:spotlight",
"title": "Stripped Hardwood",
"item": {"tag": "tfg:stripped_hardwood"},
"text": "The process begins by stripping the $(thing)Hardwood$()'s bark off to expose the internal fibers of the log, You can strip the log by placing it down and right clicking it with an axe"
},
{
"type": "patchouli:crafting",
"title": "Hardwood Strip",
"recipe": "tfg:crafting/strip_hardwood",
"text": "Next, the stripped wood is shaven with an axe to obtain $(item)Hardwood Strips$(). This can be done using an Axe or more sophisticated methods"
},
{
"type": "tfc:sealed_barrel_recipe",
"title": "Soaked Hardwood Strip",
"recipe": "tfg:barrel/soak_hardwood_strip",
"text": "Then, the individual strips are soaked in a $(l:mechanics/barrels)Barrel$() of $(thing)Water$(). This $(thing)debilitates the structural integrity$() of the $(thing)wood$() so it can be $(thing)broken down further$()"
},
{
"type": "tfc:quern_recipe",
"recipe": "tfg:quern/soaked_hardwood_strip",
"title": "Hardwood Pulp",
"text": "Afterwards, utilize the $(l:mechanics/quern)Quern$() to break down the soaked strips into $(item)Hardwood Pulp$()"
},
{
"type": "patchouli:crafting",
"recipe": "gtceu:shaped/small_dust_assembling_hardwood",
"title": "Piling up the Pulp",
"text": "While the quern gives you small piles of pulp, you'll want to combine them together in a $(thing)Workbench$(). More sophisticated methods of crushing the strips yield higher amounts of pulp"
},
{
"type": "patchouli:spotlight",
"item": "gtceu:thermochemically_treated_hardwood_dust",
"title": "Breaking down the Pulp",
"text": "Before the pulp can be processed further into paper, it needs to be broken down further by $(thing)Boiling it with Lye$() in a $(l:firmalife/oven_appliances#vat)Vat$() or a $(l:mechanics/pot)Pot$()."
},
{
"type": "patchouli:empty"
},
{
"type": "patchouli:spotlight",
"item": "tfg:soaked_unrefined_paper",
"title": "Pressing the Pulp",
"text": "After broken down by boiling it with Lye, the $(item)Thermochemically Treated Hardwood Pulp$() can be pressed down into a sheet of $(item)Soaked Unrefined Paper$()"
},
{
"type": "tfc:anvil_recipe",
"recipe": "tfg:anvil/soaked_unrefined_paper",
"text": "You can utilize an $(l:mechanics/anvils)Anvil$() to beat down the pulp into a sheet"
},
{
"type": "patchouli:spotlight",
"title": "Stomping in Barrel",
"item": {"tag": "firmalife:stomping_barrels"},
"text": "Alternatively, you can stomp the Thermochemically Treated Hardwood Pulp in a $(l:firmalife/wine)Stomping Barrel$()"
},
{
"type": "tfc:drying_recipe",
"recipe": "tfg:drying/unrefined_paper",
"text": "The final step is $(l:firmalife/drying)Drying$() the $(item)Soaked Unrefined Paper$() into $(item)Unrefined Paper$(), Which then can be Scraped into $(item)Paper$() as shown before."
},
{
"type": "patchouli:text",
"title": "Cutting Steps...?",
"text": "Advancing in the Tech-Tree will allow you to create paper from wood with less overall steps, check $(thing)EMI$() for the different approaches you can take for making paper with wood."
}
],
"read_by_default": true
}

View file

@ -1,6 +1,12 @@
{
"material.tfg.latex": "Latex",
"material.tfg.fluix": "Fluix",
"material.gtceu.thermochemically_treated_hardwood": "Thermochemically Treated Hardwood",
"material.gtceu.hardwood": "Hardwood",
"item.tfg.hardwood_strip": "Hardwood Strip",
"item.tfg.soaked_hardwood_strip": "Soaked Hardwood Strip",
"item.tfg.spade_head_extruder_mold": "Extruder Mold (Spade Head)",
"quests.naming-1": "t - Title",

Binary file not shown.

After

Width:  |  Height:  |  Size: 968 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

View file

@ -2,12 +2,11 @@
const registerGTCEURecipes = (event) => {
//#region Выход: Удобрение
// В обычном миксере
event.recipes.gtceu.mixer('fertilizer')
.itemInputs(
'#tfc:dirt',
'2x #forge:dusts/wood',
'2x #tfg:wood_dusts',
'4x #forge:sand'
)
.circuit(1)
@ -20,7 +19,7 @@ const registerGTCEURecipes = (event) => {
event.recipes.gtceu.create_mixer('fertilizer')
.itemInputs(
'#tfc:dirt',
'2x #forge:dusts/wood',
'2x #tfg:wood_dusts',
'4x #forge:sand'
)
.circuit(1)

View file

@ -26,6 +26,7 @@ ServerEvents.tags('item', event => {
registerSophisticatedBackpacksItemTags(event)
registerTFCAmbientalItemTags(event)
registerTFCItemTags(event)
registerTFGItemTags(event)
})
/**
@ -140,6 +141,7 @@ ServerEvents.recipes(event => {
registerSophisticatedBackpacksRecipes(event)
registerTfceaRecipes(event)
registerTFCRecipes(event)
registerTFGRecipes(event)
registerTFCGroomingStationRecipes(event)
registerToolBeltRecipes(event)
registerTreeTapRecipes(event)

View file

@ -2460,7 +2460,7 @@ const registerTFCRecipes = (event) => {
event.remove({ id: `tfc:crafting/wood/${wood}_water_wheel` })
// Бревна -> Пиломатериалы
generateCutterRecipe(event, `#tfc:${wood}_logs`, null, `16x tfc:wood/lumber/${wood}`, 400, 10, `${wood}_lumber_from_log`)
generateCutterRecipe(event, `#tfc:${wood}_logs`, 1, `16x tfc:wood/lumber/${wood}`, 400, 10, `${wood}_lumber_from_log`)
// Доски -> Пиломатериалы
generateCutterRecipe(event, `tfc:wood/planks/${wood}`, null, `4x tfc:wood/lumber/${wood}`, 400, 10, `${wood}_lumber_from_planks`)
@ -3598,6 +3598,15 @@ const registerTFCRecipes = (event) => {
.duration(20)
.EUt(7)
}
//#endregion
//More accesible solar drier
event.replaceInput({id: 'firmalife:crafting/solar_drier'}, 'gtceu:stainless_steel_rod', 'gtceu:silver_rod')
//Wood ash
event.recipes.create.splashing([Item.of('tfc:powder/wood_ash').withChance(0.25), Item.of('minecraft:stick').withChance(0.25)], 'tfc:torch')
.id('tfg:splashing/wash_torch')
//Lye in mixer
generateMixerRecipe(event, 'tfc:powder/wood_ash', Fluid.of('minecraft:water', 200), [], null, Fluid.of('tfc:lye', 200), 100, 2, 64, 'lye_in_mixer')
}

View file

@ -86,6 +86,20 @@ const registerTFCItemTags = (event) => {
event.add('tfg:bladed_axles', `tfc:wood/bladed_axle/${woodType}`)
})
//Hardwood Tags
global.TFC_HARDWOOD_TYPES.forEach(woodType => {
event.add('tfg:hardwood', `#tfc:${woodType}_logs`)
event.add('tfg:stripped_hardwood', `tfc:wood/stripped_log/${woodType}`)
event.add('tfg:stripped_hardwood', `tfc:wood/stripped_wood/${woodType}`)
});
//Softwood Tags
global.TFC_SOFTWOOD_TYPES.forEach(woodType =>{
event.add('tfg:softwood', `#tfc:${woodType}_logs`)
event.add('tfg:stripped_softwood', `tfc:wood/stripped_log/${woodType}`)
event.add('tfg:stripped_softwood', `tfc:wood/stripped_wood/${woodType}`)
})
// Теги для сосудов по цветам
global.MINECRAFT_DYE_NAMES.forEach(dye => {
event.add('tfg:colorized_unfired_vessels', `tfc:ceramic/${dye}_unfired_vessel`)

View file

@ -0,0 +1,155 @@
const registerTFGRecipes = (event) =>
{
var generateVatRecipe = (id, inputItem, fluid, fluidAmount, output) =>
{
event.custom({
"type": "firmalife:vat",
"input_item": {
"ingredient": {
"item": inputItem
}
},
"input_fluid": {
"ingredient": fluid,
"amount": fluidAmount
},
"output_item": {
"item": output
}
}).id(id)
}
var generatePotRecipe = (id, maxAmountOfInputItems, inputItem, inputFluid, inputFluidAmount, outputItem, ticks, temperature) =>
{
for(let i = 0; i < maxAmountOfInputItems; i++)
{
var iPlusOne = i + 1
let inputsArray = new Array(iPlusOne)
for(let j = 0; j < iPlusOne; j++)
{
inputsArray[j] = inputItem
}
event.recipes.tfc.pot(inputsArray, Fluid.of(inputFluid, inputFluidAmount * iPlusOne), ticks, temperature)
.itemOutput(`${iPlusOne}x ${outputItem}`)
.id(`tfg:pot/${iPlusOne}x_${id}`)
}
}
//remove chemical bath recipe
event.remove({id: 'gtceu:chemical_bath/paper_from_wood_dust'})
event.remove({id: 'gtceu:chemical_bath/paper_from_wood_dust_distilled'})
//Lathe - Replace regular logs tag with softwood tag
event.replaceInput({id: 'gtceu:lathe/lathe_logs'}, '#minecraft:logs', '#tfg:softwood')
//Create identical lathe recipe for hardwood
event.recipes.gtceu.lathe('lathe_hardwood')
.itemInputs('#tfg:hardwood')
.itemOutputs('4x gtceu:long_wood_rod', '2x gtceu:hardwood_dust')
.duration(160)
.EUt(7)
//Replace macerate logs into macerate softwood logs
event.replaceInput({id: 'gtceu:macerator/macerate_logs'}, '#minecraft:logs', '#tfg:softwood')
//Create identical macerator recipe for hardwood
event.recipes.gtceu.macerator('macerate_hardwood')
.itemInputs('#tfg:hardwood')
.itemOutputs('6x gtceu:hardwood_dust')
.chancedOutput('gtceu:hardwood_dust', 8000, 680)
.duration(70)
.EUt(2)
//Replace any recipe that outputs wood dust to use hardwood dust if it's ID string contains the name of one of the hardwood types.
//This absolutely fuckin sucks but it works
event.forEachRecipe({output: 'gtceu:wood_dust'}, r =>{
global.TFC_HARDWOOD_TYPES.forEach(hardwoodType =>
{
if(r.id.toString().includes(hardwoodType))
{
r.replaceOutput('gtceu:wood_dust', 'gtceu:hardwood_dust')
r.replaceOutput('gtceu:small_wood_dust', 'gtceu:small_hardwood_dust')
r.replaceOutput('gtceu:tiny_wood_dust', 'gtceu_tiny_hardwood_dust')
return;
}
})
})
//Replace any input that uses softwood dust to use our custom tag (we cant add it to the forge tag because it will literally fuck everything up by making softwood pulp obtainable using hardwood pulp)
event.replaceInput([
{not:{output: 'gtceu:small_wood_dust'}},
{not:{output: 'gtceu:tiny_wood_dust'}}
], 'gtceu:wood_dust', '#tfg:wood_dusts')
//Craft hardwood strips
event.recipes.tfc.damage_inputs_shapeless_crafting(event.shapeless('4x tfg:hardwood_strip', ['#minecraft:axes', '#tfg:stripped_hardwood']))
.id('tfg:crafting/strip_hardwood')
generateCutterRecipe(event, `#tfg:hardwood`, 2, `8x tfg:hardwood_strip`, 200, 6, 'cutter/strip_hardwood')
//Soak hardwood strips
event.recipes.tfc.barrel_sealed('12000')
.inputs('tfg:hardwood_strip', TFC.fluidStackIngredient('#tfc:water', 100))
.outputItem('tfg:soaked_hardwood_strip')
.id('tfg:barrel/soak_hardwood_strip')
//Create Hardwood Dust using Quern and Millstone/Crushing Wheels
event.recipes.createMilling(['3x gtceu:small_hardwood_dust', Item.of('gtceu:small_hardwood_dust').withChance(0.5)], 'tfg:soaked_hardwood_strip')
.processingTime(100)
.id('tfg:mill/mill_soaked_hardwood_strip')
event.recipes.gtceu.macerator('tfg:macerator/macerate_hardwood_strips')
.itemInputs('#tfg:hardwood_strips')
.itemOutputs('gtceu:hardwood_dust')
.duration(50)
.EUt(2)
event.recipes.tfc.quern('2x gtceu:small_hardwood_dust', 'tfg:soaked_hardwood_strip')
.id('tfg:quern/soaked_hardwood_strip')
//Cook hardwood dust in lye
generateVatRecipe('tfg:vat/thermochemically_treat_hardwood_dust', 'gtceu:hardwood_dust', 'tfc:lye', 300, 'gtceu:thermochemically_treated_hardwood_dust')
generateVatRecipe('tfg:vat/thermochemically_treat_small_hardwood_dust', 'gtceu:small_hardwood_dust', 'tfc:lye', 75, 'gtceu:small_thermochemically_treated_hardwood_dust')
generateVatRecipe('tfg:vat/thermochemically_treat_tiny_hardwood_dust', 'gtceu:tiny_hardwood_dust', 'tfc:lye', 33, 'gtceu:tiny_thermochemically_treated_hardwood_dust')
generatePotRecipe('thermochemically_treat_hardwood_dust', 3, 'gtceu:hardwood_dust', 'tfc:lye', 300, 'gtceu:thermochemically_treated_hardwood_dust', 600, 300)
generatePotRecipe('thermochemically_treat_small_hardwood_dust', 5, 'gtceu:small_hardwood_dust', 'tfc:lye', 75, 'gtceu:small_thermochemically_treated_hardwood_dust', 600, 300)
generatePotRecipe('thermochemically_treat_tiny_hardwood_dust', 5, 'gtceu:tiny_hardwood_dust', 'tfc:lye', 33, 'gtceu:tiny_thermochemically_treated_hardwood_dust', 600, 300)
generateMixerRecipe(event, 'gtceu:hardwood_dust', Fluid.of('tfc:lye', 150), 'gtceu:thermochemically_treated_hardwood_dust', null, [], 150, 4, 64, 'tfg:mixer/mix_hardwood_dust_with_lye')
generateMixerRecipe(event, 'gtceu:small_hardwood_dust', Fluid.of('tfc:lye', 37), 'gtceu:small_thermochemically_treated_hardwood_dust', null, [], 100, 3, 64, 'tfg:mixer/mix_small_hardwood_dust_with_lye')
generateMixerRecipe(event, 'gtceu:tiny_hardwood_dust', Fluid.of('tfc:lye', 16), 'gtceu:tiny_thermochemically_treated_hardwood_dust', null, [], 50, 2, 64, 'tfg:mixer/mix_tiny_hardwood_dust_with_lye')
//Beat thermochemically treated hardwood dust into soaked unrefined paper
event.recipes.tfc.anvil('tfg:soaked_unrefined_paper', 'gtceu:thermochemically_treated_hardwood_dust', ['hit_last', 'hit_last', 'hit_last'])
.id('tfg:anvil/soaked_unrefined_paper')
event.recipes.createPressing(Item.of('tfg:soaked_unrefined_paper').withChance(0.8), 'gtceu:thermochemically_treated_hardwood_dust')
.id('tfg:pressing/soaked_unrefined_paper')
event.custom({
type: "firmalife:stomping",
ingredient: {
item: "gtceu:thermochemically_treated_hardwood_dust"
},
result:{
item: 'tfg:soaked_unrefined_paper'
},
input_texture: 'tfg:blocks/thermochemically_treated_hardwood_dust',
output_texture: 'tfg:blocks/soaked_unrefined_paper',
sound: 'minecraft:entity.slime.squish'
}).id('tfg:stomping/soaked_unrefined_paper')
//Dry the soaked unrefined paper
event.recipes.firmalife.drying('tfc:unrefined_paper', 'tfg:soaked_unrefined_paper')
.id('tfg:drying/unrefined_paper')
//alternatively, just put the thermochemically treated hardwood dust inside a forge hamemr
event.recipes.gtceu.forge_hammer('tfg:forge_hammer/paper_from_thermochemically_treated_hardwood_dust')
.itemInputs('gtceu:thermochemically_treated_hardwood_dust')
.itemOutputs('minecraft:paper')
.duration(20)
.EUt(4)
event.recipes.gtceu.forge_hammer('tfg:forge_hammer/paper_from_small_thermochemically_treated_hardwood_dust')
.itemInputs('4x gtceu:small_thermochemically_treated_hardwood_dust')
.itemOutputs('minecraft:paper')
.duration(30)
.EUt(4)
event.recipes.gtceu.forge_hammer('tfg:forge_hammer/paper_from_tiny_thermochemically_treated_hardwood_dust')
.itemInputs('9x gtceu:tiny_thermochemically_treated_hardwood_dust')
.itemOutputs('minecraft:paper')
.duration(40)
.EUt(4)
}

View file

@ -0,0 +1,12 @@
const registerTFGItemTags = (event) =>
{
event.add('tfg:hardwood_strips', 'tfg:hardwood_strip')
event.add('tfg:hardwood_strips', 'tfg:soaked_hardwood_strip')
//Adding any of these dusts to the forge dusts/wood tag will make it so you can craft softwood pulp using hardwood pulp. which is not ok.
event.add('tfg:wood_dusts', 'gtceu:hardwood_dust')
event.add('tfg:tiny_wood_dusts', 'gtceu:tiny_hardwood_dust')
event.add('tfg:small_wood_dusts', 'gtceu:small_hardwood_dust')
event.add('tfg:wood_dusts', 'gtceu:wood_dust')
event.add('tfg:tiny_wood_dusts', 'gtceu:tiny_wood_dust')
event.add('tfg:small_wood_dusts', 'gtceu:small_wood_dust')
}

View file

@ -5,6 +5,7 @@
*/
StartupEvents.registry('item', event => {
registerGTCEuItems(event)
registerTFGItems(event)
})
/**
@ -48,6 +49,11 @@ GTCEuStartupEvents.registry('gtceu:machine', event => {
registerGTCEuMachines(event)
})
GTCEuStartupEvents.registry('gtceu:material', event =>
{
registerTFGMaterials(event)
})
/**
* Событие регистрации информации о составе предмета.
*/

View file

@ -707,6 +707,32 @@ global.TFC_WOOD_TYPES = [
"willow"
];
global.TFC_HARDWOOD_TYPES = [
"acacia",
"ash",
"aspen",
"birch",
"blackwood",
"chestnut",
"hickory",
"maple",
"oak",
"rosewood",
"sycamore"
];
global.TFC_SOFTWOOD_TYPES = [
"douglas_fir",
"kapok",
"mangrove",
"palm",
"pine",
"sequoia",
"spruce",
"white_cedar",
"willow"
];
global.TFC_MUD_TYPES = [
'silt',
'loam',

View file

@ -0,0 +1,11 @@
const registerTFGItems = (event) =>
{
event.create('tfg:hardwood_strip')
.translationKey('item.tfg.hardwood_strip')
event.create('tfg:soaked_hardwood_strip')
.translationKey('item.tfg.soaked_hardwood_strip')
event.create('tfg:soaked_unrefined_paper')
.translationKey('item.tfg.soaked_unrefined_paper')
}

View file

@ -0,0 +1,16 @@
const registerTFGMaterials = (event) =>
{
event.create('hardwood')
.dust()
.flags(GTMaterialFlags.FLAMMABLE)
.iconSet(GTMaterialIconSet.FINE)
.color('0x7a5225')
.secondaryColor('0x7a5225')
event.create('thermochemically_treated_hardwood')
.dust()
.flags(GTMaterialFlags.FLAMMABLE)
.iconSet(GTMaterialIconSet.FINE)
.color('0x52482c')
.secondaryColor('0x52482c')
}