Merge branch 'dev' of https://github.com/TerraFirmaGreg-Team/Modpack-Modern into dev
6
kubejs/assets/ad_astra/models/item/aeronos_stem.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "ad_astra:item/aeronos_stem"
|
||||
}
|
||||
}
|
||||
6
kubejs/assets/ad_astra/models/item/glacian_log.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "ad_astra:item/glacian_log"
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "ad_astra:item/glacian_stripped"
|
||||
}
|
||||
}
|
||||
6
kubejs/assets/ad_astra/models/item/strophar_stem.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "ad_astra:item/strophar_stem"
|
||||
}
|
||||
}
|
||||
BIN
kubejs/assets/ad_astra/textures/item/aeronos_stem.png
Normal file
|
After Width: | Height: | Size: 451 B |
BIN
kubejs/assets/ad_astra/textures/item/glacian_log.png
Normal file
|
After Width: | Height: | Size: 434 B |
BIN
kubejs/assets/ad_astra/textures/item/glacian_stripped.png
Normal file
|
After Width: | Height: | Size: 373 B |
BIN
kubejs/assets/ad_astra/textures/item/strophar_stem.png
Normal file
|
After Width: | Height: | Size: 482 B |
|
|
@ -1,16 +0,0 @@
|
|||
{
|
||||
"__COMMENT__": "This file was auto generated by the LanguageMerger, read the file \".README IF TRANSLATING\" found in \"minecraft/kubejs\" for more information.",
|
||||
"entity.kaolinclayze.tfc": "Kaolin Klayze",
|
||||
"entity.terramod.tfc": "Kaolin Klayze",
|
||||
"entity.kaolinclayze.golem_2": "Graphite Glayze",
|
||||
"item.kaolinclayze.tfc_spawn_egg": "Kaolin Klayze Spawn Egg",
|
||||
"item.kaolinclayze.golem_2_spawn_egg": "Graphite Glayze Spawn Egg",
|
||||
"item.kaolinclayze.yhgi": "Flint Club",
|
||||
"item.kaolinclayze.reh": "Fortified Flint Club",
|
||||
"item.kaolinclayze.grh": "Battered Wool",
|
||||
"item.kaolinclayze.totem_0": "Small Clay Idol",
|
||||
"item.kaolinclayze.totem_2": "Wooden Lion-Man Idol",
|
||||
"item.kaolinclayze.totem_3": "Hardened Mud Idol",
|
||||
"item.kaolinclayze.tt_5": "Small Shard",
|
||||
"item.kaolinclayze.f_1": "Primitive Explosives"
|
||||
}
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
{
|
||||
"__COMMENT__": "This file was auto generated by the LanguageMerger, read the file \".README IF TRANSLATING\" found in \"minecraft/kubejs\" for more information.",
|
||||
"entity.kaolinclayze.tfc": "Каоліновий Клейз",
|
||||
"entity.terramod.tfc": "Каоліновий Клейз",
|
||||
"entity.kaolinclayze.golem_2": "Графітовий Глейз",
|
||||
"item.kaolinclayze.tfc_spawn_egg": "Яйце спавну Каолінового Клейза",
|
||||
"item.kaolinclayze.golem_2_spawn_egg": "Яйце спавну Графітового Глейза",
|
||||
"item.terramod.tfc_spawn_egg": "Яйце спавну Каолінового Клейза"
|
||||
}
|
||||
21
kubejs/assets/primitive_creatures/lang/en_us.json
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
{
|
||||
"__COMMENT__": "This file was auto generated by the LanguageMerger, read the file \".README IF TRANSLATING\" found in \"minecraft/kubejs\" for more information.",
|
||||
"entity.primitive_creatures.tfc": "Kaolin Klayze",
|
||||
"entity.primitive_creatures.golem_2": "Graphite Glayze",
|
||||
"entity.primitive_creatures.iloger_4": "Forager",
|
||||
"entity.primitive_creatures.wiloger": "Beast Tamer",
|
||||
"entity.primitive_creatures.iloger_2": "Herbalist",
|
||||
"item.primitive_creatures.tfc_spawn_egg": "Kaolin Klayze Spawn Egg",
|
||||
"item.primitive_creatures.golem_2_spawn_egg": "Graphite Glayze Spawn Egg",
|
||||
"item.primitive_creatures.iloger_4_spawn_egg": "Forager Spawn Egg",
|
||||
"item.primitive_creatures.wiloger_spawn_egg": "Beast Tamer Spawn Egg",
|
||||
"item.primitive_creatures.iloger_2_spawn_egg": "Herbalist Spawn Egg",
|
||||
"item.primitive_creatures.yhgi": "Flint Club",
|
||||
"item.primitive_creatures.reh": "Fortified Flint Club",
|
||||
"item.primitive_creatures.grh": "Battered Wool",
|
||||
"item.primitive_creatures.totem_0": "Small Clay Idol",
|
||||
"item.primitive_creatures.totem_2": "Wooden Lion-Man Idol",
|
||||
"item.primitive_creatures.totem_3": "Hardened Mud Idol",
|
||||
"item.primitive_creatures.tt_5": "Small Shard",
|
||||
"item.primitive_creatures.f_1": "Primitive Explosives"
|
||||
}
|
||||
7
kubejs/assets/primitive_creatures/lang/uk_ua.json
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"__COMMENT__": "This file was auto generated by the LanguageMerger, read the file \".README IF TRANSLATING\" found in \"minecraft/kubejs\" for more information.",
|
||||
"entity.primitive_creatures.tfc": "Каоліновий Клейз",
|
||||
"entity.primitive_creatures.golem_2": "Графітовий Глейз",
|
||||
"item.primitive_creatures.tfc_spawn_egg": "Яйце спавну Каолінового Клейза",
|
||||
"item.primitive_creatures.golem_2_spawn_egg": "Яйце спавну Графітового Глейза"
|
||||
}
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
"name": "Harvest Baskets",
|
||||
"icon": "tfg:harvest_basket",
|
||||
"category": "tfc:mechanics",
|
||||
"read_by_default": true,
|
||||
"pages": [
|
||||
{
|
||||
"type": "patchouli:spotlight",
|
||||
"title": "Harvest Baskets",
|
||||
"item": { "tag": "tfg:harvester" },
|
||||
"text": "Made for those with a short stature--$(thing)Harvest Baskets$() are just the tool needed for plucking trees and bushes of fruit.$(br)To use a harvest basket; right click on a fruit tree or fruit bush and all blocks within a $(thing)7-block radius$() will be picked."
|
||||
},
|
||||
{
|
||||
"type": "patchouli:text",
|
||||
"text": "A regular harvest basket has a durability of $(thing)128$(), while the aluminium harvest basket does not take any damage on use. Harvest baskets can also be used by things like the $(thing)Create Deployer$() to automate harvesting. The baskets will use durability in the process."
|
||||
},
|
||||
{
|
||||
"type": "patchouli:crafting",
|
||||
"title": "Harvest Basket",
|
||||
"recipe": "tfg:shaped/harvest_basket_from_papyrus",
|
||||
"text": "A basic $(item)Harvest Basket$() can be made of soaked papyrus or hardwood."
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -131,6 +131,12 @@
|
|||
"block.tfg.migmatite_support": "Migmatite Support",
|
||||
"block.tfg.travertine_support_horizontal": "Travertine Horizontal Support",
|
||||
"block.tfg.travertine_support": "Travertine Support",
|
||||
"block.tfg.glacian_support": "Glacian Support",
|
||||
"block.tfg.glacian_support_horizontal": "Glacian Horizontal Support",
|
||||
"block.tfg.strophar_support": "Strophar Support",
|
||||
"block.tfg.strophar_support_horizontal": "Strophar Horizontal Support",
|
||||
"block.tfg.aeronos_support": "Aeronos Support",
|
||||
"block.tfg.aeronos_support_horizontal": "Aeronos Horizontal Support",
|
||||
"block.tfg.rock.hardened_deepslate": "Hardened Migmatite",
|
||||
"block.tfg.rock.hardened_blackstone": "Hardened Pyroxenite",
|
||||
"block.tfg.rock.hardened_dripstone": "Hardened Travertine",
|
||||
|
|
@ -440,6 +446,11 @@
|
|||
"item.tfg.compressed_heliox_3_bucket": "Heliox-3 Bucket",
|
||||
"item.tfg.compressed_trimix_bucket": "50/30/20 Trimix Bucket",
|
||||
"item.tfg.compressed_trimix_3_bucket": "50/30/20 Trimix-3 Bucket",
|
||||
"item.tfg.harvest_basket": "Harvest Basket",
|
||||
"item.tfg.aluminium_harvest_basket": "Aluminium Harvest Basket",
|
||||
"item.tfg.wood.lumber.aeronos": "Aeronos Lumber",
|
||||
"item.tfg.wood.lumber.strophar": "Strophar Lumber",
|
||||
"item.tfg.wood.lumber.glacian": "Glacian Lumber",
|
||||
"material.tfg.latex": "Latex",
|
||||
"material.tfg.vulcanized_latex": "Vulcanized Latex",
|
||||
"material.tfg.fluix": "Fluix",
|
||||
|
|
@ -2994,5 +3005,9 @@
|
|||
"quests.tfg_tips.tools_tips.markings.task": "Any #ags_modernmarkings:markings",
|
||||
"quests.tfg_tips.tools_tips.cryodesiccation.title": "Cryodesiccation",
|
||||
"quests.tfg_tips.tools_tips.cryodesiccation.subtitle": "The factory has no time for \"flavor\".",
|
||||
"quests.tfg_tips.tools_tips.cryodesiccation.desc": "&l&bCryodesiccation&r&r is the process of dehydrating food at very low temperatures. Food with the trait \"Cryodesiccated\" lasts considerably longer than other food preservation methods."
|
||||
"quests.tfg_tips.tools_tips.cryodesiccation.desc": "&l&bCryodesiccation&r&r is the process of dehydrating food at very low temperatures. Food with the trait \"Cryodesiccated\" lasts considerably longer than other food preservation methods.",
|
||||
"quests.tfg_tips.tools_tips.harvest_basket.title": "Harvest Baskets",
|
||||
"quests.tfg_tips.tools_tips.harvest_basket.subtitle": "For competitive pie bakers.",
|
||||
"quests.tfg_tips.tools_tips.harvest_basket.task": "Any #tfg:harvester",
|
||||
"quests.tfg_tips.tools_tips.harvest_basket.desc": "&l&2Harvest Baskets&r&r are a new tool made just for &5TFG&r! These baskets can be used to harvest whole trees and bushes of fruit in one right-click! A regular &6Harvest Basket&r has a base durability of &n128&r. But an &3Aluminium Harvest Basket&r takes no damage on use."
|
||||
}
|
||||
212
kubejs/assets/tfg/models/item/aluminium_harvest_basket.json
Normal file
|
|
@ -0,0 +1,212 @@
|
|||
{
|
||||
"format_version": "1.21.6",
|
||||
"credit": "Made with Blockbench",
|
||||
"texture_size": [32, 32],
|
||||
"textures": {
|
||||
"0": "tfg:item/aluminium_harvest_basket",
|
||||
"particle": "tfg:item/aluminium_harvest_basket"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"from": [3, 0, 1],
|
||||
"to": [4, 6, 15],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [7, 0, 3]},
|
||||
"faces": {
|
||||
"north": {"uv": [0.5, 3, 1, 6], "texture": "#0"},
|
||||
"east": {"uv": [7, 9, 14, 12], "texture": "#0"},
|
||||
"south": {"uv": [0.5, 3, 1, 6], "texture": "#0"},
|
||||
"west": {"uv": [0, 0, 7, 3], "texture": "#0"},
|
||||
"up": {"uv": [0.5, 10, 0, 3], "texture": "#0"},
|
||||
"down": {"uv": [0.5, 3, 0, 10], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12, 0, 1],
|
||||
"to": [13, 6, 15],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [16, 0, 3]},
|
||||
"faces": {
|
||||
"north": {"uv": [0.5, 3, 1, 6], "texture": "#0"},
|
||||
"east": {"uv": [0, 0, 7, 3], "texture": "#0"},
|
||||
"south": {"uv": [0.5, 3, 1, 6], "texture": "#0"},
|
||||
"west": {"uv": [7, 9, 14, 12], "texture": "#0"},
|
||||
"up": {"uv": [0.5, 10, 0, 3], "texture": "#0"},
|
||||
"down": {"uv": [0.5, 3, 0, 10], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [4, 0, 2],
|
||||
"to": [12, 1, 14],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [4, 0, 2]},
|
||||
"faces": {
|
||||
"north": {"uv": [3, 3.5, 7, 4], "texture": "#0"},
|
||||
"east": {"uv": [1, 3, 7, 3.5], "texture": "#0"},
|
||||
"south": {"uv": [3, 3.5, 7, 4], "texture": "#0"},
|
||||
"west": {"uv": [1, 3, 7, 3.5], "texture": "#0"},
|
||||
"up": {"uv": [7, 0, 11, 6], "texture": "#0"},
|
||||
"down": {"uv": [7, 0, 11, 6], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [4, 0, 1],
|
||||
"to": [12, 6, 2],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [5, 0, 1]},
|
||||
"faces": {
|
||||
"north": {"uv": [7, 6, 11, 9], "texture": "#0"},
|
||||
"east": {"uv": [1, 3.5, 1.5, 6.5], "texture": "#0"},
|
||||
"south": {"uv": [11, 6, 15, 9], "texture": "#0"},
|
||||
"west": {"uv": [1, 3.5, 1.5, 6.5], "texture": "#0"},
|
||||
"up": {"uv": [3, 4, 7, 4.5], "texture": "#0"},
|
||||
"down": {"uv": [3, 4, 7, 4.5], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [4, 0, 14],
|
||||
"to": [12, 6, 15],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [5, 0, 14]},
|
||||
"faces": {
|
||||
"north": {"uv": [11, 6, 15, 9], "texture": "#0"},
|
||||
"east": {"uv": [1, 3.5, 1.5, 6.5], "texture": "#0"},
|
||||
"south": {"uv": [7, 6, 11, 9], "texture": "#0"},
|
||||
"west": {"uv": [1, 3.5, 1.5, 6.5], "texture": "#0"},
|
||||
"up": {"uv": [3, 4, 7, 4.5], "texture": "#0"},
|
||||
"down": {"uv": [3, 4, 7, 4.5], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [2.9, 5, 4],
|
||||
"to": [2.9, 12, 5],
|
||||
"rotation": {"angle": 22.5, "axis": "x", "origin": [3, 4, 4]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0, 3.5], "texture": "#0"},
|
||||
"east": {"uv": [1.5, 7, 2, 10.5], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 0, 3.5], "texture": "#0"},
|
||||
"west": {"uv": [1.5, 3.5, 2, 7], "texture": "#0"},
|
||||
"up": {"uv": [0, 0, 0, 0.5], "texture": "#0"},
|
||||
"down": {"uv": [0, 0, 0, 0.5], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13.1, 5, 4],
|
||||
"to": [13.1, 12, 5],
|
||||
"rotation": {"angle": 22.5, "axis": "x", "origin": [13.2, 4, 4]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0, 3.5], "texture": "#0"},
|
||||
"east": {"uv": [1.5, 3.5, 2, 7], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 0, 3.5], "texture": "#0"},
|
||||
"west": {"uv": [1.5, 7, 2, 10.5], "texture": "#0"},
|
||||
"up": {"uv": [0, 0, 0, 0.5], "texture": "#0"},
|
||||
"down": {"uv": [0, 0, 0, 0.5], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [2.9, 11.39004, 7.06147],
|
||||
"to": [13.1, 11.39004, 8.06147],
|
||||
"rotation": {"angle": 22.5, "axis": "x", "origin": [2.9, 11.39004, 7.06147]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 5.1, 0], "texture": "#0"},
|
||||
"east": {"uv": [0, 0, 0.5, 0], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 5.1, 0], "texture": "#0"},
|
||||
"west": {"uv": [0, 0, 0.5, 0], "texture": "#0"},
|
||||
"up": {"uv": [2, 4.5, 7, 5], "texture": "#0"},
|
||||
"down": {"uv": [2, 5, 7, 5.5], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [2.9, 5, 11],
|
||||
"to": [2.9, 12, 12],
|
||||
"rotation": {"angle": -22.5, "axis": "x", "origin": [3, 4, 12]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0, 3.5], "texture": "#0"},
|
||||
"east": {"uv": [2, 7, 1.5, 10.5], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 0, 3.5], "texture": "#0"},
|
||||
"west": {"uv": [2, 3.5, 1.5, 7], "texture": "#0"},
|
||||
"up": {"uv": [0, 0.5, 0, 0], "texture": "#0"},
|
||||
"down": {"uv": [0, 0.5, 0, 0], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13.1, 5, 11],
|
||||
"to": [13.1, 12, 12],
|
||||
"rotation": {"angle": -22.5, "axis": "x", "origin": [13.2, 4, 12]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0, 3.5], "texture": "#0"},
|
||||
"east": {"uv": [2, 3.5, 1.5, 7], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 0, 3.5], "texture": "#0"},
|
||||
"west": {"uv": [2, 7, 1.5, 10.5], "texture": "#0"},
|
||||
"up": {"uv": [0, 0.5, 0, 0], "texture": "#0"},
|
||||
"down": {"uv": [0, 0.5, 0, 0], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [2.9, 11.39004, 7.93853],
|
||||
"to": [13.1, 11.39004, 8.93853],
|
||||
"rotation": {"angle": -22.5, "axis": "x", "origin": [2.9, 11.39004, 8.93853]},
|
||||
"faces": {
|
||||
"north": {"uv": [5.1, 0, 0, 0], "texture": "#0"},
|
||||
"east": {"uv": [0.5, 0, 0, 0], "texture": "#0"},
|
||||
"south": {"uv": [5.1, 0, 0, 0], "texture": "#0"},
|
||||
"west": {"uv": [0.5, 0, 0, 0], "texture": "#0"},
|
||||
"up": {"uv": [2, 5, 7, 4.5], "texture": "#0"},
|
||||
"down": {"uv": [2, 5.5, 7, 5], "texture": "#0"}
|
||||
}
|
||||
}
|
||||
],
|
||||
"display": {
|
||||
"thirdperson_righthand": {
|
||||
"rotation": [74, 0, 0],
|
||||
"translation": [0, -2.25, -1.5],
|
||||
"scale": [0.75, 0.75, 0.76]
|
||||
},
|
||||
"thirdperson_lefthand": {
|
||||
"rotation": [74, 0, 0],
|
||||
"translation": [0, -2.25, -1.5],
|
||||
"scale": [0.75, 0.75, 0.76]
|
||||
},
|
||||
"firstperson_righthand": {
|
||||
"rotation": [32, 0, 12],
|
||||
"translation": [0, 1.25, 4]
|
||||
},
|
||||
"firstperson_lefthand": {
|
||||
"rotation": [32, 0, 12],
|
||||
"translation": [0, 1.25, 4]
|
||||
},
|
||||
"ground": {
|
||||
"translation": [0, 3, 0],
|
||||
"scale": [0.25, 0.25, 0.25]
|
||||
},
|
||||
"gui": {
|
||||
"rotation": [30, -53, 0],
|
||||
"translation": [0, 1.75, 0],
|
||||
"scale": [0.75, 0.75, 0.75]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-170.75, 0, 0],
|
||||
"translation": [0, -1.75, 0],
|
||||
"scale": [1.6, 1.5, 1.4]
|
||||
},
|
||||
"fixed": {
|
||||
"rotation": [0, -90, 0],
|
||||
"scale": [0.5, 0.5, 0.5]
|
||||
}
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"name": "basket",
|
||||
"origin": [7, 0, 3],
|
||||
"color": 0,
|
||||
"children": [0, 1, 2, 3, 4]
|
||||
},
|
||||
{
|
||||
"name": "handle1",
|
||||
"origin": [3, 4, 4],
|
||||
"color": 0,
|
||||
"children": [5, 6, 7]
|
||||
},
|
||||
{
|
||||
"name": "handle2",
|
||||
"origin": [3, 4, 4],
|
||||
"color": 0,
|
||||
"children": [8, 9, 10]
|
||||
}
|
||||
]
|
||||
}
|
||||
6
kubejs/assets/tfg/models/item/flint_club_head.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "tfg:item/flint_club_head"
|
||||
}
|
||||
}
|
||||
212
kubejs/assets/tfg/models/item/harvest_basket.json
Normal file
|
|
@ -0,0 +1,212 @@
|
|||
{
|
||||
"format_version": "1.21.6",
|
||||
"credit": "Made with Blockbench",
|
||||
"texture_size": [32, 32],
|
||||
"textures": {
|
||||
"0": "tfg:item/harvest_basket",
|
||||
"particle": "tfg:item/harvest_basket"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"from": [3, 0, 1],
|
||||
"to": [4, 6, 15],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [7, 0, 3]},
|
||||
"faces": {
|
||||
"north": {"uv": [0.5, 3, 1, 6], "texture": "#0"},
|
||||
"east": {"uv": [7, 9, 14, 12], "texture": "#0"},
|
||||
"south": {"uv": [0.5, 3, 1, 6], "texture": "#0"},
|
||||
"west": {"uv": [0, 0, 7, 3], "texture": "#0"},
|
||||
"up": {"uv": [0.5, 10, 0, 3], "texture": "#0"},
|
||||
"down": {"uv": [0.5, 3, 0, 10], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [12, 0, 1],
|
||||
"to": [13, 6, 15],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [16, 0, 3]},
|
||||
"faces": {
|
||||
"north": {"uv": [0.5, 3, 1, 6], "texture": "#0"},
|
||||
"east": {"uv": [0, 0, 7, 3], "texture": "#0"},
|
||||
"south": {"uv": [0.5, 3, 1, 6], "texture": "#0"},
|
||||
"west": {"uv": [7, 9, 14, 12], "texture": "#0"},
|
||||
"up": {"uv": [0.5, 10, 0, 3], "texture": "#0"},
|
||||
"down": {"uv": [0.5, 3, 0, 10], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [4, 0, 2],
|
||||
"to": [12, 1, 14],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [4, 0, 2]},
|
||||
"faces": {
|
||||
"north": {"uv": [3, 3.5, 7, 4], "texture": "#0"},
|
||||
"east": {"uv": [1, 3, 7, 3.5], "texture": "#0"},
|
||||
"south": {"uv": [3, 3.5, 7, 4], "texture": "#0"},
|
||||
"west": {"uv": [1, 3, 7, 3.5], "texture": "#0"},
|
||||
"up": {"uv": [7, 0, 11, 6], "texture": "#0"},
|
||||
"down": {"uv": [7, 0, 11, 6], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [4, 0, 1],
|
||||
"to": [12, 6, 2],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [5, 0, 1]},
|
||||
"faces": {
|
||||
"north": {"uv": [7, 6, 11, 9], "texture": "#0"},
|
||||
"east": {"uv": [1, 3.5, 1.5, 6.5], "texture": "#0"},
|
||||
"south": {"uv": [11, 6, 15, 9], "texture": "#0"},
|
||||
"west": {"uv": [1, 3.5, 1.5, 6.5], "texture": "#0"},
|
||||
"up": {"uv": [3, 4, 7, 4.5], "texture": "#0"},
|
||||
"down": {"uv": [3, 4, 7, 4.5], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [4, 0, 14],
|
||||
"to": [12, 6, 15],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [5, 0, 14]},
|
||||
"faces": {
|
||||
"north": {"uv": [11, 6, 15, 9], "texture": "#0"},
|
||||
"east": {"uv": [1, 3.5, 1.5, 6.5], "texture": "#0"},
|
||||
"south": {"uv": [7, 6, 11, 9], "texture": "#0"},
|
||||
"west": {"uv": [1, 3.5, 1.5, 6.5], "texture": "#0"},
|
||||
"up": {"uv": [3, 4, 7, 4.5], "texture": "#0"},
|
||||
"down": {"uv": [3, 4, 7, 4.5], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [2.9, 5, 4],
|
||||
"to": [2.9, 12, 5],
|
||||
"rotation": {"angle": 22.5, "axis": "x", "origin": [3, 4, 4]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0, 3.5], "texture": "#0"},
|
||||
"east": {"uv": [1.5, 7, 2, 10.5], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 0, 3.5], "texture": "#0"},
|
||||
"west": {"uv": [1.5, 3.5, 2, 7], "texture": "#0"},
|
||||
"up": {"uv": [0, 0, 0, 0.5], "texture": "#0"},
|
||||
"down": {"uv": [0, 0, 0, 0.5], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13.1, 5, 4],
|
||||
"to": [13.1, 12, 5],
|
||||
"rotation": {"angle": 22.5, "axis": "x", "origin": [13.2, 4, 4]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0, 3.5], "texture": "#0"},
|
||||
"east": {"uv": [1.5, 3.5, 2, 7], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 0, 3.5], "texture": "#0"},
|
||||
"west": {"uv": [1.5, 7, 2, 10.5], "texture": "#0"},
|
||||
"up": {"uv": [0, 0, 0, 0.5], "texture": "#0"},
|
||||
"down": {"uv": [0, 0, 0, 0.5], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [2.9, 11.39004, 7.06147],
|
||||
"to": [13.1, 11.39004, 8.06147],
|
||||
"rotation": {"angle": 22.5, "axis": "x", "origin": [2.9, 11.39004, 7.06147]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 5.1, 0], "texture": "#0"},
|
||||
"east": {"uv": [0, 0, 0.5, 0], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 5.1, 0], "texture": "#0"},
|
||||
"west": {"uv": [0, 0, 0.5, 0], "texture": "#0"},
|
||||
"up": {"uv": [2, 4.5, 7, 5], "texture": "#0"},
|
||||
"down": {"uv": [2, 5, 7, 5.5], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [2.9, 5, 11],
|
||||
"to": [2.9, 12, 12],
|
||||
"rotation": {"angle": -22.5, "axis": "x", "origin": [3, 4, 12]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0, 3.5], "texture": "#0"},
|
||||
"east": {"uv": [2, 7, 1.5, 10.5], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 0, 3.5], "texture": "#0"},
|
||||
"west": {"uv": [2, 3.5, 1.5, 7], "texture": "#0"},
|
||||
"up": {"uv": [0, 0.5, 0, 0], "texture": "#0"},
|
||||
"down": {"uv": [0, 0.5, 0, 0], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13.1, 5, 11],
|
||||
"to": [13.1, 12, 12],
|
||||
"rotation": {"angle": -22.5, "axis": "x", "origin": [13.2, 4, 12]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 0, 3.5], "texture": "#0"},
|
||||
"east": {"uv": [2, 3.5, 1.5, 7], "texture": "#0"},
|
||||
"south": {"uv": [0, 0, 0, 3.5], "texture": "#0"},
|
||||
"west": {"uv": [2, 7, 1.5, 10.5], "texture": "#0"},
|
||||
"up": {"uv": [0, 0.5, 0, 0], "texture": "#0"},
|
||||
"down": {"uv": [0, 0.5, 0, 0], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [2.9, 11.39004, 7.93853],
|
||||
"to": [13.1, 11.39004, 8.93853],
|
||||
"rotation": {"angle": -22.5, "axis": "x", "origin": [2.9, 11.39004, 8.93853]},
|
||||
"faces": {
|
||||
"north": {"uv": [5.1, 0, 0, 0], "texture": "#0"},
|
||||
"east": {"uv": [0.5, 0, 0, 0], "texture": "#0"},
|
||||
"south": {"uv": [5.1, 0, 0, 0], "texture": "#0"},
|
||||
"west": {"uv": [0.5, 0, 0, 0], "texture": "#0"},
|
||||
"up": {"uv": [2, 5, 7, 4.5], "texture": "#0"},
|
||||
"down": {"uv": [2, 5.5, 7, 5], "texture": "#0"}
|
||||
}
|
||||
}
|
||||
],
|
||||
"display": {
|
||||
"thirdperson_righthand": {
|
||||
"rotation": [74, 0, 0],
|
||||
"translation": [0, -2.25, -1.5],
|
||||
"scale": [0.75, 0.75, 0.76]
|
||||
},
|
||||
"thirdperson_lefthand": {
|
||||
"rotation": [74, 0, 0],
|
||||
"translation": [0, -2.25, -1.5],
|
||||
"scale": [0.75, 0.75, 0.76]
|
||||
},
|
||||
"firstperson_righthand": {
|
||||
"rotation": [32, 0, 12],
|
||||
"translation": [0, 1.25, 4]
|
||||
},
|
||||
"firstperson_lefthand": {
|
||||
"rotation": [32, 0, 12],
|
||||
"translation": [0, 1.25, 4]
|
||||
},
|
||||
"ground": {
|
||||
"translation": [0, 3, 0],
|
||||
"scale": [0.25, 0.25, 0.25]
|
||||
},
|
||||
"gui": {
|
||||
"rotation": [30, -53, 0],
|
||||
"translation": [0, 1.75, 0],
|
||||
"scale": [0.75, 0.75, 0.75]
|
||||
},
|
||||
"head": {
|
||||
"rotation": [-170.75, 0, 0],
|
||||
"translation": [0, -1.75, 0],
|
||||
"scale": [1.6, 1.5, 1.4]
|
||||
},
|
||||
"fixed": {
|
||||
"rotation": [0, -90, 0],
|
||||
"scale": [0.5, 0.5, 0.5]
|
||||
}
|
||||
},
|
||||
"groups": [
|
||||
{
|
||||
"name": "basket",
|
||||
"origin": [7, 0, 3],
|
||||
"color": 0,
|
||||
"children": [0, 1, 2, 3, 4]
|
||||
},
|
||||
{
|
||||
"name": "handle1",
|
||||
"origin": [3, 4, 4],
|
||||
"color": 0,
|
||||
"children": [5, 6, 7]
|
||||
},
|
||||
{
|
||||
"name": "handle2",
|
||||
"origin": [3, 4, 4],
|
||||
"color": 0,
|
||||
"children": [8, 9, 10]
|
||||
}
|
||||
]
|
||||
}
|
||||
BIN
kubejs/assets/tfg/textures/block/support/aeronos_support.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
BIN
kubejs/assets/tfg/textures/block/support/glacian_support.png
Normal file
|
After Width: | Height: | Size: 432 B |
BIN
kubejs/assets/tfg/textures/block/support/strophar_support.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
BIN
kubejs/assets/tfg/textures/item/aluminium_harvest_basket.png
Normal file
|
After Width: | Height: | Size: 1 KiB |
BIN
kubejs/assets/tfg/textures/item/flint_club_head.png
Normal file
|
After Width: | Height: | Size: 349 B |
BIN
kubejs/assets/tfg/textures/item/harvest_basket.png
Normal file
|
After Width: | Height: | Size: 970 B |
BIN
kubejs/assets/tfg/textures/item/wood/lumber/aeronos.png
Normal file
|
After Width: | Height: | Size: 371 B |
BIN
kubejs/assets/tfg/textures/item/wood/lumber/glacian.png
Normal file
|
After Width: | Height: | Size: 386 B |
BIN
kubejs/assets/tfg/textures/item/wood/lumber/strophar.png
Normal file
|
After Width: | Height: | Size: 379 B |
|
|
@ -84,6 +84,11 @@ const registerTooltips = (event) =>
|
|||
text.add(1, text.of('§79 x 5 x 9'))
|
||||
})
|
||||
})
|
||||
global.AD_ASTRA_WOOD.forEach(wood => {
|
||||
event.addAdvanced([`tfg:${wood.name}_support`], (item, advanced, text) => {
|
||||
text.add(1, text.of('§79 x 5 x 9'))
|
||||
})
|
||||
})
|
||||
event.addAdvanced(['tfg:light_concrete_support', 'tfg:dark_concrete_support', 'tfg:rebar_support'], (item, advanced, text) => {
|
||||
text.add(1, text.of('§717 x 9 x 17'))
|
||||
})
|
||||
|
|
|
|||
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"type": "forge:none"
|
||||
}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"type": "forge:none"
|
||||
}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"type": "forge:none"
|
||||
}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"type": "forge:none"
|
||||
}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"type": "forge:none"
|
||||
}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"type": "forge:none"
|
||||
}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"type": "forge:none"
|
||||
}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"type": "forge:none"
|
||||
}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"type": "forge:none"
|
||||
}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"type": "forge:none"
|
||||
}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"type": "forge:none"
|
||||
}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"type": "forge:none"
|
||||
}
|
||||
|
|
@ -140,7 +140,7 @@
|
|||
"weight": 10
|
||||
},
|
||||
{
|
||||
"type": "kaolinclayze:golem_2",
|
||||
"type": "primitive_creatures:golem_2",
|
||||
"maxCount": 3,
|
||||
"minCount": 1,
|
||||
"weight": 100
|
||||
|
|
|
|||
|
|
@ -110,7 +110,7 @@
|
|||
"weight": 100
|
||||
},
|
||||
{
|
||||
"type": "kaolinclayze:golem_2",
|
||||
"type": "primitive_creatures:golem_2",
|
||||
"maxCount": 4,
|
||||
"minCount": 1,
|
||||
"weight": 100
|
||||
|
|
|
|||
|
|
@ -132,7 +132,7 @@
|
|||
"weight": 20
|
||||
},
|
||||
{
|
||||
"type": "kaolinclayze:golem_2",
|
||||
"type": "primitive_creatures:golem_2",
|
||||
"maxCount": 4,
|
||||
"minCount": 1,
|
||||
"weight": 100
|
||||
|
|
|
|||
|
|
@ -128,7 +128,7 @@
|
|||
"weight": 50
|
||||
},
|
||||
{
|
||||
"type": "kaolinclayze:tfc",
|
||||
"type": "primitive_creatures:tfc",
|
||||
"maxCount": 4,
|
||||
"minCount": 1,
|
||||
"weight": 100
|
||||
|
|
|
|||
|
|
@ -17,4 +17,8 @@ function registerTFCDataForAdAstra(event) {
|
|||
food.dairy(5)
|
||||
food.decayModifier(10)
|
||||
})
|
||||
|
||||
global.AD_ASTRA_WOOD.forEach(wood => {
|
||||
event.fuel(wood.logs, 800, 1500, null)
|
||||
})
|
||||
}
|
||||
|
|
@ -697,4 +697,40 @@ const registerAdAstraRecipes = (event) => {
|
|||
})
|
||||
|
||||
//#endregion
|
||||
|
||||
//#region Wood
|
||||
event.remove({ type: 'greate:cutting', input: '#ad_astra:aeronos_caps' })
|
||||
event.remove({ type: 'greate:cutting', input: 'ad_astra:aeronos_planks' })
|
||||
event.remove({ type: 'greate:cutting', input: '#ad_astra:strophar_caps' })
|
||||
event.remove({ type: 'greate:cutting', input: 'ad_astra:glacian_log' })
|
||||
event.remove({ type: 'greate:cutting', input: 'ad_astra:stripped_glacian_log' })
|
||||
event.remove({ type: 'greate:cutting', input: 'ad_astra:strophar_planks' })
|
||||
event.remove({ type: 'greate:cutting', input: 'ad_astra:glacian_planks' })
|
||||
|
||||
global.AD_ASTRA_WOOD.forEach(wood => {
|
||||
woodBuilder(event, wood.name, wood.lumber, wood.logs, wood.log, wood.stripped_log, wood.plank, wood.stair, wood.slab, wood.door, wood.trapdoor, wood.fence, wood.fence_gate, wood.support, wood.pressure_plate, wood.button)
|
||||
})
|
||||
|
||||
event.shaped('16x ad_astra:aeronos_ladder', [
|
||||
'A A',
|
||||
'ABA',
|
||||
'A A'
|
||||
], {
|
||||
A: 'tfg:wood/lumber/aeronos',
|
||||
B: ChemicalHelper.get(TagPrefix.rod, GTMaterials.Wood, 1),
|
||||
}).id('tfg:shaped/aeronos_ladder')
|
||||
|
||||
event.shaped('16x ad_astra:strophar_ladder', [
|
||||
'A A',
|
||||
'ABA',
|
||||
'A A'
|
||||
], {
|
||||
A: 'tfg:wood/lumber/strophar',
|
||||
B: ChemicalHelper.get(TagPrefix.rod, GTMaterials.Wood, 1),
|
||||
}).id('tfg:shaped/strophar_ladder')
|
||||
|
||||
generateGreenHouseRecipe(event, '8x ad_astra:glacian_fur', 16000, '64x ad_astra:glacian_log', 'tfg:green_house/glacian_tree', 'ad_astra:moon', 8, '8x ad_astra:glacian_leaves', GTValues.VA[GTValues.MV])
|
||||
generateGreenHouseRecipe(event, '8x ad_astra:strophar_mushroom', 16000, '64x ad_astra:strophar_stem', 'tfg:green_house/strophar_mushroom', 'ad_astra:moon', 8, '16x ad_astra:strophar_cap', GTValues.VA[GTValues.MV])
|
||||
generateGreenHouseRecipe(event, '8x ad_astra:aeronos_mushroom', 16000, '64x ad_astra:aeronos_stem', 'tfg:green_house/aeronos_mushroom', 'ad_astra:moon', 8, '16x ad_astra:aeronos_cap', GTValues.VA[GTValues.MV])
|
||||
//#endregion
|
||||
}
|
||||
|
|
|
|||
|
|
@ -81,6 +81,28 @@ const registerAdAstraItemTags = (event) => {
|
|||
event.add('ad_astra:space_suit_items', 'gtceu:quarktech_helmet')
|
||||
event.add('ad_astra:space_suit_items', 'gtceu:quarktech_leggings')
|
||||
event.add('ad_astra:space_suit_items', 'gtceu:quarktech_boots')
|
||||
|
||||
event.remove('minecraft:wool', 'ad_astra:glacian_fur')
|
||||
|
||||
global.AD_ASTRA_WOOD.forEach(wood => {
|
||||
|
||||
if (wood.log) {
|
||||
event.add('minecraft:logs', wood.log)
|
||||
event.add('minecraft:logs_that_burn', wood.log)
|
||||
}
|
||||
|
||||
if (wood.stripped_log) {
|
||||
event.add('minecraft:logs', wood.stripped_log)
|
||||
event.add('minecraft:logs_that_burn', wood.stripped_log)
|
||||
}
|
||||
|
||||
if (wood.isHardwood == true) {
|
||||
event.add('tfg:hardwood', wood.logs)
|
||||
} else {
|
||||
event.add('tfg:softwood', wood.logs)
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
const registerAdAstraBlockTags = (event) => {
|
||||
|
|
|
|||
|
|
@ -60,14 +60,16 @@ const generateCutterRecipe = (event, input, output, duration, EUt, id) => {
|
|||
* Function for generating greenhouse recipes.
|
||||
*
|
||||
* @param {*} event
|
||||
* @param {string} input -Item
|
||||
* @param {number} fluid_amount -mB
|
||||
* @param {string} output -Item
|
||||
* @param {string} input -Item (Not consumed)
|
||||
* @param {number} fluid_amount -mB (uses #tfg:clean_water)
|
||||
* @param {string} output -Item (Chanced output uses input item)
|
||||
* @param {string} id -Recipe ID
|
||||
* @param {string} dimension -Dimension ID
|
||||
* @param {number} fertiliser_count
|
||||
* @param {string} output_seconday -Item (Optional, if there should be a third output)
|
||||
* @param {string} tier - GTValues.VA[] (Optional, defaults to LV)
|
||||
*/
|
||||
const generateGreenHouseRecipe = (event, input, fluid_amount, output, id, dimension, fertiliser_count) => {
|
||||
const generateGreenHouseRecipe = (event, input, fluid_amount, output, id, dimension, fertiliser_count, output_secondary, tier) => {
|
||||
|
||||
// Без удобрения (Without fertilizer)
|
||||
let r = event.recipes.gtceu.greenhouse(id)
|
||||
|
|
@ -78,10 +80,18 @@ const generateGreenHouseRecipe = (event, input, fluid_amount, output, id, dimens
|
|||
.chancedOutput(input, 750, 0)
|
||||
.chancedOutput(input, 500, 0)
|
||||
.duration(36000) // 30 mins
|
||||
.EUt(GTValues.VA[GTValues.LV])
|
||||
|
||||
if (dimension != null)
|
||||
if (dimension != null){
|
||||
r.dimension(dimension)
|
||||
}
|
||||
if (output_secondary != null){
|
||||
r.chancedOutput(output_secondary, 750, 0)
|
||||
}
|
||||
if (tier != null){
|
||||
r.EUt(tier)
|
||||
} else {
|
||||
r.EUt(GTValues.VA[GTValues.LV])
|
||||
}
|
||||
|
||||
// С удобрением (With fertilizer)
|
||||
r = event.recipes.gtceu.greenhouse(`${id}_fertilized`)
|
||||
|
|
@ -93,10 +103,18 @@ const generateGreenHouseRecipe = (event, input, fluid_amount, output, id, dimens
|
|||
.chancedOutput(input, 4000, 0)
|
||||
.chancedOutput(input, 3000, 0)
|
||||
.duration(12000) // 10 mins
|
||||
.EUt(GTValues.VA[GTValues.LV])
|
||||
|
||||
if (dimension != null)
|
||||
if (dimension != null){
|
||||
r.dimension(dimension)
|
||||
}
|
||||
if (output_secondary != null){
|
||||
r.chancedOutput(output_secondary, 4000, 0)
|
||||
}
|
||||
if (tier != null){
|
||||
r.EUt(tier)
|
||||
} else {
|
||||
r.EUt(GTValues.VA[GTValues.LV])
|
||||
}
|
||||
}
|
||||
//#endregion
|
||||
|
||||
|
|
@ -279,4 +297,177 @@ function addCircuitToRecipe(event, recipeId, circuitNumber) {
|
|||
recipe.json.add("inputs", inputs);
|
||||
});
|
||||
}
|
||||
//#endregion
|
||||
|
||||
//#region Wood Builder
|
||||
|
||||
/**
|
||||
* Generates most basic wooden recipes.
|
||||
*
|
||||
* All parameters are optional. Name is used for the ID.
|
||||
*
|
||||
* @param {*} event
|
||||
* @param {string} name -Name of the wood.
|
||||
* @param {string} lumber -ID for the lumber.
|
||||
* @param {string} logs -Tag or ID for all the logs.
|
||||
* @param {string} log -ID for the regular log.
|
||||
* @param {string} stripped_log -ID for the stripped log.
|
||||
* @param {string} plank -ID for planks.
|
||||
* @param {string} stair -ID for stairs.
|
||||
* @param {string} slab -ID for slabs.
|
||||
* @param {string} door -ID for the door.
|
||||
* @param {string} trapdoor -ID for the trapdoor.
|
||||
* @param {string} fence -ID for the fence.
|
||||
* @param {string} fence_gate -ID for the fence gate.
|
||||
* @param {string} support -ID for the support.
|
||||
* @param {string} pressure_plate -ID for the pressure plate.
|
||||
* @param {string} button -ID for the button.
|
||||
*/
|
||||
function woodBuilder(event, name, lumber, logs, log, stripped_log, plank, stair, slab, door, trapdoor, fence, fence_gate, support, pressure_plate, button) {
|
||||
|
||||
if (log && stripped_log && name) {
|
||||
event.recipes.gtceu.lathe(`tfg:cutter/${name}_stripped_log_from_log`)
|
||||
.itemInputs(log)
|
||||
.itemOutputs(stripped_log)
|
||||
.duration(50)
|
||||
.EUt(GTValues.VA[GTValues.ULV])
|
||||
}
|
||||
|
||||
if (logs && lumber && name) {
|
||||
event.shapeless(`8x ${lumber}`,
|
||||
[logs, '#forge:tools/saws']
|
||||
).id(`tfg:shapeless/${name}_lumber_from_log`)
|
||||
|
||||
generateCutterRecipe(event, logs, `16x ${lumber}`, 50, 7, `cutter_${name}_lumber_from_log`)
|
||||
}
|
||||
|
||||
if (plank && lumber && name) {
|
||||
event.shapeless(`4x ${lumber}`,
|
||||
[plank, '#forge:tools/saws']
|
||||
).id(`tfg:shapeless/${name}_lumber_from_plank`)
|
||||
|
||||
generateCutterRecipe(event, plank, `4x ${lumber}`, 50, 7, `cutter_${name}_lumber_from_plank`)
|
||||
|
||||
event.shaped(plank, [
|
||||
'AA',
|
||||
'AA'
|
||||
], {
|
||||
A: lumber,
|
||||
}).id(`tfg:shaped/${name}_plank_from_lumber`)
|
||||
}
|
||||
|
||||
if (slab && lumber && name) {
|
||||
event.shapeless(`2x ${lumber}`,
|
||||
[slab, '#forge:tools/saws']
|
||||
).id(`tfg:shapeless/${name}_lumber_from_slab`)
|
||||
|
||||
generateCutterRecipe(event, slab, `2x ${lumber}`, 50, 7, `cutter_${name}_lumber_from_slab`)
|
||||
}
|
||||
|
||||
if (slab && plank && name) {
|
||||
event.shaped(`6x ${slab}`, [
|
||||
'AAA'
|
||||
], {
|
||||
A: plank,
|
||||
}).id(`tfg:shaped/${name}_slab_from_plank`)
|
||||
}
|
||||
|
||||
if (stair && lumber && name) {
|
||||
event.shapeless(`3x ${lumber}`,
|
||||
[stair, '#forge:tools/saws']
|
||||
).id(`tfg:shapeless/${name}_lumber_from_stair`)
|
||||
|
||||
generateCutterRecipe(event, stair, `3x ${lumber}`, 50, 7, `cutter_${name}_lumber_from_stair`)
|
||||
}
|
||||
|
||||
if (stair && plank && name) {
|
||||
event.shaped(`8x ${stair}`, [
|
||||
'A ',
|
||||
'AA ',
|
||||
'AAA'
|
||||
], {
|
||||
A: plank,
|
||||
}).id(`tfg:shaped/${name}_stair_from_plank`)
|
||||
}
|
||||
|
||||
if (door && lumber && name) {
|
||||
event.shaped(`2x ${door}`, [
|
||||
'AA',
|
||||
'AA',
|
||||
'AA'
|
||||
], {
|
||||
A: lumber,
|
||||
}).id(`tfg:shaped/${name}_door_from_lumber`)
|
||||
}
|
||||
|
||||
if (trapdoor && lumber && name) {
|
||||
event.shaped(`3x ${trapdoor}`, [
|
||||
'AAA',
|
||||
'AAA'
|
||||
], {
|
||||
A: lumber,
|
||||
}).id(`tfg:shaped/${name}_trapdoor_from_lumber_and_plank`)
|
||||
}
|
||||
|
||||
if (fence && lumber && plank && name) {
|
||||
event.shaped(`8x ${fence}`, [
|
||||
'ABA',
|
||||
'ABA'
|
||||
], {
|
||||
A: lumber,
|
||||
B: plank,
|
||||
}).id(`tfg:shaped/${name}_fence_from_lumber_and_plank`)
|
||||
}
|
||||
|
||||
if (fence_gate && lumber && plank && name) {
|
||||
event.shaped(`2x ${fence_gate}`, [
|
||||
'ABA',
|
||||
'ABA'
|
||||
], {
|
||||
A: plank,
|
||||
B: lumber,
|
||||
}).id(`tfg:shaped/${name}_fence_gate_from_lumber_and_plank`)
|
||||
}
|
||||
|
||||
if (support && logs && name) {
|
||||
event.shapeless(`8x ${support}`,
|
||||
[`2x ${logs}`, '#forge:tools/saws']
|
||||
).id(`tfg:shapeless/${name}_support_from_logs`)
|
||||
|
||||
event.recipes.gtceu.assembler(`tfg:assembler/${name}_support_from_logs`)
|
||||
.itemInputs(`2x ${logs}`)
|
||||
.itemOutputs(`8x ${support}`)
|
||||
.duration(50)
|
||||
.circuit(4)
|
||||
.EUt(GTValues.VA[GTValues.ULV])
|
||||
}
|
||||
|
||||
if (pressure_plate && slab && name) {
|
||||
event.shaped(pressure_plate, [
|
||||
' B ',
|
||||
'ACA',
|
||||
' D '
|
||||
], {
|
||||
A: slab,
|
||||
B: '#forge:tools/hammers',
|
||||
C: '#forge:springs',
|
||||
D: '#forge:tools/screwdrivers',
|
||||
}).id(`tfg:shaped/${name}_pressure_plate`)
|
||||
|
||||
event.recipes.gtceu.assembler(`tfg:assembler/${name}_pressure_plate`)
|
||||
.itemInputs(`2x ${slab}`, '#forge:springs')
|
||||
.itemOutputs(`2x ${pressure_plate}`)
|
||||
.duration(50)
|
||||
.circuit(0)
|
||||
.EUt(GTValues.VA[GTValues.ULV])
|
||||
}
|
||||
|
||||
if (button && pressure_plate && name) {
|
||||
event.recipes.gtceu.cutter(`tfg:cutter/${name}_button_from_pressure_plate`)
|
||||
.itemInputs(pressure_plate)
|
||||
.itemOutputs(`6x ${button}`)
|
||||
.duration(50)
|
||||
.EUt(GTValues.VA[GTValues.ULV])
|
||||
}
|
||||
}
|
||||
//#endregion
|
||||
|
|
@ -38,6 +38,7 @@ ServerEvents.tags('item', event => {
|
|||
registerModernMarkingsItemTags(event)
|
||||
registerMoreRedItemTags(event)
|
||||
registerHotOrNotItemTags(event)
|
||||
registerPrimitiveCreaturesItemTags(event)
|
||||
registerRailWaysItemTags(event)
|
||||
registerRnrItemTags(event)
|
||||
registerSophisticatedBackpacksItemTags(event)
|
||||
|
|
@ -237,6 +238,7 @@ ServerEvents.recipes(event => {
|
|||
registerMinecraftRecipes(event)
|
||||
registerModernMarkingRecipes(event)
|
||||
registerMoreRedRecipes(event)
|
||||
registerPrimitiveCreaturesRecipes(event)
|
||||
registerProgrammedCircuitCardRecipes(event)
|
||||
registerRailWaysRecipes(event)
|
||||
registerRnrRecipes(event)
|
||||
|
|
|
|||
|
|
@ -814,10 +814,10 @@ const registerMinecraftRecipes = (event) => {
|
|||
.EUt(420)
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:minecraft/elytra_repairing')
|
||||
.itemInputs('6x tfg:polycaprolactam_fabric', Item.of('minecraft:elytra', '{Damage:2045}').strongNBT())
|
||||
.itemInputs('6x tfg:polycaprolactam_fabric', 'minecraft:elytra')
|
||||
.circuit(4)
|
||||
.itemOutputs(Item.of('minecraft:elytra', "{Damage:0}"))
|
||||
.duration(1600)
|
||||
.duration(800)
|
||||
.EUt(120)
|
||||
|
||||
event.recipes.gtceu.arc_furnace('tfg:minecraft/arc_furnace/recycling/elytra')
|
||||
|
|
@ -1083,4 +1083,6 @@ const registerMinecraftRecipes = (event) => {
|
|||
event.shapeless('2x minecraft:gunpowder',
|
||||
['#forge:tools/mortars', 'tfc:powder/saltpeter', 'tfc:powder/saltpeter', 'tfc:powder/sulfur', 'tfc:powder/charcoal', 'tfc:powder/charcoal', 'tfc:powder/charcoal'])
|
||||
.id('tfg:shapeless/gunpowder_tfc_style')
|
||||
|
||||
event.shapeless('8x minecraft:bone_meal', ['#forge:tools/mortars', 'minecraft:skeleton_skull'])
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2079,4 +2079,5 @@ function removeMinecraftRecipes(event) {
|
|||
//#endregion
|
||||
|
||||
event.remove({ id: 'minecraft:flower_banner_pattern' })
|
||||
event.remove({ id: 'gtceu:assembler/lodestone' })
|
||||
}
|
||||
|
|
@ -2,12 +2,180 @@
|
|||
|
||||
function registerPrimitiveCreaturesLoots(event) {
|
||||
|
||||
event.addEntityLootModifier('kaolinclayze:tfc')
|
||||
// kaolin klayze
|
||||
event.addEntityLootModifier('primitive_creatures:tfc')
|
||||
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
||||
.addWeightedLoot([12,16], ['tfc:kaolin_clay', 'minecraft:clay_ball'])
|
||||
.addLoot('tfc:plant/blood_lily')
|
||||
|
||||
event.addEntityLootModifier('kaolinclayze:golem_2')
|
||||
// graphite glayze
|
||||
event.addEntityLootModifier('primitive_creatures:golem_2')
|
||||
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
||||
.addWeightedLoot([3,5], ['gtceu:rich_raw_graphite'])
|
||||
.addWeightedLoot([2,4], ['gtceu:rich_raw_graphite'])
|
||||
|
||||
|
||||
const CLOTHING_DROP_RATE = 0.05
|
||||
|
||||
// inhabitant - light tan clothes, holds a stone axe
|
||||
event.addEntityLootModifier('primitive_creatures:iloger_1')
|
||||
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
||||
.addWeightedLoot([
|
||||
// the illusion of randomness
|
||||
Item.of('tfc:food/bunchberry', 3),
|
||||
Item.of('tfc:food/cranberry', 4),
|
||||
Item.of('tfc:food/gooseberry', 5),
|
||||
Item.of('tfc:food/blackberry', 6),
|
||||
Item.of('tfc:food/blueberry', 3),
|
||||
Item.of('tfc:food/cloudberry', 4),
|
||||
Item.of('tfc:food/elderberry', 5),
|
||||
Item.of('tfc:food/raspberry', 6),
|
||||
Item.of('tfc:food/snowberry', 3),
|
||||
Item.of('tfc:food/strawberry', 4),
|
||||
Item.of('tfc:food/wintergreen_berry', 5)])
|
||||
.addAlternativesLoot(
|
||||
LootEntry.of('primitive_creatures:grh').when(c => c.randomChance(0.8)),
|
||||
LootEntry.of('gtceu:stone_axe').when(c => c.randomChance(0.3)),
|
||||
LootEntry.of('primitive_creatures:totem_0').when(c => c.randomChance(0.1)),
|
||||
LootEntry.of('primitive_creatures:totem_3').when(c => c.randomChance(0.1)))
|
||||
event.addEntityLootModifier('primitive_creatures:iloger_1')
|
||||
.randomChance(CLOTHING_DROP_RATE)
|
||||
.addWeightedLoot([
|
||||
Item.of('tfc_textile:raw_hat'),
|
||||
Item.of('tfc_textile:raw_shirt'),
|
||||
Item.of('tfc_textile:raw_pants'),
|
||||
Item.of('tfc_textile:raw_socks')])
|
||||
|
||||
// herbalist - brown clothes with a mask that looks like a Creaking
|
||||
event.addEntityLootModifier('primitive_creatures:iloger_2')
|
||||
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
||||
.addWeightedLoot([1,2], ['gtceu:tricalcium_phosphate_dust'])
|
||||
.addAlternativesLoot(
|
||||
LootEntry.of('tfc:plant/field_horsetail').when(c => c.randomChance(0.3)),
|
||||
LootEntry.of('tfc:plant/foxglove').when(c => c.randomChance(0.5)),
|
||||
LootEntry.of('firmalife:beeswax').when(c => c.randomChance(0.8)),
|
||||
LootEntry.of('primitive_creatures:totem_0').when(c => c.randomChance(0.1)),
|
||||
LootEntry.of('primitive_creatures:totem_3').when(c => c.randomChance(0.1)))
|
||||
event.addEntityLootModifier('primitive_creatures:iloger_2')
|
||||
.randomChance(CLOTHING_DROP_RATE)
|
||||
.addWeightedLoot([
|
||||
Item.of('tfc_textile:grizzly_bear_hat'),
|
||||
Item.of('tfc_textile:grizzly_bear_shirt'),
|
||||
Item.of('tfc_textile:grizzly_bear_pants'),
|
||||
Item.of('tfc_textile:grizzly_bear_boots')])
|
||||
|
||||
// bonebreaker - skull helmet, bone armor? hits harder, has knockback
|
||||
event.addEntityLootModifier('primitive_creatures:iloger_3')
|
||||
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
||||
.addWeightedLoot([0,2], ['minecraft:flint'])
|
||||
.addWeightedLoot([1,3], ['minecraft:bone'])
|
||||
.addAlternativesLoot(
|
||||
LootEntry.of('gtceu:stone_hammer').when(c => c.randomChance(0.2)),
|
||||
LootEntry.of('minecraft:skeleton_skull').when(c => c.randomChance(0.1)),
|
||||
LootEntry.of('primitive_creatures:grh').when(c => c.randomChance(0.5))) // battered wool
|
||||
event.addEntityLootModifier('primitive_creatures:iloger_3')
|
||||
.randomChance(CLOTHING_DROP_RATE)
|
||||
.addWeightedLoot([
|
||||
Item.of('tfc_textile:direwolf_hat'),
|
||||
Item.of('tfc_textile:direwolf_shirt'),
|
||||
Item.of('tfc_textile:direwolf_pants'),
|
||||
Item.of('tfc_textile:direwolf_boots')])
|
||||
|
||||
// forager - leaf on head, leafy clothes (like the swamp vanilla villager type), ranged with poison
|
||||
event.addEntityLootModifier('primitive_creatures:iloger_4')
|
||||
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
||||
.addWeightedLoot([1,3], LootEntry.of('minecraft:tipped_arrow')).addPotion("poison")
|
||||
.addAlternativesLoot(
|
||||
LootEntry.of('firmalife:food/nightshade_berry').when(c => c.randomChance(0.7)),
|
||||
LootEntry.of('minecraft:spider_eye').when(c => c.randomChance(0.7)),
|
||||
LootEntry.of('primitive_creatures:totem_0').when(c => c.randomChance(0.1)),
|
||||
LootEntry.of('primitive_creatures:totem_2').when(c => c.randomChance(0.1)))
|
||||
|
||||
// hunter - wears brown and white fur, briefly disappears when hit, ranged with weakness
|
||||
event.addEntityLootModifier('primitive_creatures:iloger_5')
|
||||
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
||||
.addWeightedLoot([1,3], LootEntry.of('minecraft:tipped_arrow')).addPotion("weakness")
|
||||
.addAlternativesLoot(
|
||||
// placeholder for a blowpipe
|
||||
LootEntry.of('minecraft:bamboo').when(c => c.randomChance(0.6)),
|
||||
LootEntry.of('primitive_creatures:grh').when(c => c.randomChance(0.5)), // battered wool
|
||||
LootEntry.of('primitive_creatures:totem_0').when(c => c.randomChance(0.1)),
|
||||
LootEntry.of('primitive_creatures:totem_3').when(c => c.randomChance(0.1)))
|
||||
event.addEntityLootModifier('primitive_creatures:iloger_5')
|
||||
.randomChance(CLOTHING_DROP_RATE)
|
||||
.addWeightedLoot([
|
||||
Item.of('tfc_textile:sabertooth_hat'),
|
||||
Item.of('tfc_textile:sabertooth_shirt'),
|
||||
Item.of('tfc_textile:sabertooth_pants'),
|
||||
Item.of('tfc_textile:sabertooth_boots')])
|
||||
|
||||
// shaman - yellow clothes, throws fireballs
|
||||
event.addEntityLootModifier('primitive_creatures:iloger_6')
|
||||
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
||||
.addWeightedLoot([1,2], ['primitive_creatures:f_1']) // primitive explosives
|
||||
.addWeightedLoot([1,3], ['minecraft:gunpowder'])
|
||||
.addAlternativesLoot(
|
||||
LootEntry.of('primitive_creatures:grh').when(c => c.randomChance(0.5)), // battered wool
|
||||
LootEntry.of('primitive_creatures:totem_2').when(c => c.randomChance(0.1)),
|
||||
LootEntry.of('primitive_creatures:totem_3').when(c => c.randomChance(0.1)))
|
||||
event.addEntityLootModifier('primitive_creatures:iloger_6')
|
||||
.randomChance(CLOTHING_DROP_RATE)
|
||||
.addWeightedLoot([
|
||||
Item.of('tfc_textile:cougar_hat'),
|
||||
Item.of('tfc_textile:cougar_shirt'),
|
||||
Item.of('tfc_textile:cougar_pants'),
|
||||
Item.of('tfc_textile:cougar_boots')])
|
||||
|
||||
// beast tamer - wears tiger fur, holds vanilla sugarcane? fucking summons ravagers
|
||||
event.addEntityLootModifier('primitive_creatures:wiloger')
|
||||
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
||||
.addWeightedLoot([0,2], ['primitive_creatures:grh']) // battered wool
|
||||
.addAlternativesLoot(
|
||||
LootEntry.of('minecraft:lead').when(c => c.randomChance(0.4)),
|
||||
LootEntry.of('primitive_creatures:totem_0').when(c => c.randomChance(0.1)),
|
||||
LootEntry.of('primitive_creatures:totem_3').when(c => c.randomChance(0.1)))
|
||||
event.addEntityLootModifier('primitive_creatures:wiloger')
|
||||
.randomChance(CLOTHING_DROP_RATE)
|
||||
.addWeightedLoot([
|
||||
Item.of('tfc_textile:tiger_hat'),
|
||||
Item.of('tfc_textile:tiger_shirt'),
|
||||
Item.of('tfc_textile:tiger_pants'),
|
||||
Item.of('tfc_textile:tiger_boots')])
|
||||
|
||||
// huntsman - lion fur, holds flint club - stuns you in place when hit
|
||||
event.addEntityLootModifier('primitive_creatures:piloger_9')
|
||||
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
||||
.addAlternativesLoot(
|
||||
LootEntry.of('primitive_creatures:yhgi').when(c => c.randomChance(0.2)), // flint club
|
||||
LootEntry.of('tfc:small_raw_hide').when(c => c.randomChance(0.4)),
|
||||
LootEntry.of('primitive_creatures:grh').when(c => c.randomChance(0.5))) // battered wool
|
||||
event.addEntityLootModifier('primitive_creatures:piloger_9')
|
||||
.randomChance(CLOTHING_DROP_RATE)
|
||||
.addWeightedLoot([
|
||||
Item.of('tfc_textile:lion_hat'),
|
||||
Item.of('tfc_textile:lion_shirt'),
|
||||
Item.of('tfc_textile:lion_pants'),
|
||||
Item.of('tfc_textile:lion_boots')])
|
||||
|
||||
// mercenary
|
||||
event.addEntityLootModifier('primitive_creatures:viloger_10')
|
||||
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
||||
.addWeightedLoot([1,2], ['minecraft:emerald'])
|
||||
.addAlternativesLoot(
|
||||
LootEntry.of('primitive_creatures:grh').when(c => c.randomChance(0.8)), // battered wool
|
||||
LootEntry.of('gtceu:stone_knife').when(c => c.randomChance(0.3)),
|
||||
LootEntry.of('primitive_creatures:totem_2').when(c => c.randomChance(0.1)),
|
||||
LootEntry.of('primitive_creatures:totem_3').when(c => c.randomChance(0.1)))
|
||||
event.addEntityLootModifier('primitive_creatures:viloger_10')
|
||||
.randomChance(CLOTHING_DROP_RATE)
|
||||
.addWeightedLoot([
|
||||
Item.of('tfc_textile:raw_hat'),
|
||||
Item.of('tfc_textile:raw_shirt'),
|
||||
Item.of('tfc_textile:raw_pants'),
|
||||
Item.of('tfc_textile:raw_socks')])
|
||||
|
||||
// mistah beeeaaaasssstt
|
||||
event.addEntityLootModifier('primitive_creatures:beast')
|
||||
.removeLoot(ItemFilter.ALWAYS_TRUE)
|
||||
.addWeightedLoot([4,8], ['minecraft:bone'])
|
||||
// raw meat?
|
||||
}
|
||||
44
kubejs/server_scripts/primitive_creatures/recipes.js
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
// priority: 0
|
||||
|
||||
function registerPrimitiveCreaturesRecipes(event) {
|
||||
|
||||
// terrible idol crafting
|
||||
event.remove({ id: 'primitive_creatures:h' })
|
||||
// the brown idol -> brown dye
|
||||
event.remove({ id: 'primitive_creatures:eg' })
|
||||
// craft flint club
|
||||
event.remove({ id: 'primitive_creatures:rwtge' })
|
||||
// battered wool to wool block
|
||||
event.remove({ id: 'primitive_creatures:egwgew' })
|
||||
// lodestone?
|
||||
event.remove({ id: 'primitive_creatures:hhg' })
|
||||
|
||||
// craft fortified flint club
|
||||
event.replaceInput({ id: 'primitive_creatures:wegfweg' }, 'primitive_creatures:tt_5', '#tfc:nuggets')
|
||||
event.replaceInput({ id: 'primitive_creatures:wegfweg' }, 'primitive_creatures:grh', 'tfc:wool')
|
||||
|
||||
event.recipes.tfc.knapping(
|
||||
'tfg:flint_club_head',
|
||||
'tfg:flint',
|
||||
[
|
||||
' XXX ',
|
||||
' XXX ',
|
||||
' X ',
|
||||
' XXX ',
|
||||
' X '
|
||||
]
|
||||
).outsideSlotRequired(false)
|
||||
.id('tfg:knapping/flint_club_head')
|
||||
|
||||
// craft flint club
|
||||
event.shapeless('primitive_creatures:yhgi', ['tfg:flint_club_head', '#forge:rods/wooden'])
|
||||
.id('tfg:shapeless/flint_club')
|
||||
|
||||
// turn battered wool into tfc wool
|
||||
event.shapeless('tfc:wool', ['primitive_creatures:grh', 'primitive_creatures:grh', '#forge:tools/knives'])
|
||||
.id('tfg:shapeless/cleaning_battered_wool')
|
||||
|
||||
// mud idol into mud
|
||||
event.shapeless('6x tfc:daub', ['primitive_creatures:totem_3'])
|
||||
.id('tfg:shapeless/totem_3_decomp')
|
||||
}
|
||||
28
kubejs/server_scripts/primitive_creatures/tags.js
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
// priority: 0
|
||||
|
||||
function registerPrimitiveCreaturesItemTags(event) {
|
||||
const DISABLED_ITEMS = [
|
||||
// idol fragment (combine to make a terrible idol)
|
||||
'primitive_creatures:tt_5',
|
||||
// the terrible idol (spawns illager herobrine)
|
||||
'primitive_creatures:kopo',
|
||||
// the friendly idol (spawns an allay)
|
||||
'primitive_creatures:jjj',
|
||||
]
|
||||
|
||||
DISABLED_ITEMS.forEach(item => {
|
||||
event.removeAllTagsFrom(item)
|
||||
event.add('c:hidden_from_recipe_viewers', item)
|
||||
})
|
||||
|
||||
// This tag doesn't actually do anything, as the list is hardcoded into the mod,
|
||||
// but it makes it easier to find what they will accept
|
||||
event.add('primitive_creatures:mercenary_payment', 'minecraft:rabbit_foot')
|
||||
event.add('primitive_creatures:mercenary_payment', 'minecraft:leather')
|
||||
event.add('primitive_creatures:mercenary_payment', 'minecraft:scute')
|
||||
event.add('primitive_creatures:mercenary_payment', 'minecraft:redstone')
|
||||
event.add('primitive_creatures:mercenary_payment', 'minecraft:gunpowder')
|
||||
event.add('primitive_creatures:mercenary_payment', 'minecraft:spider_eye')
|
||||
event.add('primitive_creatures:mercenary_payment', 'minecraft:flint')
|
||||
event.add('primitive_creatures:mercenary_payment', 'minecraft:emerald')
|
||||
}
|
||||
|
|
@ -1,7 +1,10 @@
|
|||
// priority: 0
|
||||
|
||||
function registerSpeciesRecipes(event) {
|
||||
event.remove({ mod: 'species' })
|
||||
global.SPECIES_DISABLED_ITEMS.forEach(item => {
|
||||
event.remove({ input: item })
|
||||
event.remove({ output: item })
|
||||
})
|
||||
|
||||
event.shapeless('species:music_disc_dial', ['etched:blank_music_disc', 'species:birt_egg'])
|
||||
|
||||
|
|
|
|||
|
|
@ -295,4 +295,11 @@ const registerTFCRecipes = (event) => {
|
|||
]).id('tfc:shapeless/jar_lid')
|
||||
|
||||
event.replaceInput({ mod: 'tfc' }, 'minecraft:sugar', '#tfg:sugars')
|
||||
|
||||
// Sea Water
|
||||
event.recipes.tfc.barrel_instant()
|
||||
.inputItem(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Salt, 1))
|
||||
.inputFluid(Fluid.of('minecraft:water', 1000))
|
||||
.outputFluid(Fluid.of('tfc:salt_water', 1000))
|
||||
.id('tfg:barrel/water_to_salt_water')
|
||||
}
|
||||
|
|
|
|||
|
|
@ -128,6 +128,7 @@ function removeTFCRecipes(event) {
|
|||
|
||||
event.remove({ id: `tfc:crafting/windmill_blade` })
|
||||
event.remove({ id: `tfc:barrel/dye/bleach_windmill_blades` })
|
||||
event.remove({ id: 'tfc:barrel/fresh_to_salt_water' })
|
||||
|
||||
global.MINECRAFT_DYE_NAMES.forEach(dye => {
|
||||
event.remove({ id: `tfc:barrel/dye/${dye}_windmill_blade` })
|
||||
|
|
|
|||
|
|
@ -64,6 +64,9 @@ const registerTFCItemTags = (event) => {
|
|||
event.add('tfg:ferments_to_rennet', 'firmalife:food/fig')
|
||||
event.add('tfg:ferments_to_rennet', 'tfc:plant/ivy')
|
||||
|
||||
//Plants
|
||||
event.add('tfc:plants', '#tfc:wild_fruits')
|
||||
|
||||
// Для складывания
|
||||
event.add('tfc:pileable_ingots', '#forge:ingots')
|
||||
event.add('tfc:pileable_sheets', '#forge:plates')
|
||||
|
|
|
|||
|
|
@ -42,6 +42,11 @@ const registerTFGItemSize = (event) => {
|
|||
event.itemSize('tfg:fishing_net/tin_alloy', 'large', 'medium', 'tin_alloy_fishing_net')
|
||||
event.itemSize('tfg:fishing_net/magnalium', 'large', 'medium', 'magnalium_fishing_net')
|
||||
|
||||
event.itemSize('tfg:trowel', 'large', 'medium', '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')
|
||||
|
||||
|
|
@ -64,6 +69,10 @@ const registerTFGSupportData = (event) => {
|
|||
|
||||
event.support(`tfg:${stone}_support_horizontal`, 2, 2, 4, `${stone}_support`)
|
||||
})
|
||||
|
||||
global.AD_ASTRA_WOOD.forEach(wood => {
|
||||
event.support(`tfg:${wood.name}_support_horizontal`, 2, 2, 4, `${wood.name}_support`)
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -459,6 +459,8 @@ function registerTFGFoodRecipes(event) {
|
|||
|
||||
cookingRecipe("corn_tortilla", "firmalife:food/masa", "firmalife:food/corn_tortilla")
|
||||
|
||||
cookingRecipe("baked_potato", "tfc:food/potato", "tfc:food/baked_potato")
|
||||
|
||||
cookingRecipe("boiled_egg", "#firmalife:foods/raw_eggs", "tfc:food/boiled_egg")
|
||||
.inputFluids(JsonIO.of({ amount: 200, value: { tag: "tfg:clean_water" }}))
|
||||
|
||||
|
|
|
|||
|
|
@ -745,4 +745,64 @@ function registerTFGMiscellaneousRecipes(event) {
|
|||
.itemOutputs('gtceu:quantum_eye')
|
||||
.duration(24 * 20)
|
||||
.EUt(480)
|
||||
|
||||
// Harvest Baskets
|
||||
|
||||
event.shaped('tfg:harvest_basket', [
|
||||
'BDB',
|
||||
'ACA',
|
||||
'AAA'
|
||||
], {
|
||||
A: 'tfg:soaked_hardwood_strip',
|
||||
B: ChemicalHelper.get(TagPrefix.bolt, GTMaterials.SterlingSilver, 1),
|
||||
C: 'tfc:glue',
|
||||
D: ChemicalHelper.get(TagPrefix.rodLong, GTMaterials.TreatedWood, 1),
|
||||
}).id('tfg:shaped/harvest_basket_from_wood')
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:assembler/harvest_basket_from_wood')
|
||||
.itemInputs(
|
||||
'5x tfg:soaked_hardwood_strip',
|
||||
ChemicalHelper.get(TagPrefix.bolt, GTMaterials.SterlingSilver, 2),
|
||||
ChemicalHelper.get(TagPrefix.rodLong, GTMaterials.TreatedWood, 1)
|
||||
)
|
||||
.inputFluids(Fluid.of('gtceu:glue', 50))
|
||||
.itemOutputs('tfg:harvest_basket')
|
||||
.duration(100)
|
||||
.EUt(GTValues.VA[GTValues.ULV])
|
||||
|
||||
event.shaped('tfg:harvest_basket', [
|
||||
'BDB',
|
||||
'ACA',
|
||||
'AAA'
|
||||
], {
|
||||
A: 'tfc:soaked_papyrus_strip',
|
||||
B: ChemicalHelper.get(TagPrefix.bolt, GTMaterials.SterlingSilver, 1),
|
||||
C: 'tfc:glue',
|
||||
D: ChemicalHelper.get(TagPrefix.rodLong, GTMaterials.TreatedWood, 1),
|
||||
}).id('tfg:shaped/harvest_basket_from_papyrus')
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:assembler/harvest_basket_from_papyrus')
|
||||
.itemInputs(
|
||||
'5x tfc:soaked_papyrus_strip',
|
||||
ChemicalHelper.get(TagPrefix.bolt, GTMaterials.SterlingSilver, 2),
|
||||
ChemicalHelper.get(TagPrefix.rodLong, GTMaterials.TreatedWood, 1)
|
||||
)
|
||||
.inputFluids(Fluid.of('gtceu:glue', 50))
|
||||
.itemOutputs('tfg:harvest_basket')
|
||||
.duration(100)
|
||||
.EUt(GTValues.VA[GTValues.ULV])
|
||||
|
||||
event.recipes.gtceu.assembler('tfg:assembler/aluminium_harvest_basket')
|
||||
.itemInputs(
|
||||
ChemicalHelper.get(TagPrefix.plate, GTMaterials.Aluminium, 3),
|
||||
ChemicalHelper.get(TagPrefix.foil, GTMaterials.Aluminium, 2),
|
||||
ChemicalHelper.get(TagPrefix.bolt, GTMaterials.Steel, 2),
|
||||
ChemicalHelper.get(TagPrefix.rodLong,
|
||||
GTMaterials.Aluminium, 1)
|
||||
)
|
||||
.inputFluids(Fluid.of('gtceu:cobalt_brass', 144))
|
||||
.itemOutputs('tfg:aluminium_harvest_basket')
|
||||
.duration(200)
|
||||
.circuit(4)
|
||||
.EUt(GTValues.VA[GTValues.LV])
|
||||
}
|
||||
|
|
|
|||
|
|
@ -85,6 +85,12 @@ function registerTFGPapermakingRecipes(event) {
|
|||
.inputs('tfg:hardwood_strip', TFC.fluidStackIngredient('#tfc:water', 100))
|
||||
.outputItem('tfg:soaked_hardwood_strip')
|
||||
.id('tfg:barrel/soak_hardwood_strip')
|
||||
event.recipes.gtceu.chemical_bath('tfg:chemical_bath/soak_hardwood_strips')
|
||||
.inputFluids( JsonIO.of({ amount: 100, value: { tag: "tfc:any_water" }}))
|
||||
.itemInputs('tfg:hardwood_strip')
|
||||
.itemOutputs('tfg:soaked_hardwood_strip')
|
||||
.duration(200)
|
||||
.EUt(GTValues.VA[GTValues.ULV])
|
||||
|
||||
//Create Hardwood Dust using Quern and Millstone/Crushing Wheels
|
||||
event.recipes.gtceu.macerator('tfg:macerator/macerate_hardwood_strips')
|
||||
|
|
|
|||
|
|
@ -376,4 +376,27 @@ function registerTFGRecyclingRecipes(event) {
|
|||
.duration(GTMaterials.Titanium.getMass() * 6)
|
||||
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
|
||||
.EUt(GTValues.VA[GTValues.LV])
|
||||
|
||||
//Aluminium Harvest Basket
|
||||
event.recipes.gtceu.macerator('tfg:macerator/recycling/aluminium_harvest_basket')
|
||||
.itemInputs('tfg:aluminium_harvest_basket')
|
||||
.itemOutputs(
|
||||
ChemicalHelper.get(TagPrefix.dust, GTMaterials.Aluminium, 2),
|
||||
ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Steel, 1),
|
||||
ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.CobaltBrass, 2)
|
||||
)
|
||||
.duration(GTMaterials.Aluminium.getMass() * 2)
|
||||
.category(GTRecipeCategories.MACERATOR_RECYCLING)
|
||||
.EUt(GTValues.VA[GTValues.ULV])
|
||||
|
||||
event.recipes.gtceu.arc_furnace('tfg:arc_furnace/recycling/aluminium_harvest_basket')
|
||||
.itemInputs('tfg:aluminium_harvest_basket')
|
||||
.itemOutputs(
|
||||
ChemicalHelper.get(TagPrefix.ingot, GTMaterials.Aluminium, 2),
|
||||
ChemicalHelper.get(TagPrefix.nugget, GTMaterials.Steel, 1),
|
||||
ChemicalHelper.get(TagPrefix.nugget, GTMaterials.CobaltBrass, 2)
|
||||
)
|
||||
.duration(GTMaterials.Aluminium.getMass() * 2)
|
||||
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
|
||||
.EUt(GTValues.VA[GTValues.LV])
|
||||
}
|
||||
|
|
@ -29,7 +29,7 @@ const registerTFGItemTags = (event) => {
|
|||
//Knapping
|
||||
event.add('tfc:any_knapping', 'minecraft:flint')
|
||||
|
||||
//Tools & Armor
|
||||
//#region Tools & Armor
|
||||
event.add('forge:tools/fishing_nets', 'tfg:fishing_net/wood')
|
||||
event.add('forge:tools/fishing_nets', 'tfg:fishing_net/brass')
|
||||
event.add('forge:tools/fishing_nets', 'tfg:fishing_net/rose_gold')
|
||||
|
|
@ -44,6 +44,10 @@ const registerTFGItemTags = (event) => {
|
|||
event.add('forge:tools/trowels', 'tfg:trowel')
|
||||
event.add('tfc:usable_on_tool_rack', 'tfg:trowel')
|
||||
|
||||
event.add('tfg:harvester', 'tfg:harvest_basket')
|
||||
event.add('tfg:harvester', 'tfg:aluminium_harvest_basket')
|
||||
//#endregion
|
||||
|
||||
// #region Paper from wood
|
||||
event.add('tfg:hardwood_strips', 'tfg:hardwood_strip')
|
||||
event.add('tfg:hardwood_strips', 'tfg:soaked_hardwood_strip')
|
||||
|
|
@ -310,6 +314,7 @@ const registerTFGItemTags = (event) => {
|
|||
//#endregion
|
||||
}
|
||||
|
||||
//#region Blocks
|
||||
const registerTFGBlockTags = (event) => {
|
||||
|
||||
event.add('minecraft:mineable/shovel', 'tfg:ash_pile')
|
||||
|
|
@ -340,8 +345,13 @@ const registerTFGBlockTags = (event) => {
|
|||
event.add('minecraft:base_stone_nether', 'tfg:rock/hardened_dripstone')
|
||||
event.add('tfc:rock/hardened', 'tfg:rock/hardened_dripstone')
|
||||
|
||||
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')
|
||||
|
||||
// #endregion
|
||||
}
|
||||
//#endregion
|
||||
|
||||
//#region Fluids
|
||||
const registerTFGFluidTags = (event) => {
|
||||
|
|
|
|||
|
|
@ -109,4 +109,10 @@ global.BREATHABLE_COMPRESSED_AIRS =
|
|||
'tfg:compressed_heliox_3',
|
||||
'tfg:compressed_trimix',
|
||||
'tfg:compressed_trimix_3'
|
||||
];
|
||||
];
|
||||
|
||||
global.AD_ASTRA_WOOD = [
|
||||
{name: 'aeronos', logs: '#ad_astra:aeronos_caps', log: 'ad_astra:aeronos_stem', stripped_log: null, lumber: 'tfg:wood/lumber/aeronos', plank: 'ad_astra:aeronos_planks', stair: 'ad_astra:aeronos_stairs', slab: 'ad_astra:aeronos_slab', fence: 'ad_astra:aeronos_fence', fence_gate: 'ad_astra:aeronos_fence_gate', door: 'ad_astra:aeronos_door', trapdoor: 'ad_astra:aeronos_trapdoor', button: null, pressure_plate: null, support: 'tfg:aeronos_support', isHardwood: false},
|
||||
{name: 'strophar', logs: '#ad_astra:strophar_caps', log: 'ad_astra:strophar_stem', stripped_log: null, lumber: 'tfg:wood/lumber/strophar', plank: 'ad_astra:strophar_planks', stair: 'ad_astra:strophar_stairs', slab: 'ad_astra:strophar_slab', fence:'ad_astra:strophar_fence', fence_gate: 'ad_astra:strophar_fence_gate', door:'ad_astra:strophar_door', trapdoor: 'ad_astra:strophar_trapdoor', button: null, pressure_plate: null, support: 'tfg:strophar_support', isHardwood: false},
|
||||
{name: 'glacian', logs: '#ad_astra:glacian_logs', log: 'ad_astra:glacian_log', stripped_log: 'ad_astra:stripped_glacian_log', lumber: 'tfg:wood/lumber/glacian', plank: 'ad_astra:glacian_planks', stair: 'ad_astra:glacian_stairs', slab: 'ad_astra:glacian_slab', fence: 'ad_astra:glacian_fence', fence_gate: 'ad_astra:glacian_fence_gate', door: 'ad_astra:glacian_door', trapdoor: 'ad_astra:glacian_trapdoor', button: 'ad_astra:glacian_button', pressure_plate: 'ad_astra:glacian_pressure_plate', support: 'tfg:glacian_support', isHardwood: true},
|
||||
]
|
||||
|
|
@ -72,6 +72,6 @@ TFCEvents.registerFoodTrait(event => {
|
|||
registerTFGFoodTraits(event)
|
||||
})
|
||||
|
||||
Platform.mods.kaolinclayze.name = "Primitive Creatures";
|
||||
Platform.mods.primitive_creatures.name = "Primitive Creatures";
|
||||
Platform.mods.tfg.name = "TerraFirmaGreg";
|
||||
Platform.mods.kubejs.name = "TerraFirmaGreg";
|
||||
|
|
@ -138,4 +138,24 @@ function registerTFGSupportBlocks(event) {
|
|||
.requiresTool(true)
|
||||
})
|
||||
|
||||
global.AD_ASTRA_WOOD.forEach(wood => {
|
||||
event.create(`tfg:${wood.name}_support`, 'tfc:support')
|
||||
.textureAll(`tfg:block/support/${wood.name}_support`)
|
||||
.horizontal(horizontal => {
|
||||
horizontal.textureAll(`tfg:block/support/${wood.name}_support`)
|
||||
horizontal.soundType('wood')
|
||||
horizontal.hardness(2)
|
||||
horizontal.resistance(2)
|
||||
horizontal.mapColor('color_orange')
|
||||
horizontal.tagBlock('minecraft:mineable/axe')
|
||||
horizontal.requiresTool(false)
|
||||
})
|
||||
.soundType('wood')
|
||||
.hardness(2)
|
||||
.resistance(2)
|
||||
.mapColor('color_orange')
|
||||
.tagBlock('minecraft:mineable/axe')
|
||||
.requiresTool(false)
|
||||
})
|
||||
|
||||
}
|
||||
|
|
@ -13,12 +13,20 @@ const registerTFGItems = (event) => {
|
|||
event.create('tfg:vitrified_pearl')
|
||||
// #endregion
|
||||
|
||||
// #region Orbit dimension markers
|
||||
// #region Space
|
||||
|
||||
// Orbit dimension markers
|
||||
event.create('tfg:marker/earth_orbit').tag('c:hidden_from_recipe_viewers')
|
||||
event.create('tfg:marker/moon_orbit').tag('c:hidden_from_recipe_viewers')
|
||||
event.create('tfg:marker/mars_orbit').tag('c:hidden_from_recipe_viewers')
|
||||
event.create('tfg:marker/venus_orbit').tag('c:hidden_from_recipe_viewers')
|
||||
event.create('tfg:marker/mercury_orbit').tag('c:hidden_from_recipe_viewers')
|
||||
|
||||
global.AD_ASTRA_WOOD.forEach(wood => {
|
||||
event.create(`tfg:wood/lumber/${wood.name}`)
|
||||
.translationKey(`item.tfg.${wood.name}_lumber`)
|
||||
.tag('tfc:lumber')
|
||||
})
|
||||
// #endregion
|
||||
|
||||
// #region Paper making
|
||||
|
|
@ -157,18 +165,10 @@ const registerTFGItems = (event) => {
|
|||
|
||||
//#region Misc
|
||||
event.create('tfg:paraffin_wax')
|
||||
.translationKey('item.tfg.paraffin_wax')
|
||||
|
||||
event.create('tfg:conifer_rosin')
|
||||
.translationKey('item.tfg.conifer_rosin')
|
||||
|
||||
event.create('tfg:foil_pack')
|
||||
.translationKey('item.tfg.foil_pack')
|
||||
.texture('tfg:item/foil_pack')
|
||||
|
||||
event.create('tfg:clean_foil_pack')
|
||||
.translationKey('item.tfg.clean_foil_pack')
|
||||
.texture('tfg:item/clean_foil_pack')
|
||||
event.create('tfg:flint_club_head')
|
||||
//#endregion
|
||||
|
||||
//#region Cloth & String
|
||||
|
|
@ -198,6 +198,17 @@ const registerTFGItems = (event) => {
|
|||
event.create('tfg:armor_stand_arms')
|
||||
.translationKey('item.tfg.armor_stand_arms')
|
||||
|
||||
event.create('tfg:harvest_basket')
|
||||
.translationKey('item.tfg.harvest_basket')
|
||||
.parentModel('tfg:item/harvest_basket')
|
||||
.maxDamage(128)
|
||||
|
||||
event.create('tfg:aluminium_harvest_basket')
|
||||
.translationKey('item.tfg.aluminium_harvest_basket')
|
||||
.parentModel('tfg:item/aluminium_harvest_basket')
|
||||
.unstackable()
|
||||
|
||||
//Fishing Nets
|
||||
event.create('tfg:fishing_net/wood')
|
||||
.translationKey('item.tfg.fishing_net.wood')
|
||||
.parentModel('tfg:item/fishing_nets/wood_fishing_net')
|
||||
|
|
|
|||