Flax (#1735)
* some flax stuff * linen stuff * flax line stuff * flax again * rapseed wild crop changes * flax worldgen * revert grooming station update * more flax stuff * trying to fix stuff one doesn't work * recipes and lang * Update CHANGELOG.md Signed-off-by: GameStar <56610486+BlueBoat29@users.noreply.github.com> * fixes --------- Signed-off-by: GameStar <56610486+BlueBoat29@users.noreply.github.com>
|
|
@ -10,9 +10,11 @@
|
|||
- Sewing Tables now use a knife instead of shears @BlueBoat29
|
||||
- Create Logistics Jars now hold 8000 mB each instead of just 1000 mB (#1707) @Ghoulcel
|
||||
- Added a way to keep your space suit with you on death, so you can more safely set your spawn on other planets (#1710) @BlueBoat29
|
||||
- Added Flax as a cold-weather alternative to jute and a plant-based option for light colored cloth @BlueBoat29
|
||||
### Bug fixes
|
||||
- Fixed tongs getting stuck in ovens, and now you can use them the same way you'd previously use a Peel @Pyritie
|
||||
- Allowed powders, gears, plates, double plates, springs, and small springs to be heated (#1727) @Redeix
|
||||
- Fixed rapeseed wild block model @BlueBoat29
|
||||
### Translation updates
|
||||
- Chinese (simplified) @jmecn & @CN059
|
||||
- Ukranian @MetEnBouldry
|
||||
|
|
|
|||
34
kubejs/assets/tfg/blockstates/flax.json
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
{
|
||||
"variants": {
|
||||
"age=0": {
|
||||
"model": "tfg:block/crop/flax_age_0"
|
||||
},
|
||||
"age=1": {
|
||||
"model": "tfg:block/crop/flax_age_1"
|
||||
},
|
||||
"age=2": {
|
||||
"model": "tfg:block/crop/flax_age_2"
|
||||
},
|
||||
"age=3": {
|
||||
"model": "tfg:block/crop/flax_age_3"
|
||||
},
|
||||
"age=4,part=bottom": {
|
||||
"model": "tfg:block/crop/flax_age_4_bottom"
|
||||
},
|
||||
"age=5,part=bottom": {
|
||||
"model": "tfg:block/crop/flax_age_5_bottom"
|
||||
},
|
||||
"age=6,part=bottom": {
|
||||
"model": "tfg:block/crop/flax_age_6_bottom"
|
||||
},
|
||||
"age=4,part=top": {
|
||||
"model": "tfg:block/crop/flax_age_4_top"
|
||||
},
|
||||
"age=5,part=top": {
|
||||
"model": "tfg:block/crop/flax_age_5_top"
|
||||
},
|
||||
"age=6,part=top": {
|
||||
"model": "tfg:block/crop/flax_age_6_top"
|
||||
}
|
||||
}
|
||||
}
|
||||
13
kubejs/assets/tfg/blockstates/flax_dead.json
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
"variants": {
|
||||
"mature=false": {
|
||||
"model": "tfg:block/crop/flax_dead_young"
|
||||
},
|
||||
"mature=true,part=top": {
|
||||
"model": "tfg:block/crop/flax_dead_top"
|
||||
},
|
||||
"mature=true,part=bottom": {
|
||||
"model": "tfg:block/crop/flax_dead_bottom"
|
||||
}
|
||||
}
|
||||
}
|
||||
16
kubejs/assets/tfg/blockstates/flax_wild.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"variants": {
|
||||
"part=top,mature=true": {
|
||||
"model": "tfg:block/crop/flax_wild_top"
|
||||
},
|
||||
"part=top,mature=false": {
|
||||
"model": "tfg:block/crop/flax_dead_top"
|
||||
},
|
||||
"part=bottom,mature=true": {
|
||||
"model": "tfg:block/crop/flax_wild_bottom"
|
||||
},
|
||||
"part=bottom,mature=false": {
|
||||
"model": "tfg:block/crop/flax_dead_bottom"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,13 +1,13 @@
|
|||
{
|
||||
"variants": {
|
||||
"part=top,mature=true": {
|
||||
"model": "tfg:block/crop/rapeseed_age_5_top"
|
||||
"model": "tfg:block/crop/rapeseed_wild_top"
|
||||
},
|
||||
"part=top,mature=false": {
|
||||
"model": "tfg:block/crop/rapeseed_dead_top"
|
||||
},
|
||||
"part=bottom,mature=true": {
|
||||
"model": "tfg:block/crop/rapeseed_age_5_bottom"
|
||||
"model": "tfg:block/crop/rapeseed_wild_bottom"
|
||||
},
|
||||
"part=bottom,mature=false": {
|
||||
"model": "tfg:block/crop/rapeseed_dead_bottom"
|
||||
|
|
|
|||
|
|
@ -293,6 +293,9 @@
|
|||
"block.tfg.rapeseed": "Canola",
|
||||
"block.tfg.rapeseed_wild": "Wild Canola",
|
||||
"block.tfg.rapeseed_dead": "Dead Canola",
|
||||
"block.tfg.flax": "Flax",
|
||||
"block.tfg.flax_wild": "Wild Flax",
|
||||
"block.tfg.flax_dead": "Dead Flax",
|
||||
"block.tfg.casings.machine_casing_iron_desh": "Desh Machine Casing",
|
||||
"block.tfg.casings.machine_casing_stainless_evaporation": "Stainless Evaporation Machine Casing",
|
||||
"block.tfg.casings.machine_casing_vacuum_engine_intake": "Vacuum Engine Intake Machine Casing",
|
||||
|
|
@ -622,6 +625,13 @@
|
|||
"item.tfg.electric_extendo_grip": "Electric Extendo Grip",
|
||||
"item.tfg.treated_chipboard_composite": "Treated Chipboard Composite",
|
||||
"item.tfg.high_density_treated_fiberboard": "Medium Density Treated Fiberboard",
|
||||
"item.tfg.flax_seeds": "Flax Seeds",
|
||||
"item.tfg.flax_product": "Flax Stems",
|
||||
"item.tfg.flax_line": "Flax Line Fibers",
|
||||
"item.tfg.flax_tow": "Flax Tow Fibers",
|
||||
"item.tfg.flax_waste": "Scraped Flax",
|
||||
"item.tfg.linen_thread": "Linen Thread",
|
||||
"item.tfg.linen_cloth": "Linen Cloth",
|
||||
"material.tfg.latex": "Latex",
|
||||
"material.tfg.vulcanized_latex": "Vulcanized Latex",
|
||||
"material.tfg.fluix": "Fluix",
|
||||
|
|
|
|||
1
kubejs/assets/tfg/models/block/crop/flax_age_0.json
Normal file
|
|
@ -0,0 +1 @@
|
|||
{"parent":"block/crop","textures":{"crop":"tfg:block/crop/flax_age_0"}}
|
||||
1
kubejs/assets/tfg/models/block/crop/flax_age_1.json
Normal file
|
|
@ -0,0 +1 @@
|
|||
{"parent":"block/crop","textures":{"crop":"tfg:block/crop/flax_age_1"}}
|
||||
1
kubejs/assets/tfg/models/block/crop/flax_age_2.json
Normal file
|
|
@ -0,0 +1 @@
|
|||
{"parent":"block/crop","textures":{"crop":"tfg:block/crop/flax_age_2"}}
|
||||
1
kubejs/assets/tfg/models/block/crop/flax_age_3.json
Normal file
|
|
@ -0,0 +1 @@
|
|||
{"parent":"block/crop","textures":{"crop":"tfg:block/crop/flax_age_3"}}
|
||||
|
|
@ -0,0 +1 @@
|
|||
{"parent":"block/crop","textures":{"crop":"tfg:block/crop/flax_age_4_bottom"}}
|
||||
1
kubejs/assets/tfg/models/block/crop/flax_age_4_top.json
Normal file
|
|
@ -0,0 +1 @@
|
|||
{"parent":"block/crop","textures":{"crop":"tfg:block/crop/flax_age_4_top"}}
|
||||
|
|
@ -0,0 +1 @@
|
|||
{"parent":"block/crop","textures":{"crop":"tfg:block/crop/flax_age_5_bottom"}}
|
||||
1
kubejs/assets/tfg/models/block/crop/flax_age_5_top.json
Normal file
|
|
@ -0,0 +1 @@
|
|||
{"parent":"block/crop","textures":{"crop":"tfg:block/crop/flax_age_5_top"}}
|
||||
|
|
@ -0,0 +1 @@
|
|||
{"parent":"block/crop","textures":{"crop":"tfg:block/crop/flax_age_6_bottom"}}
|
||||
1
kubejs/assets/tfg/models/block/crop/flax_age_6_top.json
Normal file
|
|
@ -0,0 +1 @@
|
|||
{"parent":"block/crop","textures":{"crop":"tfg:block/crop/flax_age_6_top"}}
|
||||
|
|
@ -0,0 +1 @@
|
|||
{"parent":"block/crop","textures":{"crop":"tfg:block/crop/flax_dead_bottom"}}
|
||||
1
kubejs/assets/tfg/models/block/crop/flax_dead_top.json
Normal file
|
|
@ -0,0 +1 @@
|
|||
{"parent":"block/crop","textures":{"crop":"tfg:block/crop/flax_dead_top"}}
|
||||
1
kubejs/assets/tfg/models/block/crop/flax_dead_young.json
Normal file
|
|
@ -0,0 +1 @@
|
|||
{"parent":"block/crop","textures":{"crop":"tfg:block/crop/flax_dead_young"}}
|
||||
6
kubejs/assets/tfg/models/block/crop/flax_wild.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "tfc:block/wild_crop/crop",
|
||||
"textures": {
|
||||
"crop": "tfg:block/crop/flax_age_5_bottom"
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "tfc:block/wild_crop/crop",
|
||||
"textures": {
|
||||
"crop": "tfg:block/crop/flax_age_5_bottom"
|
||||
}
|
||||
}
|
||||
6
kubejs/assets/tfg/models/block/crop/flax_wild_top.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "block/crop",
|
||||
"textures": {
|
||||
"crop": "tfg:block/crop/flax_age_5_top"
|
||||
}
|
||||
}
|
||||
|
|
@ -1 +1 @@
|
|||
{"parent":"block/crop","textures":{"crop":"tfg:block/crop/rapeseed_age_2"}}
|
||||
{"parent":"tfc:block/wild_crop/crop","textures":{"crop":"tfg:block/crop/rapeseed_age_2"}}
|
||||
|
|
@ -0,0 +1 @@
|
|||
{"parent":"tfc:block/wild_crop/crop","textures":{"crop":"tfg:block/crop/rapeseed_age_5_bottom"}}
|
||||
|
|
@ -0,0 +1 @@
|
|||
{"parent":"block/crop","textures":{"crop":"tfg:block/crop/rapeseed_age_5_top"}}
|
||||
6
kubejs/assets/tfg/models/item/flax_line.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"textures": {
|
||||
"layer0": "tfg:item/flax_line"
|
||||
}
|
||||
}
|
||||
6
kubejs/assets/tfg/models/item/flax_product.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"textures": {
|
||||
"layer0": "tfg:item/flax_product"
|
||||
}
|
||||
}
|
||||
6
kubejs/assets/tfg/models/item/flax_tow.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"textures": {
|
||||
"layer0": "tfg:item/flax_tow"
|
||||
}
|
||||
}
|
||||
6
kubejs/assets/tfg/models/item/flax_waste.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"textures": {
|
||||
"layer0": "tfg:item/flax_waste"
|
||||
}
|
||||
}
|
||||
3
kubejs/assets/tfg/models/item/flax_wild.json
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"parent": "tfg:block/crop/flax_wild"
|
||||
}
|
||||
6
kubejs/assets/tfg/models/item/linen_cloth.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "tfg:item/linen_cloth"
|
||||
}
|
||||
}
|
||||
6
kubejs/assets/tfg/models/item/linen_thread.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "tfg:item/linen_thread"
|
||||
}
|
||||
}
|
||||
6
kubejs/assets/tfg/models/item/washed_flax.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "minecraft:item/generated",
|
||||
"textures": {
|
||||
"layer0": "tfg:item/washed_flax"
|
||||
}
|
||||
}
|
||||
BIN
kubejs/assets/tfg/textures/block/crop/flax_age_0.png
Normal file
|
After Width: | Height: | Size: 651 B |
BIN
kubejs/assets/tfg/textures/block/crop/flax_age_1.png
Normal file
|
After Width: | Height: | Size: 725 B |
BIN
kubejs/assets/tfg/textures/block/crop/flax_age_2.png
Normal file
|
After Width: | Height: | Size: 851 B |
BIN
kubejs/assets/tfg/textures/block/crop/flax_age_3.png
Normal file
|
After Width: | Height: | Size: 963 B |
BIN
kubejs/assets/tfg/textures/block/crop/flax_age_4_bottom.png
Normal file
|
After Width: | Height: | Size: 1,004 B |
BIN
kubejs/assets/tfg/textures/block/crop/flax_age_4_top.png
Normal file
|
After Width: | Height: | Size: 651 B |
BIN
kubejs/assets/tfg/textures/block/crop/flax_age_5_bottom.png
Normal file
|
After Width: | Height: | Size: 1 KiB |
BIN
kubejs/assets/tfg/textures/block/crop/flax_age_5_top.png
Normal file
|
After Width: | Height: | Size: 824 B |
BIN
kubejs/assets/tfg/textures/block/crop/flax_age_6_bottom.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
kubejs/assets/tfg/textures/block/crop/flax_age_6_top.png
Normal file
|
After Width: | Height: | Size: 814 B |
BIN
kubejs/assets/tfg/textures/block/crop/flax_dead_bottom.png
Normal file
|
After Width: | Height: | Size: 1 KiB |
BIN
kubejs/assets/tfg/textures/block/crop/flax_dead_top.png
Normal file
|
After Width: | Height: | Size: 810 B |
BIN
kubejs/assets/tfg/textures/block/crop/flax_dead_young.png
Normal file
|
After Width: | Height: | Size: 865 B |
BIN
kubejs/assets/tfg/textures/item/flax_line.png
Normal file
|
After Width: | Height: | Size: 5.3 KiB |
BIN
kubejs/assets/tfg/textures/item/flax_product.png
Normal file
|
After Width: | Height: | Size: 878 B |
BIN
kubejs/assets/tfg/textures/item/flax_seed.png
Normal file
|
After Width: | Height: | Size: 617 B |
BIN
kubejs/assets/tfg/textures/item/flax_tow.png
Normal file
|
After Width: | Height: | Size: 875 B |
BIN
kubejs/assets/tfg/textures/item/flax_waste.png
Normal file
|
After Width: | Height: | Size: 857 B |
BIN
kubejs/assets/tfg/textures/item/linen_cloth.png
Normal file
|
After Width: | Height: | Size: 810 B |
BIN
kubejs/assets/tfg/textures/item/linen_thread.png
Normal file
|
After Width: | Height: | Size: 745 B |
BIN
kubejs/assets/tfg/textures/item/washed_flax.png
Normal file
|
After Width: | Height: | Size: 797 B |
|
|
@ -0,0 +1,40 @@
|
|||
{
|
||||
"type": "minecraft:random_patch",
|
||||
"config": {
|
||||
"feature": {
|
||||
"feature": {
|
||||
"type": "tfc:tall_wild_crop",
|
||||
"config": {
|
||||
"block": "tfg:flax_wild"
|
||||
}
|
||||
},
|
||||
"placement": [
|
||||
{
|
||||
"type": "minecraft:heightmap",
|
||||
"heightmap": "WORLD_SURFACE_WG"
|
||||
},
|
||||
{
|
||||
"type": "block_predicate_filter",
|
||||
"predicate": {
|
||||
"type": "tfc:replaceable"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "block_predicate_filter",
|
||||
"predicate": {
|
||||
"type": "would_survive",
|
||||
"state": {
|
||||
"Name": "tfg:flax_wild",
|
||||
"Properties": {
|
||||
"part": "bottom"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"tries": 20,
|
||||
"xz_spread": 16,
|
||||
"y_spread": 1
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
"feature": "tfg:earth/flax_patch",
|
||||
"placement": [
|
||||
{
|
||||
"type": "minecraft:rarity_filter",
|
||||
"chance": 55
|
||||
},
|
||||
{
|
||||
"type": "minecraft:in_square"
|
||||
},
|
||||
{
|
||||
"type": "tfc:climate",
|
||||
"min_temperature": -5,
|
||||
"max_temperature": 27,
|
||||
"min_rainfall": 175,
|
||||
"max_rainfall": 475,
|
||||
"max_forest": "sparse"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -104,6 +104,8 @@ const registerFirmaCivRecipes = (event) => {
|
|||
//#endregion
|
||||
|
||||
// #region More rope
|
||||
event.replaceInput({ output: 'firmaciv:rope_coil'}, 'tfc:jute_fiber', '#tfg:burlap_fiber')
|
||||
|
||||
event.shaped('firmaciv:rope_coil', [
|
||||
'A ',
|
||||
'AB',
|
||||
|
|
|
|||
|
|
@ -1171,6 +1171,8 @@ const registerGTCEURecipes = (event) => {
|
|||
|
||||
|
||||
//#region GT Facades
|
||||
event.remove({ id: 'gtceu:crafting/facade_cover'})
|
||||
|
||||
event.shapeless(Item.of('gtceu:facade_cover', 8, '{Facade: {Count:1b,id:"minecraft:stone"}}'), ['3x #forge:plates/iron', "#tfg:whitelisted/facades"])
|
||||
.modifyResult((craftingGrid, result) => {
|
||||
let blockID = craftingGrid.find(Ingredient.of("#tfg:whitelisted/facades")).id
|
||||
|
|
|
|||
|
|
@ -780,7 +780,7 @@ const registerMinecraftRecipes = (event) => {
|
|||
' BA',
|
||||
'A '
|
||||
], {
|
||||
A: 'tfc:jute_fiber',
|
||||
A: '#tfg:burlap_fiber',
|
||||
B: '#forge:rings'
|
||||
}).id('tfc:crafting/lead')
|
||||
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@ const registerSNSRecipes = (event) => {
|
|||
'BCB',
|
||||
'DBE'
|
||||
], {
|
||||
A: 'tfc:jute_fiber',
|
||||
A: '#tfg:burlap_fiber',
|
||||
B: 'sns:leather_strip',
|
||||
C: 'sns:unfinished_leather_sack',
|
||||
D: 'minecraft:name_tag',
|
||||
|
|
@ -68,7 +68,7 @@ const registerSNSRecipes = (event) => {
|
|||
)
|
||||
).id('sns:crafting/leather_sack')
|
||||
|
||||
event.recipes.tfc.damage_inputs_shaped_crafting(
|
||||
/*event.recipes.tfc.damage_inputs_shaped_crafting(
|
||||
event.shaped('sns:leather_sack', [
|
||||
' A ',
|
||||
'BCB',
|
||||
|
|
@ -81,7 +81,7 @@ const registerSNSRecipes = (event) => {
|
|||
E: 'tfc:bone_needle'
|
||||
}
|
||||
)
|
||||
).id('sns:crafting/leather_sack_coil')
|
||||
).id('sns:crafting/leather_sack_coil')*/
|
||||
|
||||
event.recipes.tfc.damage_inputs_shaped_crafting(
|
||||
event.shaped('sns:ore_sack', [
|
||||
|
|
@ -161,7 +161,7 @@ const registerSNSRecipes = (event) => {
|
|||
itemAsHead: 'gtceu:small_pipe_extruder_mold',
|
||||
results: [{ item: '2x sns:buckle' }],
|
||||
processingTime: 80 * global.VINTAGE_IMPROVEMENTS_DURATION_MULTIPLIER
|
||||
}).id('sns:vi/curving/buckle')
|
||||
}).id('sns:vi/curving/buckle2')
|
||||
|
||||
event.shaped('sns:pack_frame', [
|
||||
'AAA',
|
||||
|
|
@ -177,11 +177,11 @@ const registerSNSRecipes = (event) => {
|
|||
'BBB',
|
||||
'AAA'
|
||||
], {
|
||||
A: 'tfc:jute_fiber',
|
||||
A: '#tfg:burlap_fiber',
|
||||
B: '#forge:string'
|
||||
|
||||
}).id('sns:shaped/reinforced_fiber')
|
||||
|
||||
/*
|
||||
event.shaped('2x sns:reinforced_fiber', [
|
||||
' A ',
|
||||
'BBB',
|
||||
|
|
@ -191,10 +191,10 @@ const registerSNSRecipes = (event) => {
|
|||
B: '#forge:string',
|
||||
C: '#forge:tools/knives'
|
||||
|
||||
}).id('sns:shaped/reinforced_fiber_rope')
|
||||
}).id('sns:shaped/reinforced_fiber_rope')*/
|
||||
|
||||
event.recipes.gtceu.assembler('sns:reinforced_fiber')
|
||||
.itemInputs('2x tfc:jute_fiber', '#forge:string')
|
||||
.itemInputs('2x #tfg:burlap_fiber', '#forge:string')
|
||||
.itemOutputs('sns:reinforced_fiber')
|
||||
.duration(40)
|
||||
.EUt(GTValues.VA[GTValues.LV])
|
||||
|
|
@ -215,7 +215,6 @@ const registerSNSRecipes = (event) => {
|
|||
.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')
|
||||
|
|
|
|||
|
|
@ -332,6 +332,7 @@ const registerTFCItemTags = (event) => {
|
|||
})
|
||||
|
||||
event.add('tfc:any_knapping', '#tfc:pit_kiln_straw')
|
||||
event.add('tfg:burlap_fiber', 'tfc:jute_fiber')
|
||||
}
|
||||
|
||||
const registerTFCBlockTags = (event) => {
|
||||
|
|
@ -603,6 +604,7 @@ const registerTFCPlacedFeatures = (event) => {
|
|||
// Crops
|
||||
event.add('tfc:feature/crops', 'tfg:earth/sunflower_patch')
|
||||
event.add('tfc:feature/crops', 'tfg:earth/rapeseed_patch')
|
||||
event.add('tfc:feature/crops', 'tfg:earth/flax_patch')
|
||||
|
||||
// Other decoration
|
||||
event.add('tfc:in_biome/underground_decoration', 'tfg:glow_lichen')
|
||||
|
|
|
|||
|
|
@ -258,6 +258,8 @@ const registerTFGFoodData = (event) => {
|
|||
food.decayModifier(1.5)
|
||||
})
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// high-tech food
|
||||
|
|
@ -429,6 +431,15 @@ const registerTFGCropRanges = (event) => {
|
|||
climate.hydrationWiggle(7.5)
|
||||
climate.temperatureWiggle(1.5)
|
||||
}, 'tfg:rapeseed')
|
||||
|
||||
event.climateRange(climate => {
|
||||
climate.minHydration(15)
|
||||
climate.maxHydration(65)
|
||||
climate.minTemperature(-8)
|
||||
climate.maxTemperature(25)
|
||||
climate.hydrationWiggle(6.5)
|
||||
climate.temperatureWiggle(3)
|
||||
}, 'tfg:flax')
|
||||
|
||||
// Mars
|
||||
event.climateRange(climate => {
|
||||
|
|
@ -523,6 +534,24 @@ const registerTFGFLPlanters = (event) => {
|
|||
],
|
||||
null
|
||||
)
|
||||
|
||||
event.firmalifePlantable(
|
||||
'tfg:flax_seeds',
|
||||
'large',
|
||||
0,
|
||||
3,
|
||||
0.2,
|
||||
'tfg:flax_seeds',
|
||||
'tfg:flax_product',
|
||||
'nitrogen',
|
||||
[
|
||||
'tfg:block/crop/flax_age_0',
|
||||
'tfg:block/crop/flax_age_1',
|
||||
'tfg:block/crop/flax_age_5_top',
|
||||
'tfg:block/crop/flax_age_6_top'
|
||||
],
|
||||
null
|
||||
)
|
||||
|
||||
event.firmalifePlantable(
|
||||
'betterend:amber_root_seeds',
|
||||
|
|
|
|||
|
|
@ -1367,6 +1367,60 @@ function registerTFGMiscellaneousRecipes(event) {
|
|||
B: 'beneath:warped_straw'
|
||||
}).id('tfg:shaped_large_nest_warped')
|
||||
|
||||
|
||||
//#endregion
|
||||
|
||||
//#region flax stuff
|
||||
|
||||
event.recipes.tfc.scraping(
|
||||
'tfg:flax_waste',
|
||||
'tfg:flax_product',
|
||||
'tfg:item/flax_waste',
|
||||
'tfg:item/flax_product',
|
||||
'2x tfg:flax_line'
|
||||
).id('tfg:scraping/flax_line')
|
||||
|
||||
event.recipes.tfc.scraping(
|
||||
'tfc:groundcover/humus',
|
||||
'tfg:flax_waste',
|
||||
'tfc:item/groundcover/humus',
|
||||
'tfg:item/flax_waste',
|
||||
'tfg:flax_tow'
|
||||
).id('tfg:scraping/flax_tow')
|
||||
|
||||
event.recipes.tfc.damage_inputs_shapeless_crafting(
|
||||
event.shapeless('4x tfg:linen_thread', [
|
||||
'tfg:flax_line',
|
||||
'tfc:spindle'
|
||||
]).id('tfg:shapeless/linen_thread')
|
||||
)
|
||||
|
||||
//#region looming
|
||||
event.recipes.tfc.loom(
|
||||
'1x tfg:linen_cloth',
|
||||
'16x tfg:linen_thread',
|
||||
8,
|
||||
'tfc:block/burlap'
|
||||
)
|
||||
|
||||
event.recipes.tfc.loom(
|
||||
'1x tfc:burlap_cloth',
|
||||
'16x tfg:flax_tow',
|
||||
12,
|
||||
'tfc:block/burlap'
|
||||
)
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:assembler/linen_cloth')
|
||||
.itemInputs('16x tfg:linen_thread')
|
||||
.circuit(10)
|
||||
.itemOutputs('tfg:linen_cloth')
|
||||
.duration(100)
|
||||
.EUt(4)
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:assembler/flax_burlap')
|
||||
.itemInputs('16x tfg:flax_tow')
|
||||
.circuit(10)
|
||||
.itemOutputs('tfc:burlap_cloth')
|
||||
.duration(100)
|
||||
.EUt(4)
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,9 +7,11 @@ const registerTFGItemTags = (event) => {
|
|||
//crop stuff
|
||||
event.add('tfc:seeds', 'tfg:sunflower_seeds')
|
||||
event.add('tfc:seeds', 'tfg:rapeseed_seeds')
|
||||
event.add('tfc:seeds', 'tfg:flax_seeds')
|
||||
event.add('tfc:foods', 'tfg:roasted_sunflower_seeds')
|
||||
event.add('tfc:compost_greens_high', 'tfg:rapeseed_product')
|
||||
event.add('tfc:compost_greens_high', 'tfg:sunflower_product')
|
||||
event.add('tfc:compost_greens_high', 'tfg:flax_product')
|
||||
event.add('tfg:water_breathing_ingredients', 'tfg:rapeseed_product')
|
||||
event.add('tfg:night_vision_ingredients', 'tfg:sunflower_product')
|
||||
|
||||
|
|
@ -101,6 +103,7 @@ const registerTFGItemTags = (event) => {
|
|||
event.add('tfc:sewing_dark_cloth', 'tfg:polycaprolactam_fabric')
|
||||
event.add('forge:string', 'tfg:phantom_thread')
|
||||
event.add('forge:string', 'tfg:polycaprolactam_string')
|
||||
event.add('forge:string', 'firmalife:pineapple_yarn')
|
||||
//#endregion
|
||||
|
||||
// #region Medicines
|
||||
|
|
@ -448,6 +451,9 @@ const registerTFGBlockTags = (event) => {
|
|||
|
||||
event.add('tfc:crops', 'tfg:sunflower')
|
||||
event.add('tfc:mineable_with_sharp_tool', 'tfg:sunflower')
|
||||
|
||||
event.add('tfc:crops', 'tfg:flax')
|
||||
event.add('tfc:mineable_with_sharp_tool', 'tfg:flax')
|
||||
|
||||
// #region Nether blocks
|
||||
event.add('minecraft:nether_carver_replaceables', 'tfg:rock/hardened_deepslate')
|
||||
|
|
|
|||
|
|
@ -1035,6 +1035,8 @@ global.TFC_GREENHOUSE_VEGETABLE_RECIPE_COMPONENTS = [
|
|||
{ input: '8x tfc:seeds/yellow_bell_pepper', fluid_amount: 4000, output: '24x tfc:food/yellow_bell_pepper', name: 'yellow_bell_pepper' },
|
||||
{ input: '8x tfg:sunflower_seeds', fluid_amount: 4000, output: '24x tfg:sunflower_product', name: 'sunflower' },
|
||||
{ input: '8x tfg:rapeseed_seeds', fluid_amount: 4000, output: '24x tfg:rapeseed_product', name: 'rapeseed' },
|
||||
{ input: '8x tfg:flax_seeds', fluid_amount: 4000, output: '24x tfg:flax_product', name: 'flax' }
|
||||
|
||||
];
|
||||
|
||||
global.TFC_GREENHOUSE_BERRY_RECIPE_COMPONENTS = [
|
||||
|
|
|
|||
|
|
@ -59,6 +59,39 @@ const registerTFGCrops = (event) => {
|
|||
.tagBoth('tfc:wild_crops')
|
||||
.tagBlock('minecraft:mineable/hoe')
|
||||
.tagItem('c:hidden_from_recipe_viewers')
|
||||
|
||||
event.create('tfg:flax', 'tfc:double_crop')
|
||||
.translationKey('block.tfg.flax')
|
||||
.soundType('crop')
|
||||
.nutrient('nitrogen')
|
||||
.stages(5)
|
||||
.doubleStages(3)
|
||||
.hardness(0.4)
|
||||
.growthModifier(1.2)
|
||||
.expiryModifier(1.2)
|
||||
.tagBlock('minecraft:mineable/hoe')
|
||||
.productItem(product => {
|
||||
product.texture('tfg:item/flax_product')
|
||||
product.tag('tfc:scrapable')
|
||||
})
|
||||
.seedItem(seed => {
|
||||
seed.texture('tfg:item/flax_seed')
|
||||
})
|
||||
.deadBlock(dead => {
|
||||
dead.hardness(0.2)
|
||||
dead.soundType('crop')
|
||||
dead.tagBlock('minecraft:mineable/hoe')
|
||||
})
|
||||
|
||||
event.create('tfg:flax_wild', 'tfc:wild_crop')
|
||||
.type('double')
|
||||
.soundType('crop')
|
||||
.seeds('tfg:flax_seeds')
|
||||
.food('tfg:flax_product')
|
||||
.hardness(0.2)
|
||||
.tagBoth('tfc:wild_crops')
|
||||
.tagBlock('minecraft:mineable/hoe')
|
||||
.tagItem('c:hidden_from_recipe_viewers')
|
||||
|
||||
// Mars Crops
|
||||
|
||||
|
|
|
|||
|
|
@ -401,4 +401,18 @@ const registerTFGItems = (event) => {
|
|||
.tag('tfc:sweetener')
|
||||
//#endregion
|
||||
|
||||
//#region Flax Stuff
|
||||
event.create('tfg:flax_waste')
|
||||
.tag('tfc:scrapable')
|
||||
event.create('tfg:flax_tow')
|
||||
.tag('tfg:burlap_fiber')
|
||||
.tag('tfc:compost_browns')
|
||||
event.create('tfg:flax_line')
|
||||
.tag('tfc:compost_browns_low')
|
||||
event.create('tfg:linen_thread')
|
||||
.tag('forge:string')
|
||||
event.create('tfg:linen_cloth')
|
||||
.tag('forge:cloth')
|
||||
.tag('tfc:sewing_light_cloth')
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12709,6 +12709,29 @@
|
|||
"modrinth": "2yZ8ZSeO"
|
||||
},
|
||||
"files": [
|
||||
{
|
||||
"type": "curseforge",
|
||||
"file_name": "tfcgroomer-1.20.1-0.1.4.jar",
|
||||
"mc_versions": [
|
||||
"1.20.1"
|
||||
],
|
||||
"loaders": [
|
||||
"forge"
|
||||
],
|
||||
"release_type": "release",
|
||||
"url": "https://edge.forgecdn.net/files/6118/92/tfcgroomer-1.20.1-0.1.4.jar",
|
||||
"id": "6118092",
|
||||
"parent_id": "1003785",
|
||||
"hashes": {
|
||||
"sha1": "e1bb7e932f900cee6be0bf5faf3fc77111488865",
|
||||
"md5": "e4f19ca0413c9716cb86a3b50ae27a36"
|
||||
},
|
||||
"required_dependencies": [
|
||||
"302973"
|
||||
],
|
||||
"size": 134178,
|
||||
"date_published": "2025-01-23T23:02:18.440Z"
|
||||
},
|
||||
{
|
||||
"type": "modrinth",
|
||||
"file_name": "tfcgroomer-1.20.1-0.1.4.jar",
|
||||
|
|
@ -12729,29 +12752,6 @@
|
|||
"required_dependencies": [],
|
||||
"size": 134178,
|
||||
"date_published": "2025-07-27T17:29:15.479048Z"
|
||||
},
|
||||
{
|
||||
"type": "curseforge",
|
||||
"file_name": "tfcgroomer-1.20.1-0.2.0.jar",
|
||||
"mc_versions": [
|
||||
"1.20.1"
|
||||
],
|
||||
"loaders": [
|
||||
"forge"
|
||||
],
|
||||
"release_type": "release",
|
||||
"url": "https://edge.forgecdn.net/files/6935/736/tfcgroomer-1.20.1-0.2.0.jar",
|
||||
"id": "6935736",
|
||||
"parent_id": "1003785",
|
||||
"hashes": {
|
||||
"sha1": "ad89216cf3689907af1c28b133bae6e26f749941",
|
||||
"md5": "2f48a69948c27210a6c791c6c338124d"
|
||||
},
|
||||
"required_dependencies": [
|
||||
"302973"
|
||||
],
|
||||
"size": 152509,
|
||||
"date_published": "2025-08-27T22:46:58.430Z"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
|
|
|||