This commit is contained in:
Pyritie 2025-10-11 00:04:03 +01:00
commit af4777a6bc
36 changed files with 930 additions and 302 deletions

View file

@ -2,7 +2,7 @@
## [Unreleased]
### Changes
- Added more meats for mars animals, and some new textures (#2001) @Redeix
- Added meats for the surfer, cruncher, stackatick and primitive creatures mobs (#2001) @Redeix
- Added a recipe for turning glass dust into lamp glass @Pyritie
- Added more recipe unification for quartz, certus quartz, create's minerals, fixed wall chiseling recipes (#2005) @vidal-adrien
### Bug fixes

View file

@ -0,0 +1,6 @@
{
"parent": "minecraft:block/cube_all",
"textures": {
"all": "minecraft:block/blackstone"
}
}

View file

@ -125,7 +125,7 @@
"entity": "species:cruncher",
"scale": 0.7,
"name": "Cruncher",
"text": "$(thing)Crunchers$() are territorial $(item)miniboss$() predators. Feed them meat to stop their regeneration."
"text": "$(thing)Crunchers$() are territorial $(item)miniboss$() predators. Feed them meat to stop their regeneration. They can also be eaten."
},
{
"type": "patchouli:entity",
@ -156,7 +156,7 @@
"entity": "species:springling",
"scale": 0.9,
"name": "Springling",
"text": "$(thing)Springlings$() are wild animals found above -108°C. Feeding them $(item)Saplings$() will let you ride them and extend their extremely long necks."
"text": "$(thing)Springlings$() are wild animals found above -108°C. Feeding them $(item)Saplings$() will let you ride them and extend their extremely long necks. They can also be eaten."
},
{
"type": "patchouli:entity",
@ -185,7 +185,7 @@
"entity": "species:stackatick",
"scale": 0.4,
"name": "Stackatick",
"text": "One of the few animals that can survive the Martian desert, $(thing)Stackaticks$() are passive prey animals. They cannot be eaten."
"text": "One of the few animals that can survive the Martian desert, $(thing)Stackaticks$() are passive prey animals. They can also be eaten."
}
],
"read_by_default": true

View file

@ -811,8 +811,8 @@
"item.tfg.spawn_egg.sniffer": "Sniffer Spawn Egg",
"item.tfg.food.raw_wraptor": "Raw Wraptor",
"item.tfg.food.cooked_wraptor": "Cooked Wraptor",
"item.tfg.food.raw_springling_chops": "Raw Springling Chops",
"item.tfg.food.cooked_springling_chops": "Cooked Springling Chops",
"item.tfg.food.raw_springling_collar": "Raw Springling Collar",
"item.tfg.food.cooked_springling_collar": "Cooked Springling Collar",
"item.tfg.food.raw_walker_steak": "Raw Walker Steak",
"item.tfg.food.cooked_walker_steak": "Cooked Walker Steak",
"item.tfg.food.raw_glider_wings": "Raw Glider Wings",
@ -823,6 +823,15 @@
"item.tfg.food.cooked_crusher_meat": "Cooked Crusher Meat",
"item.tfg.food.raw_goober_meat": "Raw Goober Meat",
"item.tfg.food.cooked_goober_meat": "Cooked Goober Meat",
"item.tfg.food.raw_long_pig_filet": "Raw Long Pig Filet",
"item.tfg.food.cooked_long_pig_filet": "Cooked Long Pig Filet",
"item.tfg.food.raw_surfer_steak": "Raw Surfer Steak",
"item.tfg.food.cooked_surfer_steak": "Cooked Surfer Steak",
"item.tfg.food.raw_stackatick_chunks": "Raw Stackatick Chunks",
"item.tfg.food.raw_stickastackatick": "Raw Stick'a'Stackatick",
"item.tfg.food.cooked_stickastackatick": "Cooked Stick'a'Stackatick",
"item.tfg.food.raw_cruncher_ribs": "Raw Cruncher Ribs",
"item.tfg.food.cooked_cruncher_ribs": "Cooked Cruncher Ribs",
"item.tfg.roasted_sunflower_seeds": "Roasted Sunflower Seeds",
"item.tfg.sunflower_seeds": "Sunflower Seed",
"item.tfg.sunflower_product": "Sunflower Cap",

View file

@ -551,6 +551,29 @@
"item.tfg.food.raw_sniffer_beef": "Bife de Farejador Cru",
"item.tfg.food.cooked_sniffer_beef": "Bife de Farejador Cozido",
"item.tfg.spawn_egg.sniffer": "Ovo Gerador de Farejador",
"item.tfg.food.raw_wraptor": "Carne de Distráptor Crua",
"item.tfg.food.cooked_wraptor": "Carne de Distráptor Cozida",
"item.tfg.food.raw_springling_collar": "Colar de Pescoçudo Cru",
"item.tfg.food.cooked_springling_collar": "Colar de Pescoçudo Cozido",
"item.tfg.food.raw_walker_steak": "Bife Andador Cru",
"item.tfg.food.cooked_walker_steak": "Bife Andador Cozido",
"item.tfg.food.raw_glider_wings": "Asas de Planador Cruas",
"item.tfg.food.cooked_glider_wings": "Asas de Planador Cozidas",
"item.tfg.food.raw_whole_soarer": "Carne de Voador Inteira Cru",
"item.tfg.food.cooked_whole_soarer": "Carne de Voador Inteira Cozida",
"item.tfg.food.raw_crusher_meat": "Carne de Esmagador Cru",
"item.tfg.food.cooked_crusher_meat": "Carne de Esmagador Cozida",
"item.tfg.food.raw_goober_meat": "Carne Espirrão Cru",
"item.tfg.food.cooked_goober_meat": "Carne Espirrão Cozida",
"item.tfg.food.raw_long_pig_filet": "Filé de \"Porco\" Cru",
"item.tfg.food.cooked_long_pig_filet": "Filé de \"Porco\" Cozido",
"item.tfg.food.raw_surfer_steak": "Bife de Surfista Cru",
"item.tfg.food.cooked_surfer_steak": "Bife de Surfista Cozido",
"item.tfg.food.raw_stackatick_chunks": "Pedaços de Carraplato Cru",
"item.tfg.food.raw_stickastackatick": "Carraplato no Taco Cru",
"item.tfg.food.cooked_stickastackatick": "Carraplato no Taco Cozido",
"item.tfg.food.raw_cruncher_ribs": "Costelas de mastigador Cru",
"item.tfg.food.cooked_cruncher_ribs": "Costelas de Mastigador Cozidas",
"item.tfg.roasted_sunflower_seeds": "Sementes de Girassol Torradas",
"item.tfg.sunflower_seeds": "Sementes de Girassol",
"item.tfg.sunflower_product": "Chapéu de Girassol",

View file

@ -0,0 +1,96 @@
{
"format_version": "1.9.0",
"credit": "Made with Blockbench",
"textures": {
"0": "tfg:item/food/cooked_stickastackatick",
"particle": "tfg:item/food/cooked_stickastackatick"
},
"elements": [
{
"from": [7.5, 0, 7.5],
"to": [8.5, 16, 8.5],
"rotation": {"angle": 0, "axis": "y", "origin": [7.5, 0, 7.5]},
"faces": {
"north": {"uv": [0, 0, 1, 16], "texture": "#0"},
"east": {"uv": [0, 0, 1, 16], "texture": "#0"},
"south": {"uv": [0, 0, 1, 16], "texture": "#0"},
"west": {"uv": [0, 0, 1, 16], "texture": "#0"},
"up": {"uv": [1, 1, 0, 0], "texture": "#0"},
"down": {"uv": [1, 15, 0, 16], "texture": "#0"}
}
},
{
"from": [6.5, 5, 6.5],
"to": [9.5, 8, 9.5],
"rotation": {"angle": 0, "axis": "x", "origin": [7.5, 5, 6.5]},
"faces": {
"north": {"uv": [1, 0, 4, 3], "texture": "#0"},
"east": {"uv": [4, 0, 1, 3], "texture": "#0"},
"south": {"uv": [1, 3, 4, 0], "texture": "#0"},
"west": {"uv": [4, 3, 1, 0], "texture": "#0"},
"up": {"uv": [4, 0, 1, 3], "texture": "#0"},
"down": {"uv": [1, 0, 4, 3], "texture": "#0"}
}
},
{
"from": [6.5, 8, 6.5],
"to": [9.5, 11, 9.5],
"rotation": {"angle": -45, "axis": "y", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [1, 0, 4, 3], "texture": "#0"},
"east": {"uv": [4, 0, 1, 3], "texture": "#0"},
"south": {"uv": [1, 3, 4, 0], "texture": "#0"},
"west": {"uv": [4, 3, 1, 0], "texture": "#0"},
"up": {"uv": [4, 0, 1, 3], "texture": "#0"},
"down": {"uv": [1, 0, 4, 3], "texture": "#0"}
}
},
{
"from": [6.5, 11, 6.5],
"to": [9.5, 14, 9.5],
"rotation": {"angle": 0, "axis": "y", "origin": [8, 11, 8]},
"faces": {
"north": {"uv": [1, 0, 4, 3], "texture": "#0"},
"east": {"uv": [4, 0, 1, 3], "texture": "#0"},
"south": {"uv": [1, 3, 4, 0], "texture": "#0"},
"west": {"uv": [4, 3, 1, 0], "texture": "#0"},
"up": {"uv": [4, 0, 1, 3], "texture": "#0"},
"down": {"uv": [1, 0, 4, 3], "texture": "#0"}
}
}
],
"display": {
"thirdperson_righthand": {
"translation": [0, 3, 1.25],
"scale": [0.6, 0.6, 0.6]
},
"thirdperson_lefthand": {
"translation": [0, 3, 1.25],
"scale": [0.6, 0.6, 0.6]
},
"firstperson_righthand": {
"rotation": [-85, 0, 6],
"translation": [-1.25, 3.75, 1.5],
"scale": [0.75, 0.75, 0.75]
},
"firstperson_lefthand": {
"rotation": [-85, 0, 6],
"translation": [-1.25, 3.75, 1.5],
"scale": [0.75, 0.75, 0.75]
},
"ground": {
"translation": [0, 2, 0],
"scale": [0.5, 0.5, 0.5]
},
"gui": {
"rotation": [0, 41, -45]
},
"head": {
"rotation": [0, -90, -90],
"translation": [0, -4, -11.25]
},
"fixed": {
"rotation": [0, -180, 0]
}
}
}

View file

@ -0,0 +1,96 @@
{
"format_version": "1.9.0",
"credit": "Made with Blockbench",
"textures": {
"0": "tfg:item/food/raw_stickastackatick",
"particle": "tfg:item/food/raw_stickastackatick"
},
"elements": [
{
"from": [7.5, 0, 7.5],
"to": [8.5, 16, 8.5],
"rotation": {"angle": 0, "axis": "y", "origin": [7.5, 0, 7.5]},
"faces": {
"north": {"uv": [0, 0, 1, 16], "texture": "#0"},
"east": {"uv": [0, 0, 1, 16], "texture": "#0"},
"south": {"uv": [0, 0, 1, 16], "texture": "#0"},
"west": {"uv": [0, 0, 1, 16], "texture": "#0"},
"up": {"uv": [1, 1, 0, 0], "texture": "#0"},
"down": {"uv": [1, 15, 0, 16], "texture": "#0"}
}
},
{
"from": [6.5, 5, 6.5],
"to": [9.5, 8, 9.5],
"rotation": {"angle": 0, "axis": "x", "origin": [7.5, 5, 6.5]},
"faces": {
"north": {"uv": [1, 0, 4, 3], "texture": "#0"},
"east": {"uv": [4, 0, 1, 3], "texture": "#0"},
"south": {"uv": [1, 3, 4, 0], "texture": "#0"},
"west": {"uv": [4, 3, 1, 0], "texture": "#0"},
"up": {"uv": [4, 0, 1, 3], "texture": "#0"},
"down": {"uv": [1, 0, 4, 3], "texture": "#0"}
}
},
{
"from": [6.5, 8, 6.5],
"to": [9.5, 11, 9.5],
"rotation": {"angle": -45, "axis": "y", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [1, 0, 4, 3], "texture": "#0"},
"east": {"uv": [4, 0, 1, 3], "texture": "#0"},
"south": {"uv": [1, 3, 4, 0], "texture": "#0"},
"west": {"uv": [4, 3, 1, 0], "texture": "#0"},
"up": {"uv": [4, 0, 1, 3], "texture": "#0"},
"down": {"uv": [1, 0, 4, 3], "texture": "#0"}
}
},
{
"from": [6.5, 11, 6.5],
"to": [9.5, 14, 9.5],
"rotation": {"angle": 0, "axis": "y", "origin": [8, 11, 8]},
"faces": {
"north": {"uv": [1, 0, 4, 3], "texture": "#0"},
"east": {"uv": [4, 0, 1, 3], "texture": "#0"},
"south": {"uv": [1, 3, 4, 0], "texture": "#0"},
"west": {"uv": [4, 3, 1, 0], "texture": "#0"},
"up": {"uv": [4, 0, 1, 3], "texture": "#0"},
"down": {"uv": [1, 0, 4, 3], "texture": "#0"}
}
}
],
"display": {
"thirdperson_righthand": {
"translation": [0, 3, 1.25],
"scale": [0.6, 0.6, 0.6]
},
"thirdperson_lefthand": {
"translation": [0, 3, 1.25],
"scale": [0.6, 0.6, 0.6]
},
"firstperson_righthand": {
"rotation": [-85, 0, 6],
"translation": [-1.25, 3.75, 1.5],
"scale": [0.75, 0.75, 0.75]
},
"firstperson_lefthand": {
"rotation": [-85, 0, 6],
"translation": [-1.25, 3.75, 1.5],
"scale": [0.75, 0.75, 0.75]
},
"ground": {
"translation": [0, 2, 0],
"scale": [0.5, 0.5, 0.5]
},
"gui": {
"rotation": [0, 41, -45]
},
"head": {
"rotation": [0, -90, -90],
"translation": [0, -4, -11.25]
},
"fixed": {
"rotation": [0, -180, 0]
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 494 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 885 B

After

Width:  |  Height:  |  Size: 373 B

Before After
Before After

Binary file not shown.

After

Width:  |  Height:  |  Size: 406 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 673 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View file

@ -0,0 +1 @@
{"animation": {"frametime": 1, "frames": [{"index": 0, "time":40}, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49]}}

Binary file not shown.

After

Width:  |  Height:  |  Size: 184 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 636 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 484 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 959 B

After

Width:  |  Height:  |  Size: 367 B

Before After
Before After

Binary file not shown.

After

Width:  |  Height:  |  Size: 362 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 797 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View file

@ -0,0 +1 @@
{"animation": {"frametime": 1, "frames": [{"index": 0, "time":40}, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49]}}

Binary file not shown.

After

Width:  |  Height:  |  Size: 473 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 484 B

View file

@ -20,6 +20,7 @@ function registerPrimitiveCreaturesLoots(event) {
// forager - light tan clothes, holds a stone axe
event.addEntityLootModifier('primitive_creatures:iloger_1')
.removeLoot(ItemFilter.ALWAYS_TRUE)
.addWeightedLoot([5, 8], ['tfg:food/raw_long_pig_filet'])
.addWeightedLoot([
// the illusion of randomness
Item.of('tfc:food/bunchberry', 3),
@ -46,10 +47,14 @@ function registerPrimitiveCreaturesLoots(event) {
Item.of('tfc_textile:raw_shirt'),
Item.of('tfc_textile:raw_pants'),
Item.of('tfc_textile:raw_socks')])
event.addEntityLootModifier('primitive_creatures:iloger_1')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfg:food/raw_long_pig_filet'])
// herbalist - brown clothes with a mask that looks like a Creaking
event.addEntityLootModifier('primitive_creatures:iloger_2')
.removeLoot(ItemFilter.ALWAYS_TRUE)
.addWeightedLoot([5, 8], ['tfg:food/raw_long_pig_filet'])
.addWeightedLoot([3,4], ['gtceu:tricalcium_phosphate_dust'])
.addAlternativesLoot(
LootEntry.of('gtceu:cobalt_brass_mortar').damage([0.3, 0.9]).when(c => c.randomChance(0.3)),
@ -63,10 +68,14 @@ function registerPrimitiveCreaturesLoots(event) {
Item.of('tfc_textile:grizzly_bear_shirt'),
Item.of('tfc_textile:grizzly_bear_pants'),
Item.of('tfc_textile:grizzly_bear_boots')])
event.addEntityLootModifier('primitive_creatures:iloger_2')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfg:food/raw_long_pig_filet'])
// bonebreaker - skull helmet, bone armor? hits harder, has knockback
event.addEntityLootModifier('primitive_creatures:iloger_3')
.removeLoot(ItemFilter.ALWAYS_TRUE)
.addWeightedLoot([5, 8], ['tfg:food/raw_long_pig_filet'])
.addWeightedLoot([0,2], ['minecraft:flint'])
.addWeightedLoot([1,3], ['minecraft:bone'])
.addAlternativesLoot(
@ -80,12 +89,16 @@ function registerPrimitiveCreaturesLoots(event) {
Item.of('tfc_textile:direwolf_shirt'),
Item.of('tfc_textile:direwolf_pants'),
Item.of('tfc_textile:direwolf_boots')])
event.addEntityLootModifier('primitive_creatures:iloger_3')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfg:food/raw_long_pig_filet'])
// ambusher - 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([8,12], LootEntry.of('minecraft:tipped_arrow')).addPotion("poison")
.addWeightedLoot([4,8], ['firmalife:food/nightshade_berry'])
.addWeightedLoot([5, 8], ['tfg:food/raw_long_pig_filet'])
.addAlternativesLoot(
LootEntry.of('minecraft:bow').damage([0.3, 0.9]).when(c => c.randomChance(0.5)),
LootEntry.of('primitive_creatures:totem_0').when(c => c.randomChance(0.05)),
@ -98,11 +111,15 @@ function registerPrimitiveCreaturesLoots(event) {
Item.of('tfc_textile:crocodile_shirt'),
Item.of('tfc_textile:crocodile_pants'),
Item.of('tfc_textile:crocodile_boots')])
event.addEntityLootModifier('primitive_creatures:iloger_4')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfg:food/raw_long_pig_filet'])
// hunter - wears brown and white fur, briefly disappears when hit, ranged with weakness
event.addEntityLootModifier('primitive_creatures:iloger_5')
.removeLoot(ItemFilter.ALWAYS_TRUE)
.addWeightedLoot([8,12], LootEntry.of('minecraft:tipped_arrow')).addPotion("weakness")
.addWeightedLoot([5, 8], ['tfg:food/raw_long_pig_filet'])
.addAlternativesLoot(
// placeholder for a blowpipe
LootEntry.of('minecraft:bamboo').when(c => c.randomChance(0.5)),
@ -116,10 +133,14 @@ function registerPrimitiveCreaturesLoots(event) {
Item.of('tfc_textile:sabertooth_shirt'),
Item.of('tfc_textile:sabertooth_pants'),
Item.of('tfc_textile:sabertooth_boots')])
event.addEntityLootModifier('primitive_creatures:iloger_5')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfg:food/raw_long_pig_filet'])
// shaman - yellow clothes, throws fireballs
event.addEntityLootModifier('primitive_creatures:iloger_6')
.removeLoot(ItemFilter.ALWAYS_TRUE)
.addWeightedLoot([5, 8], ['tfg:food/raw_long_pig_filet'])
.addWeightedLoot([1,2], ['primitive_creatures:f_1']) // primitive explosives
.addWeightedLoot([1,3], ['minecraft:gunpowder'])
.addAlternativesLoot(
@ -134,10 +155,14 @@ function registerPrimitiveCreaturesLoots(event) {
Item.of('tfc_textile:cougar_shirt'),
Item.of('tfc_textile:cougar_pants'),
Item.of('tfc_textile:cougar_boots')])
event.addEntityLootModifier('primitive_creatures:iloger_6')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfg:food/raw_long_pig_filet'])
// beast tamer - wears tiger fur, holds vanilla sugarcane? fucking summons ravagers
event.addEntityLootModifier('primitive_creatures:wiloger')
.removeLoot(ItemFilter.ALWAYS_TRUE)
.addWeightedLoot([5, 8], ['tfg:food/raw_long_pig_filet'])
.addWeightedLoot([0,2], ['primitive_creatures:grh']) // battered wool
.addAlternativesLoot(
LootEntry.of('gtceu:cobalt_brass_butchery_knife').damage([0.3, 0.9]).when(c => c.randomChance(0.3)),
@ -151,10 +176,14 @@ function registerPrimitiveCreaturesLoots(event) {
Item.of('tfc_textile:tiger_shirt'),
Item.of('tfc_textile:tiger_pants'),
Item.of('tfc_textile:tiger_boots')])
event.addEntityLootModifier('primitive_creatures:wiloger')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfg:food/raw_long_pig_filet'])
// warrior - lion fur, holds flint club - stuns you in place when hit
event.addEntityLootModifier('primitive_creatures:piloger_9')
.removeLoot(ItemFilter.ALWAYS_TRUE)
.addWeightedLoot([5, 8], ['tfg:food/raw_long_pig_filet'])
.addAlternativesLoot(
LootEntry.of('primitive_creatures:yhgi').when(c => c.randomChance(0.8)), // flint club
LootEntry.of('tfc:small_raw_hide').when(c => c.randomChance(0.4)),
@ -166,10 +195,14 @@ function registerPrimitiveCreaturesLoots(event) {
Item.of('tfc_textile:lion_shirt'),
Item.of('tfc_textile:lion_pants'),
Item.of('tfc_textile:lion_boots')])
event.addEntityLootModifier('primitive_creatures:piloger_9')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfg:food/raw_long_pig_filet'])
// mercenary
event.addEntityLootModifier('primitive_creatures:viloger_10')
.removeLoot(ItemFilter.ALWAYS_TRUE)
.addWeightedLoot([5, 8], ['tfg:food/raw_long_pig_filet'])
.addWeightedLoot([1,2], ['minecraft:emerald'])
.addAlternativesLoot(
LootEntry.of('gtceu:cobalt_brass_knife').damage([0.3, 0.7]).when(c => c.randomChance(0.3)),
@ -183,10 +216,14 @@ function registerPrimitiveCreaturesLoots(event) {
Item.of('tfc_textile:raw_shirt'),
Item.of('tfc_textile:raw_pants'),
Item.of('tfc_textile:raw_socks')])
event.addEntityLootModifier('primitive_creatures:viloger_10')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfg:food/raw_long_pig_filet'])
// huntmaster - miniboss
event.addEntityLootModifier('primitive_creatures:nahida')
.removeLoot(ItemFilter.ALWAYS_TRUE)
.addWeightedLoot([5, 8], ['tfg:food/raw_long_pig_filet'])
.addWeightedLoot([
LootEntry.of('gtceu:cobalt_brass_spade').damage([0.85, 1]),
LootEntry.of('gtceu:cobalt_brass_sickle').damage([0.85, 1]),
@ -209,10 +246,14 @@ function registerPrimitiveCreaturesLoots(event) {
Item.of('tfc_textile:panther_shirt'),
Item.of('tfc_textile:panther_pants'),
Item.of('tfc_textile:panther_boots')])
event.addEntityLootModifier('primitive_creatures:nahida')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfg:food/raw_long_pig_filet'])
// berserker - guy with celtic blue face paint
event.addEntityLootModifier('primitive_creatures:iloger_10')
.removeLoot(ItemFilter.ALWAYS_TRUE)
.addWeightedLoot([5, 8], ['tfg:food/raw_long_pig_filet'])
.addWeightedLoot([
LootEntry.of('gtceu:cobalt_brass_sword').damage([0.85, 1]),
LootEntry.of('sns:burlap_sack'),
@ -225,13 +266,18 @@ function registerPrimitiveCreaturesLoots(event) {
Item.of('tfc_textile:sabertooth_shirt'),
Item.of('tfc_textile:sabertooth_pants'),
Item.of('tfc_textile:sabertooth_boots')])
event.addEntityLootModifier('primitive_creatures:iloger_10')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfg:food/raw_long_pig_filet'])
// mistah beeeaaaasssstt
event.addEntityLootModifier('primitive_creatures:beast')
.removeLoot(ItemFilter.ALWAYS_TRUE)
.addWeightedLoot([20, 30], ['tfg:food/raw_long_pig_filet'])
.addWeightedLoot([12,16], ['minecraft:bone'])
.addWeightedLoot([2,3], ['tfc:large_raw_hide'])
.addWeightedLoot([4,6], ['tfc:blubber'])
// change to our own raw meat?
.addWeightedLoot([20, 30], ['tfc:food/bear'])
event.addEntityLootModifier('primitive_creatures:beast')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([10, 15], ['tfg:food/raw_long_pig_filet'])
}

View file

@ -33,17 +33,29 @@ function registerSpeciesLoots(event) {
event.addEntityLootModifier('species:springling')
.addLoot('tfc:small_raw_hide')
.addWeightedLoot([2, 4], ['minecraft:bone'])
.addWeightedLoot([6, 8], ['tfg:food/raw_springling_chops'])
.addWeightedLoot([6, 8], ['tfg:food/raw_springling_collar'])
event.addEntityLootModifier('species:springling')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([3, 5], ['tfg:food/raw_springling_chops'])
.addWeightedLoot([3, 5], ['tfg:food/raw_springling_collar'])
// TODO: meat
event.addEntityLootModifier('species:cruncher')
.addLoot('tfc:large_raw_hide')
.addWeightedLoot([10, 13], ['minecraft:bone'])
.addWeightedLoot([14, 24], ['tfg:food/raw_cruncher_ribs'])
event.addEntityLootModifier('species:cruncher')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([7, 12], ['tfg:food/raw_cruncher_ribs'])
event.addEntityLootModifier('species:stackatick')
.addWeightedLoot([5, 8], ['tfg:food/raw_stackatick_chunks'])
event.addEntityLootModifier('species:stackatick')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([2, 4], ['tfg:food/raw_stackatick_chunks'])
event.addEntityLootModifier('species:quake')

View file

@ -126,30 +126,12 @@ function registerTFCStoneRecipes(event) {
event.remove({ id: `tfc:crafting/rock/${stone}_mossy_bricks_slab` })
event.remove({ id: `tfc:crafting/rock/${stone}_mossy_bricks_wall` })
//walls
event.remove({ id: `tfc:stonecutting/rock/${stone}_raw_wall` })
event.remove({ id: `tfc:stonecutting/rock/${stone}_cobble_wall` })
event.remove({ id: `tfc:stonecutting/rock/${stone}_mossy_cobble_wall` })
event.remove({ id: `tfc:stonecutting/rock/${stone}_smooth_wall` })
event.remove({ id: `tfc:stonecutting/rock/${stone}_bricks_wall` })
event.remove({ id: `tfc:stonecutting/rock/${stone}_cracked_bricks_wall` })
event.remove({ id: `tfc:stonecutting/rock/${stone}_mossy_bricks_wall` })
// Hardened -> Smooth
event.stonecutting(`tfc:rock/smooth/${stone}`, `tfc:rock/hardened/${stone}`).id(`hardened_${stone}_to_smooth`)
// Chiseled Brick -> Brick
event.stonecutting(`tfc:rock/chiseled/${stone}`, `tfc:rock/bricks/${stone}`).id(`chiseled_${stone}`)
//Walls
event.stonecutting(`2x tfc:rock/raw/${stone}_wall`, `tfc:rock/raw/${stone}`).id(`raw_to_${stone}_raw_wall`)
event.stonecutting(`2x tfc:rock/cobble/${stone}_wall`, `tfc:rock/cobble/${stone}`).id(`cobble_to_${stone}_cobble_wall`)
event.stonecutting(`2x tfc:rock/mossy_cobble/${stone}_wall`, `tfc:rock/mossy_cobble/${stone}`).id(`mossy_cobble_to_${stone}_mossy_cobble_wall`)
event.stonecutting(`2x tfc:rock/smooth/${stone}_wall`, `tfc:rock/smooth/${stone}`).id(`smooth_to_${stone}_smooth_wall`)
event.stonecutting(`2x tfc:rock/bricks/${stone}_wall`, `tfc:rock/bricks/${stone}`).id(`bricks_to_${stone}_bricks_wall`)
event.stonecutting(`2x tfc:rock/cracked_bricks/${stone}_wall`, `tfc:rock/cracked_bricks/${stone}`).id(`cracked_bricks_to_${stone}_cracked_bricks_wall`)
event.stonecutting(`2x tfc:rock/mossy_bricks/${stone}_wall`, `tfc:rock/mossy_bricks/${stone}`).id(`mossy_bricks_to_${stone}_mossy_bricks_wall`)
// #endregion
//#region Cobblestone

View file

@ -396,19 +396,77 @@ function registerTFGFoodData(event) {
food.decayModifier(1.5);
});
event.foodItem("tfg:food/raw_springling_chops", (food) => {
event.foodItem("tfg:food/raw_springling_collar", (food) => {
food.hunger(2);
food.protein(1.5);
food.decayModifier(3);
});
event.foodItem("tfg:food/cooked_springling_chops", (food) => {
event.foodItem("tfg:food/cooked_springling_collar", (food) => {
food.hunger(4);
food.saturation(3);
food.protein(5);
food.decayModifier(1.5);
});
event.foodItem("tfg:food/raw_surfer_steak", (food) => {
food.hunger(2);
food.protein(1.5);
food.decayModifier(3);
});
event.foodItem("tfg:food/cooked_surfer_steak", (food) => {
food.hunger(6);
food.saturation(3);
food.protein(6);
food.decayModifier(1.5);
});
event.foodItem("tfg:food/raw_cruncher_ribs", (food) => {
food.hunger(3);
food.protein(2.0);
food.decayModifier(3);
});
event.foodItem("tfg:food/cooked_cruncher_ribs", (food) => {
food.hunger(6);
food.saturation(3);
food.protein(8);
food.decayModifier(1.4);
});
event.foodItem("tfg:food/raw_long_pig_filet", (food) => {
food.hunger(2);
food.protein(1.5);
food.decayModifier(3);
});
event.foodItem("tfg:food/cooked_long_pig_filet", (food) => {
food.hunger(6);
food.saturation(3);
food.protein(5);
food.decayModifier(1.5);
});
event.foodItem("tfg:food/raw_stackatick_chunks", (food) => {
food.hunger(2);
food.protein(1.2);
food.decayModifier(3);
});
event.foodItem("tfg:food/raw_stickastackatick", (food) => {
food.hunger(2);
food.protein(1.2);
food.decayModifier(3);
});
event.foodItem("tfg:food/cooked_stickastackatick", (food) => {
food.hunger(6);
food.saturation(3);
food.protein(4);
food.decayModifier(1.5);
});
event.foodItem("tfg:food/raw_walker_steak", (food) => {
food.hunger(3);
food.protein(2.0);
@ -465,6 +523,7 @@ function registerTFGFoodData(event) {
food.hunger(2);
food.protein(3.0);
food.decayModifier(3);
food.water(1);
});
event.foodItem("tfg:food/cooked_goober_meat", (food) => {

View file

@ -1139,9 +1139,9 @@ function registerTFGFoodRecipes(event) {
event.recipes.tfc.heating('tfg:food/raw_wraptor', 200)
.resultItem(TFC.isp.of('tfg:food/cooked_wraptor').copyFood())
event.recipes.tfc.heating('tfg:food/raw_springling_chops', 200)
.resultItem(TFC.isp.of('tfg:food/cooked_springling_chops').copyFood())
event.recipes.tfc.heating('tfg:food/raw_springling_collar', 200)
.resultItem(TFC.isp.of('tfg:food/cooked_springling_collar').copyFood())
event.recipes.tfc.heating('tfg:food/raw_walker_steak', 200)
.resultItem(TFC.isp.of('tfg:food/cooked_walker_steak').copyFood())
@ -1157,6 +1157,23 @@ function registerTFGFoodRecipes(event) {
event.recipes.tfc.heating('tfg:food/raw_goober_meat', 200)
.resultItem(TFC.isp.of('tfg:food/cooked_goober_meat').copyFood())
event.recipes.tfc.heating('tfg:food/raw_surfer_steak', 200)
.resultItem(TFC.isp.of('tfg:food/cooked_surfer_steak').copyFood())
event.recipes.tfc.heating('tfg:food/raw_cruncher_ribs', 200)
.resultItem(TFC.isp.of('tfg:food/cooked_cruncher_ribs').copyFood())
event.recipes.tfc.heating('tfg:food/raw_stickastackatick', 200)
.resultItem(TFC.isp.of('tfg:food/cooked_stickastackatick').copyFood())
event.recipes.tfc.heating('tfg:food/raw_long_pig_filet', 200)
.resultItem(TFC.isp.of('tfg:food/cooked_long_pig_filet').copyFood())
event.recipes.tfc.advanced_shapeless_crafting(
TFC.itemStackProvider.of('tfg:food/raw_stickastackatick').copyFood(),
[TFC.ingredient.notRotten('tfg:food/raw_stackatick_chunks'), '#forge:rods/wood'], 'tfg:food/raw_stackatick_chunks')
.id(`tfg:crafting/raw_stickastackatick`)
event.recipes.tfc.advanced_shapeless_crafting(
TFC.itemStackProvider.of('4x betterend:cave_pumpkin_chunks').copyFood(),
[TFC.ingredient.notRotten('betterend:cave_pumpkin'), '#forge:tools/hammers'], 'betterend:cave_pumpkin')

View file

@ -197,101 +197,139 @@ function registerTFGRockRecipes(event) {
// #region RAW_TO_POLISHED
const RAW_TO_POLISHED = [
// Beneath
{ raw: 'minecraft:deepslate', polished: 'minecraft:polished_deepslate' },
{ raw: 'tfg:rock/hardened_deepslate', polished: 'minecraft:polished_deepslate' },
{ raw: 'minecraft:deepslate_bricks', polished: 'minecraft:deepslate_tiles' },
{ raw: 'minecraft:deepslate_tiles', polished: 'minecraft:chiseled_deepslate' },
{ raw: 'minecraft:chiseled_deepslate', polished: 'minecraft:deepslate_bricks' },
{ raw: 'minecraft:deepslate', polished: 'minecraft:polished_deepslate' },
{ raw: 'tfg:rock/hardened_deepslate', polished: 'minecraft:polished_deepslate' },
{ raw: 'create:cut_deepslate', polished: 'create:polished_cut_deepslate' },
{ raw: 'minecraft:deepslate_bricks', polished: 'minecraft:deepslate_tiles' },
{ raw: 'minecraft:deepslate_tiles', polished: 'minecraft:chiseled_deepslate' },
{ raw: 'minecraft:chiseled_deepslate', polished: 'minecraft:deepslate_bricks' },
{ raw: 'minecraft:blackstone', polished: 'minecraft:polished_blackstone' },
{ raw: 'tfg:rock/hardened_blackstone', polished: 'minecraft:polished_blackstone' },
{ raw: 'minecraft:polished_blackstone_bricks', polished: 'minecraft:chiseled_polished_blackstone' },
{ raw: 'minecraft:chiseled_polished_blackstone', polished: 'minecraft:polished_blackstone_bricks' },
{ raw: 'minecraft:blackstone', polished: 'minecraft:polished_blackstone' },
{ raw: 'tfg:rock/hardened_blackstone', polished: 'minecraft:polished_blackstone' },
{ raw: 'minecraft:polished_blackstone_bricks', polished: 'minecraft:chiseled_polished_blackstone' },
{ raw: 'minecraft:chiseled_polished_blackstone', polished: 'minecraft:polished_blackstone_bricks' },
{ raw: 'minecraft:dripstone_block', polished: 'create:polished_cut_dripstone' },
{ raw: 'tfg:rock/hardened_dripstone', polished: 'create:polished_cut_dripstone' },
{ raw: 'create:cut_dripstone_bricks', polished: 'create:small_dripstone_bricks' },
{ raw: 'create:small_dripstone_bricks', polished: 'create:cut_dripstone_bricks' },
{ raw: 'minecraft:dripstone_block', polished: 'create:polished_cut_dripstone' },
{ raw: 'tfg:rock/hardened_dripstone', polished: 'create:polished_cut_dripstone' },
{ raw: 'create:cut_dripstone', polished: 'create:polished_cut_dripstone' },
{ raw: 'create:cut_dripstone_bricks', polished: 'create:small_dripstone_bricks' },
{ raw: 'create:small_dripstone_bricks', polished: 'create:cut_dripstone_bricks' },
{ raw: 'beneath:crackrack', polished: 'tfg:rock/polished_crackrack' },
{ raw: 'minecraft:nether_bricks', polished: 'minecraft:chiseled_nether_bricks' },
{ raw: 'minecraft:chiseled_nether_bricks', polished: 'minecraft:nether_bricks' },
{ raw: 'beneath:crackrack', polished: 'tfg:rock/polished_crackrack' },
{ raw: 'minecraft:nether_bricks', polished: 'minecraft:chiseled_nether_bricks' },
{ raw: 'minecraft:chiseled_nether_bricks', polished: 'minecraft:nether_bricks' },
{ raw: 'minecraft:basalt', polished: 'minecraft:smooth_basalt' },
{ raw: 'minecraft:smooth_basalt', polished: 'minecraft:polished_basalt' },
{ raw: 'minecraft:basalt', polished: 'minecraft:smooth_basalt' },
{ raw: 'minecraft:smooth_basalt', polished: 'minecraft:polished_basalt' },
// Moon
{ raw: 'ad_astra:moon_stone', polished: 'ad_astra:polished_moon_stone' },
{ raw: 'tfg:rock/hardened_moon_stone', polished: 'ad_astra:polished_moon_stone' },
{ raw: 'ad_astra:moon_stone_bricks', polished: 'ad_astra:chiseled_moon_stone_bricks' },
{ raw: 'ad_astra:chiseled_moon_stone_bricks', polished: 'ad_astra:moon_stone_bricks' },
{ raw: 'ad_astra:moon_stone', polished: 'ad_astra:polished_moon_stone' },
{ raw: 'tfg:rock/hardened_moon_stone', polished: 'ad_astra:polished_moon_stone' },
{ raw: 'ad_astra:moon_stone_bricks', polished: 'ad_astra:chiseled_moon_stone_bricks' },
{ raw: 'ad_astra:chiseled_moon_stone_bricks', polished: 'ad_astra:moon_stone_bricks' },
{ raw: 'ad_astra:moon_deepslate', polished: 'tfg:rock/polished_moon_deepslate' },
{ raw: 'tfg:rock/hardened_moon_deepslate', polished: 'tfg:rock/polished_moon_deepslate' },
{ raw: 'ad_astra:moon_deepslate', polished: 'tfg:rock/polished_moon_deepslate' },
{ raw: 'tfg:rock/hardened_moon_deepslate', polished: 'tfg:rock/polished_moon_deepslate' },
{ raw: 'tfg:rock/bricks_moon_deepslate', polished: 'tfg:rock/chiseled_bricks_moon_deepslate' },
{ raw: 'tfg:rock/chiseled_bricks_moon_deepslate', polished: 'tfg:rock/bricks_moon_deepslate' },
{ raw: 'tfg:rock/chiseled_bricks_moon_deepslate', polished: 'tfg:rock/bricks_moon_deepslate' },
{ raw: 'ad_astra:glacio_stone', polished: 'ad_astra:polished_glacio_stone' },
{ raw: 'tfg:rock/hardened_glacio_stone', polished: 'ad_astra:polished_glacio_stone' },
{ raw: 'ad_astra:glacio_stone_bricks', polished: 'ad_astra:chiseled_glacio_stone_bricks' },
{ raw: 'ad_astra:chiseled_glacio_stone_bricks', polished: 'ad_astra:glacio_stone_bricks' },
{ raw: 'ad_astra:glacio_stone', polished: 'ad_astra:polished_glacio_stone' },
{ raw: 'tfg:rock/hardened_glacio_stone', polished: 'ad_astra:polished_glacio_stone' },
{ raw: 'ad_astra:glacio_stone_bricks', polished: 'ad_astra:chiseled_glacio_stone_bricks' },
{ raw: 'ad_astra:chiseled_glacio_stone_bricks', polished: 'ad_astra:glacio_stone_bricks' },
// Mars
{ raw: 'ad_astra:mars_stone', polished: 'ad_astra:polished_mars_stone' },
{ raw: 'tfg:rock/hardened_mars_stone', polished: 'ad_astra:polished_mars_stone' },
{ raw: 'ad_astra:mars_stone_bricks', polished: 'ad_astra:chiseled_mars_stone_bricks' },
{ raw: 'ad_astra:chiseled_mars_stone_bricks', polished: 'ad_astra:mars_stone_bricks' },
{ raw: 'ad_astra:mars_stone', polished: 'ad_astra:polished_mars_stone' },
{ raw: 'tfg:rock/hardened_mars_stone', polished: 'ad_astra:polished_mars_stone' },
{ raw: 'ad_astra:mars_stone_bricks', polished: 'ad_astra:chiseled_mars_stone_bricks' },
{ raw: 'ad_astra:chiseled_mars_stone_bricks', polished: 'ad_astra:mars_stone_bricks' },
{ raw: 'ad_astra:venus_stone', polished: 'ad_astra:polished_venus_stone' },
{ raw: 'tfg:rock/hardened_venus_stone', polished: 'ad_astra:polished_venus_stone' },
{ raw: 'ad_astra:venus_stone_bricks', polished: 'ad_astra:chiseled_venus_stone_bricks' },
{ raw: 'ad_astra:venus_sandstone', polished: 'ad_astra:venus_sandstone_bricks' },
{ raw: 'ad_astra:venus_sandstone_bricks', polished: 'ad_astra:venus_sandstone' },
{ raw: 'ad_astra:venus_stone', polished: 'ad_astra:polished_venus_stone' },
{ raw: 'tfg:rock/hardened_venus_stone', polished: 'ad_astra:polished_venus_stone' },
{ raw: 'ad_astra:venus_stone_bricks', polished: 'ad_astra:chiseled_venus_stone_bricks' },
{ raw: 'ad_astra:venus_sandstone', polished: 'ad_astra:venus_sandstone_bricks' },
{ raw: 'ad_astra:venus_sandstone_bricks', polished: 'ad_astra:venus_sandstone' },
{ raw: 'gtceu:red_granite', polished: 'gtceu:polished_red_granite' },
{ raw: 'tfg:rock/hardened_red_granite', polished: 'gtceu:polished_red_granite' },
{ raw: 'gtceu:red_granite_bricks', polished: 'gtceu:red_granite_tile' },
{ raw: 'gtceu:red_granite_tile', polished: 'gtceu:square_red_granite_bricks' },
{ raw: 'gtceu:square_red_granite_bricks', polished: 'gtceu:red_granite_windmill_a' },
{ raw: 'gtceu:red_granite_windmill_a', polished: 'gtceu:red_granite_windmill_b' },
{ raw: 'gtceu:red_granite_windmill_b', polished: 'gtceu:small_red_granite_bricks' },
{ raw: 'gtceu:small_red_granite_bricks', polished: 'gtceu:red_granite_small_tile' },
{ raw: 'gtceu:red_granite_small_tile', polished: 'gtceu:chiseled_red_granite' },
{ raw: 'gtceu:chiseled_red_granite', polished: 'gtceu:red_granite_bricks' },
{ raw: 'gtceu:red_granite', polished: 'gtceu:polished_red_granite' },
{ raw: 'tfg:rock/hardened_red_granite', polished: 'gtceu:polished_red_granite' },
{ raw: 'gtceu:red_granite_bricks', polished: 'gtceu:red_granite_tile' },
{ raw: 'gtceu:red_granite_tile', polished: 'gtceu:square_red_granite_bricks' },
{ raw: 'gtceu:square_red_granite_bricks', polished: 'gtceu:red_granite_windmill_a' },
{ raw: 'gtceu:red_granite_windmill_a', polished: 'gtceu:red_granite_windmill_b' },
{ raw: 'gtceu:red_granite_windmill_b', polished: 'gtceu:small_red_granite_bricks' },
{ raw: 'gtceu:small_red_granite_bricks', polished: 'gtceu:red_granite_small_tile' },
{ raw: 'gtceu:red_granite_small_tile', polished: 'gtceu:chiseled_red_granite' },
{ raw: 'gtceu:chiseled_red_granite', polished: 'gtceu:red_granite_bricks' },
{ raw: 'minecraft:smooth_red_sandstone', polished: 'minecraft:cut_red_sandstone' },
{ raw: 'minecraft:cut_red_sandstone', polished: 'minecraft:chiseled_red_sandstone' },
{ raw: 'minecraft:chiseled_red_sandstone', polished: 'minecraft:smooth_red_sandstone' },
{ raw: 'minecraft:smooth_red_sandstone', polished: 'minecraft:cut_red_sandstone' },
{ raw: 'minecraft:cut_red_sandstone', polished: 'minecraft:chiseled_red_sandstone' },
{ raw: 'minecraft:chiseled_red_sandstone', polished: 'minecraft:smooth_red_sandstone' },
// Mercury
{ raw: 'ad_astra:mercury_stone', polished: 'ad_astra:polished_mercury_stone' },
{ raw: 'tfg:rock/hardened_mercury_stone', polished: 'ad_astra:polished_mercury_stone' },
{ raw: 'ad_astra:mercury_stone_bricks', polished: 'ad_astra:chiseled_mercury_stone_bricks' },
{ raw: 'ad_astra:chiseled_mercury_stone_bricks', polished: 'ad_astra:mercury_stone_bricks' },
{ raw: 'ad_astra:mercury_stone', polished: 'ad_astra:polished_mercury_stone' },
{ raw: 'tfg:rock/hardened_mercury_stone', polished: 'ad_astra:polished_mercury_stone' },
{ raw: 'ad_astra:mercury_stone_bricks', polished: 'ad_astra:chiseled_mercury_stone_bricks' },
{ raw: 'ad_astra:chiseled_mercury_stone_bricks', polished: 'ad_astra:mercury_stone_bricks' },
// Europa
{ raw: 'ad_astra:permafrost', polished: 'ad_astra:polished_permafrost' },
{ raw: 'ad_astra:permafrost_bricks', polished: 'ad_astra:chiseled_permafrost_bricks' },
{ raw: 'ad_astra:chiseled_permafrost_bricks', polished: 'ad_astra:permafrost_tiles' },
{ raw: 'ad_astra:permafrost_tiles', polished: 'ad_astra:chiseled_permafrost_bricks' },
{ raw: 'ad_astra:permafrost', polished: 'ad_astra:polished_permafrost' },
{ raw: 'ad_astra:permafrost_bricks', polished: 'ad_astra:chiseled_permafrost_bricks' },
{ raw: 'ad_astra:chiseled_permafrost_bricks', polished: 'ad_astra:permafrost_tiles' },
{ raw: 'ad_astra:permafrost_tiles', polished: 'ad_astra:chiseled_permafrost_bricks' },
// Misc
{ raw: 'ae2:sky_stone_block', polished: 'ae2:smooth_sky_stone_block' },
{ raw: 'ae2:smooth_sky_stone_block', polished: 'ae2:sky_stone_brick' },
{ raw: 'ae2:sky_stone_brick', polished: 'ae2:sky_stone_small_brick' },
{ raw: 'ae2:sky_stone_small_brick', polished: 'ae2:smooth_sky_stone_block' },
{ raw: 'gtceu:certus_quartz_block', polished: 'ae2:cut_quartz_block' },
{ raw: 'tfc:alabaster/raw', polished: 'tfc:alabaster/polished' },
{ raw: 'ae2:sky_stone_block', polished: 'ae2:smooth_sky_stone_block' },
{ raw: 'ae2:smooth_sky_stone_block', polished: 'ae2:sky_stone_brick' },
{ raw: 'ae2:sky_stone_brick', polished: 'ae2:sky_stone_small_brick' },
{ raw: 'ae2:sky_stone_small_brick', polished: 'ae2:smooth_sky_stone_block' },
{ raw: 'tfc:alabaster/raw', polished: 'tfc:alabaster/polished' },
// Concrete
{ raw: 'tfg:titanium_concrete', polished: 'tfg:polished_titanium_concrete' },
{ raw: 'tfg:titanium_concrete', polished: 'tfg:polished_titanium_concrete' },
// Recon Stone
{ raw: 'minecraft:stone', polished: 'minecraft:smooth_stone' },
{ raw: 'minecraft:smooth_stone', polished: 'minecraft:stone' },
{ raw: 'minecraft:stone', polished: 'minecraft:smooth_stone' },
{ raw: 'minecraft:smooth_stone', polished: 'minecraft:stone' },
{ raw: 'minecraft:stone_bricks', polished: 'minecraft:chiseled_stone_bricks' },
{ raw: 'minecraft:chiseled_stone_bricks', polished: 'minecraft:stone_bricks' }
{ raw: 'minecraft:stone_bricks', polished: 'minecraft:chiseled_stone_bricks' },
{ raw: 'minecraft:chiseled_stone_bricks', polished: 'minecraft:stone_bricks' },
// Quartz
{ raw: 'minecraft:quartz_block', polished: 'minecraft:smooth_quartz' },
{ raw: 'minecraft:smooth_quartz', polished: 'minecraft:quartz_bricks' },
{ raw: 'minecraft:quartz_bricks', polished: 'minecraft:chiseled_quartz_block' },
{ raw: 'minecraft:chiseled_quartz_block', polished: 'minecraft:quartz_block' },
// Certus Quartz
{ raw: 'ae2:quartz_block', polished: 'gtceu:certus_quartz_block' },
{ raw: 'gtceu:certus_quartz_block', polished: 'ae2:cut_quartz_block' },
{ raw: 'ae2:cut_quartz_block', polished: 'ae2:quartz_bricks' },
{ raw: 'ae2:quartz_bricks', polished: 'ae2:chiseled_quartz_block' },
{ raw: 'ae2:chiseled_quartz_block', polished: 'ae2:quartz_block' },
// Other @Create Blocks
{ raw: 'create:cut_andesite', polished: 'create:polished_cut_andesite' },
{ raw: 'create:cut_granite', polished: 'create:polished_cut_granite' },
{ raw: 'create:cut_diorite', polished: 'create:polished_cut_diorite' },
{ raw: 'create:limestone', polished: 'create:polished_cut_limestone' },
{ raw: 'create:cut_limestone', polished: 'create:polished_cut_limestone' },
{ raw: 'minecraft:calcite', polished: 'create:polished_cut_calcite' },
{ raw: 'create:cut_calcite', polished: 'create:polished_cut_calcite' },
{ raw: 'create:asurine', polished: 'create:polished_cut_asurine' },
{ raw: 'create:cut_asurine', polished: 'create:polished_cut_asurine' },
{ raw: 'create:crimsite', polished: 'create:polished_cut_crimsite' },
{ raw: 'create:cut_crimsite', polished: 'create:polished_cut_crimsite' },
{ raw: 'create:ochrum', polished: 'create:polished_cut_ochrum' },
{ raw: 'create:cut_ochrum', polished: 'create:polished_cut_ochrum' },
{ raw: 'create:scorchia', polished: 'create:polished_cut_scorchia' },
{ raw: 'create:cut_scorchia', polished: 'create:polished_cut_scorchia' },
{ raw: 'create:scoria', polished: 'create:polished_cut_scoria' },
{ raw: 'create:cut_scoria', polished: 'create:polished_cut_scoria' },
{ raw: 'minecraft:tuff', polished: 'create:polished_cut_tuff' },
{ raw: 'create:cut_tuff', polished: 'create:polished_cut_tuff' },
{ raw: 'create:veridium', polished: 'create:polished_cut_veridium' },
{ raw: 'create:cut_veridium', polished: 'create:polished_cut_veridium' }
]
RAW_TO_POLISHED.forEach(x => {
@ -382,7 +420,7 @@ function registerTFGRockRecipes(event) {
dust: 'gtceu:deepslate_dust', loose: 'tfg:loose/deepslate', stonecutting: false }, // Cobble
{ raw: 'tfg:rock/mossy_cobble_deepslate', stair: 'tfg:rock/mossy_cobble_deepslate_stairs', slab: 'tfg:rock/mossy_cobble_deepslate_slab', wall: 'tfg:rock/mossy_cobble_deepslate_wall',
dust: 'gtceu:deepslate_dust', loose: null, stonecutting: true }, // Cobble - Mossy
dust: 'gtceu:deepslate_dust', loose: null, stonecutting: true }, // Cobble - Mossy
{ raw: 'minecraft:polished_deepslate', stair: 'minecraft:polished_deepslate_stairs', slab: 'minecraft:polished_deepslate_slab', wall: 'minecraft:polished_deepslate_wall',
dust: 'gtceu:deepslate_dust', loose: null, stonecutting: false }, // Smooth
@ -397,16 +435,16 @@ function registerTFGRockRecipes(event) {
dust: 'gtceu:deepslate_dust', loose: null, stonecutting: false }, // Bricks
{ raw: 'minecraft:cracked_deepslate_bricks', stair: 'tfg:rock/cracked_bricks_deepslate_stairs', slab: 'tfg:rock/cracked_bricks_deepslate_slab', wall: 'tfg:rock/cracked_bricks_deepslate_wall',
dust: 'gtceu:deepslate_dust', loose: null, stonecutting: true }, // Bricks - Cracked
dust: 'gtceu:deepslate_dust', loose: null, stonecutting: true }, // Bricks - Cracked
{ raw: 'tfg:rock/mossy_bricks_deepslate', stair: 'tfg:rock/mossy_bricks_deepslate_stairs', slab: 'tfg:rock/mossy_bricks_deepslate_slab', wall: 'tfg:rock/mossy_bricks_deepslate_wall',
dust: 'gtceu:deepslate_dust', loose: null, stonecutting: true }, // Bricks - Mossy
dust: 'gtceu:deepslate_dust', loose: null, stonecutting: true }, // Bricks - Mossy
{ raw: 'minecraft:deepslate_tiles', stair: 'minecraft:deepslate_tile_stairs', slab: 'minecraft:deepslate_tile_slab', wall: 'minecraft:deepslate_tile_wall',
dust: 'gtceu:deepslate_dust', loose: null, stonecutting: false }, // Bricks - Extra
{ raw: 'minecraft:cracked_deepslate_tiles', stair: 'tfg:rock/cracked_tiles_deepslate_stairs', slab: 'tfg:rock/cracked_tiles_deepslate_slab', wall: 'tfg:rock/cracked_tiles_deepslate_wall',
dust: 'gtceu:deepslate_dust', loose: null, stonecutting: true }, // Bricks - Cracked - Extra
dust: 'gtceu:deepslate_dust', loose: null, stonecutting: true }, // Bricks - Cracked - Extra
{ raw: 'create:cut_deepslate_bricks', stair: 'create:cut_deepslate_brick_stairs', slab: 'create:cut_deepslate_brick_slab', wall: 'create:cut_deepslate_brick_wall',
dust: 'gtceu:deepslate_dust', loose: null, stonecutting: false }, // Bricks - Extra
@ -419,10 +457,10 @@ function registerTFGRockRecipes(event) {
dust: 'gtceu:blackstone_dust', loose: null, stonecutting: false }, // Raw
{ raw: 'tfg:rock/cobble_blackstone', stair: 'tfg:rock/cobble_blackstone_stairs', slab: 'tfg:rock/cobble_blackstone_slab', wall: 'tfg:rock/cobble_blackstone_wall',
dust: 'gtceu:blackstone_dust', loose: 'beneath:blackstone_pebble', stonecutting: true }, // Cobble
dust: 'gtceu:blackstone_dust', loose: 'beneath:blackstone_pebble', stonecutting: true }, // Cobble
{ raw: 'tfg:rock/mossy_cobble_blackstone', stair: 'tfg:rock/mossy_cobble_blackstone_stairs', slab: 'tfg:rock/mossy_cobble_blackstone_slab', wall: 'tfg:rock/mossy_cobble_blackstone_wall',
dust: 'gtceu:blackstone_dust', loose: null, stonecutting: true }, // Cobble - Mossy
dust: 'gtceu:blackstone_dust', loose: null, stonecutting: true }, // Cobble - Mossy
{ raw: 'minecraft:polished_blackstone', stair: 'minecraft:polished_blackstone_stairs', slab: 'minecraft:polished_blackstone_slab', wall: 'minecraft:polished_blackstone_wall',
dust: 'gtceu:blackstone_dust', loose: null, stonecutting: false }, // Smooth
@ -438,10 +476,10 @@ function registerTFGRockRecipes(event) {
// Dripstone
{ raw: 'minecraft:dripstone_block', stair: 'tfg:rock/dripstone_stairs', slab: 'tfg:rock/dripstone_slab', wall: 'tfg:rock/dripstone_wall',
dust: 'tfg:dripstone_dust', loose: null, stonecutting: true }, // Raw
dust: 'tfg:dripstone_dust', loose: null, stonecutting: true }, // Raw
{ raw: 'tfg:rock/cobble_dripstone', stair: 'tfg:rock/cobble_dripstone_stairs', slab: 'tfg:rock/cobble_dripstone_slab', wall: 'tfg:rock/cobble_dripstone_wall',
dust: 'tfg:dripstone_dust', loose: 'tfg:loose/dripstone', stonecutting: true }, // Cobble
dust: 'tfg:dripstone_dust', loose: 'tfg:loose/dripstone', stonecutting: true }, // Cobble
{ raw: 'tfg:rock/mossy_cobble_dripstone', stair: 'tfg:rock/mossy_cobble_dripstone_stairs', slab: 'tfg:rock/mossy_cobble_dripstone_slab', wall: 'tfg:rock/mossy_cobble_dripstone_wall',
dust: 'tfg:dripstone_dust', loose: null, stonecutting: true }, // Cobble - Mossy
@ -456,35 +494,35 @@ function registerTFGRockRecipes(event) {
dust: 'tfg:dripstone_dust', loose: null, stonecutting: false }, // Bricks
{ raw: 'tfg:rock/cracked_bricks_dripstone', stair: 'tfg:rock/cracked_bricks_dripstone_stairs', slab: 'tfg:rock/cracked_bricks_dripstone_slab', wall: 'tfg:rock/cracked_bricks_dripstone_wall',
dust: 'tfg:dripstone_dust', loose: null, stonecutting: true }, // Bricks - Cracked
dust: 'tfg:dripstone_dust', loose: null, stonecutting: true }, // Bricks - Cracked
{ raw: 'tfg:rock/mossy_bricks_dripstone', stair: 'tfg:rock/mossy_bricks_dripstone_stairs', slab: 'tfg:rock/mossy_bricks_dripstone_slab', wall: 'tfg:rock/mossy_bricks_dripstone_wall',
dust: 'tfg:dripstone_dust', loose: null, stonecutting: true }, // Bricks - Mossy
dust: 'tfg:dripstone_dust', loose: null, stonecutting: true }, // Bricks - Mossy
{ raw: 'create:small_dripstone_bricks', stair: 'create:small_dripstone_brick_stairs', slab: 'create:small_dripstone_brick_slab', wall: 'create:small_dripstone_brick_wall',
dust: 'tfg:dripstone_dust', loose: null, stonecutting: false }, // Bricks - Extra
// Crackrack / Nether
{ raw: 'beneath:crackrack', stair: 'tfg:rock/crackrack_stairs', slab: 'tfg:rock/crackrack_slab', wall: 'tfg:rock/crackrack_wall',
dust: 'gtceu:netherrack_dust', loose: null, stonecutting: true }, // Raw
dust: 'gtceu:netherrack_dust', loose: null, stonecutting: true }, // Raw
{ raw: 'tfg:rock/cobble_crackrack', stair: 'tfg:rock/cobble_crackrack_stairs', slab: 'tfg:rock/cobble_crackrack_slab', wall: 'tfg:rock/cobble_crackrack_wall',
dust: 'gtceu:netherrack_dust', loose: 'beneath:crackrack_rock', stonecutting: true }, // Cobble
dust: 'gtceu:netherrack_dust', loose: 'tfg:loose/crackrack', stonecutting: true }, // Cobble
{ raw: 'tfg:rock/mossy_cobble_crackrack', stair: 'tfg:rock/mossy_cobble_crackrack_stairs', slab: 'tfg:rock/mossy_cobble_crackrack_slab', wall: 'tfg:rock/mossy_cobble_crackrack_wall',
dust: 'gtceu:netherrack_dust', loose: null, stonecutting: true }, // Cobble - Mossy
dust: 'gtceu:netherrack_dust', loose: null, stonecutting: true }, // Cobble - Mossy
{ raw: 'tfg:rock/polished_crackrack', stair: 'tfg:rock/polished_crackrack_stairs', slab: 'tfg:rock/polished_crackrack_slab', wall: 'tfg:rock/polished_crackrack_wall',
dust: 'gtceu:netherrack_dust', loose: null, stonecutting: true }, // Smooth
dust: 'gtceu:netherrack_dust', loose: null, stonecutting: true }, // Smooth
{ raw: 'minecraft:nether_bricks', stair: 'minecraft:nether_brick_stairs', slab: 'minecraft:nether_brick_slab', wall: 'minecraft:nether_brick_wall',
dust: 'gtceu:netherrack_dust', loose: null, stonecutting: true }, // Bricks
dust: 'gtceu:netherrack_dust', loose: null, stonecutting: true }, // Bricks
{ raw: 'minecraft:cracked_nether_bricks', stair: 'tfg:rock/cracked_bricks_nether_stairs', slab: 'tfg:rock/cracked_bricks_nether_slab', wall: 'tfg:rock/cracked_bricks_nether_wall',
dust: 'gtceu:netherrack_dust', loose: null, stonecutting: true }, // Bricks - Cracked
dust: 'gtceu:netherrack_dust', loose: null, stonecutting: true }, // Bricks - Cracked
{ raw: 'tfg:rock/mossy_bricks_nether', stair: 'tfg:rock/mossy_bricks_nether_stairs', slab: 'tfg:rock/mossy_bricks_nether_slab', wall: 'tfg:rock/mossy_bricks_nether_wall',
dust: 'gtceu:netherrack_dust', loose: null, stonecutting: true }, // Bricks - Mossy
dust: 'gtceu:netherrack_dust', loose: null, stonecutting: true }, // Bricks - Mossy
// #endregion Nether
]
@ -528,136 +566,318 @@ function registerTFGRockRecipes(event) {
CUT_GRIND = CUT_GRIND.concat([
// Moon Deepstone
{ raw: 'ad_astra:moon_deepslate', stair: 'tfg:rock/moon_deepslate_stairs', slab: 'tfg:rock/moon_deepslate_slab', wall: 'tfg:rock/moon_deepslate_wall',
dust: 'tfg:moon_deepslate_dust', loose: null, stonecutting: true }, // Raw
dust: 'tfg:moon_deepslate_dust', loose: null, stonecutting: true }, // Raw
{ raw: 'tfg:rock/cobble_moon_deepslate', stair: 'tfg:rock/cobble_moon_deepslate_stairs', slab: 'tfg:rock/cobble_moon_deepslate_slab', wall: 'tfg:rock/cobble_moon_deepslate_wall',
dust: 'tfg:moon_deepslate_dust', loose: 'tfg:loose/moon_deepslate', stonecutting: true }, // Cobble
dust: 'tfg:moon_deepslate_dust', loose: 'tfg:loose/moon_deepslate', stonecutting: true }, // Cobble
{ raw: 'tfg:rock/mossy_cobble_moon_deepslate', stair: 'tfg:rock/mossy_cobble_moon_deepslate_stairs', slab: 'tfg:rock/mossy_cobble_moon_deepslate_slab', wall: 'tfg:rock/mossy_cobble_moon_deepslate_wall',
dust: 'tfg:moon_deepslate_dust', loose: null, stonecutting: true }, // Cobble - Mossy
dust: 'tfg:moon_deepslate_dust', loose: null, stonecutting: true }, // Cobble - Mossy
{ raw: 'tfg:rock/polished_moon_deepslate', stair: 'tfg:rock/polished_moon_deepslate_stairs', slab: 'tfg:rock/polished_moon_deepslate_slab', wall: 'tfg:rock/polished_moon_deepslate_wall',
dust: 'gtceu:moon_deepslate_dust', loose: null, stonecutting: true }, // Smooth
dust: 'gtceu:moon_deepslate_dust', loose: null, stonecutting: true }, // Smooth
{ raw: 'tfg:rock/bricks_moon_deepslate', stair: 'tfg:rock/bricks_moon_deepslate_stairs', slab: 'tfg:rock/bricks_moon_deepslate_slab', wall: 'tfg:rock/bricks_moon_deepslate_wall',
dust: 'gtceu:moon_deepslate_dust', loose: null, stonecutting: true }, // Bricks
dust: 'gtceu:moon_deepslate_dust', loose: null, stonecutting: true }, // Bricks
{ raw: 'tfg:rock/cracked_bricks_moon_deepslate', stair: 'tfg:rock/cracked_bricks_moon_deepslate_stairs', slab: 'tfg:rock/cracked_bricks_moon_deepslate_slab', wall: 'tfg:rock/cracked_bricks_moon_deepslate_wall',
dust: 'gtceu:moon_deepslate_dust', loose: null, stonecutting: true }, // Bricks - Cracked
dust: 'gtceu:moon_deepslate_dust', loose: null, stonecutting: true }, // Bricks - Cracked
{ raw: 'tfg:rock/mossy_bricks_moon_deepslate', stair: 'tfg:rock/mossy_bricks_moon_deepslate_stairs' , slab: 'tfg:rock/mossy_bricks_moon_deepslate_slab', wall: 'tfg:rock/mossy_bricks_moon_deepslate_wall',
dust: 'gtceu:moon_deepslate_dust', loose: null, stonecutting: true }, // Bricks - Mossy
dust: 'gtceu:moon_deepslate_dust', loose: null, stonecutting: true }, // Bricks - Mossy
{ raw: 'tfg:rock/chiseled_bricks_moon_deepslate', stair: 'tfg:rock/chiseled_bricks_moon_deepslate_stairs', slab: 'tfg:rock/chiseled_bricks_moon_deepslate_slab', wall: 'tfg:rock/chiseled_bricks_moon_deepslate_wall',
dust: 'gtceu:moon_deepslate_dust', loose: null, stonecutting: true }, // Bricks - Extra
dust: 'gtceu:moon_deepslate_dust', loose: null, stonecutting: true }, // Bricks - Extra
// Permafrost
{ raw: 'ad_astra:permafrost', stair: 'tfg:rock/permafrost_stairs', slab: 'tfg:rock/permafrost_slab', wall: 'tfg:rock/permafrost_wall',
dust: 'gtceu:ice_dust', loose: null, stonecutting: true }, // Raw
dust: 'gtceu:ice_dust', loose: null, stonecutting: true }, // Raw
{ raw: 'tfg:rock/cobble_permafrost', stair: 'tfg:rock/cobble_permafrost_stairs', slab: 'tfg:rock/cobble_permafrost_slab', wall: 'tfg:rock/cobble_permafrost_wall',
dust: 'gtceu:ice_dust', loose: 'tfg:loose/permafrost', stonecutting: true }, // Cobble
dust: 'gtceu:ice_dust', loose: 'tfg:loose/permafrost', stonecutting: true }, // Cobble
{ raw: 'tfg:rock/mossy_cobble_permafrost', stair: 'tfg:rock/mossy_cobble_permafrost_stairs', slab: 'tfg:rock/mossy_cobble_permafrost_slab', wall: 'tfg:rock/mossy_cobble_permafrost_wall',
dust: 'gtceu:ice_dust', loose: null, stonecutting: true }, // Cobble - Mossy
dust: 'gtceu:ice_dust', loose: null, stonecutting: true }, // Cobble - Mossy
{ raw: 'ad_astra:polished_permafrost', stair: 'ad_astra:polished_permafrost_stairs', slab: 'ad_astra:polished_permafrost_slab', wall: 'tfg:rock/polished_permafrost_wall',
dust: 'gtceu:ice_dust', loose: null, stonecutting: true }, // Smooth
dust: 'gtceu:ice_dust', loose: null, stonecutting: true }, // Smooth
{ raw: 'ad_astra:permafrost_bricks', stair: 'ad_astra:permafrost_brick_stairs', slab: 'ad_astra:permafrost_brick_slab', wall: 'ad_astra:permafrost_brick_wall',
dust: 'gtceu:ice_dust', loose: null, stonecutting: true }, // Bricks
dust: 'gtceu:ice_dust', loose: null, stonecutting: true }, // Bricks
{ raw: 'ad_astra:cracked_permafrost_bricks', stair: 'tfg:rock/cracked_bricks_permafrost_stairs', slab: 'tfg:rock/cracked_bricks_permafrost_slab', wall: 'tfg:rock/cracked_bricks_permafrost_wall',
dust: 'gtceu:ice_dust', loose: null, stonecutting: true }, // Bricks - Cracked
dust: 'gtceu:ice_dust', loose: null, stonecutting: true }, // Bricks - Cracked
{ raw: 'tfg:rock/mossy_bricks_permafrost', stair: 'tfg:rock/mossy_bricks_permafrost_stairs', slab: 'tfg:rock/mossy_bricks_permafrost_slab', wall: 'tfg:rock/mossy_bricks_permafrost_wall',
dust: 'gtceu:ice_dust', loose: null, stonecutting: true }, // Bricks - Mossy
dust: 'gtceu:ice_dust', loose: null, stonecutting: true }, // Bricks - Mossy
{ raw: 'ad_astra:chiseled_permafrost_bricks', stair: 'ad_astra:chiseled_permafrost_brick_stairs', slab: 'ad_astra:chiseled_permafrost_brick_slab', wall: 'tfg:rock/chiseled_bricks_permafrost_wall',
dust: 'gtceu:ice_dust', loose: null, stonecutting: true }, // Bricks - Extra
dust: 'gtceu:ice_dust', loose: null, stonecutting: true }, // Bricks - Extra
// Red Granite
{ raw: 'gtceu:red_granite', stair: 'tfg:rock/red_granite_stairs', slab: 'tfg:rock/red_granite_slab', wall: 'tfg:rock/red_granite_wall',
dust: 'gtceu:granite_red_dust', loose: null, stonecutting: true }, // Raw
dust: 'gtceu:granite_red_dust', loose: null, stonecutting: true }, // Raw
{ raw: 'gtceu:red_granite_cobblestone', stair: 'tfg:rock/cobble_red_granite_stairs', slab: 'tfg:rock/cobble_red_granite_slab', wall: 'tfg:rock/cobble_red_granite_wall',
dust: 'gtceu:granite_red_dust', loose: 'tfg:loose/red_granite', stonecutting: true }, // Cobble
dust: 'gtceu:granite_red_dust', loose: 'tfg:loose/red_granite', stonecutting: true }, // Cobble
{ raw: 'gtceu:mossy_red_granite_cobblestone', stair: 'tfg:rock/mossy_cobble_red_granite_stairs', slab: 'tfg:rock/mossy_cobble_red_granite_slab', wall: 'tfg:rock/mossy_cobble_red_granite_wall',
dust: 'gtceu:granite_red_dust', loose: null, stonecutting: true }, // Cobble - Mossy
dust: 'gtceu:granite_red_dust', loose: null, stonecutting: true }, // Cobble - Mossy
{ raw: 'gtceu:polished_red_granite', stair: 'tfg:rock/polished_red_granite_stairs', slab: 'tfg:rock/polished_red_granite_slab', wall: 'tfg:rock/polished_red_granite_wall',
dust: 'gtceu:granite_red_dust', loose: null, stonecutting: true }, // Smooth
dust: 'gtceu:granite_red_dust', loose: null, stonecutting: true }, // Smooth
{ raw: 'gtceu:red_granite_bricks', stair: 'tfg:rock/bricks_red_granite_stairs', slab: 'tfg:rock/bricks_red_granite_slab', wall: 'tfg:rock/bricks_red_granite_wall',
dust: 'gtceu:granite_red_dust', loose: null, stonecutting: true }, // Bricks
dust: 'gtceu:granite_red_dust', loose: null, stonecutting: true }, // Bricks
{ raw: 'gtceu:cracked_red_granite_bricks', stair: 'tfg:rock/cracked_bricks_red_granite_stairs', slab: 'tfg:rock/cracked_bricks_red_granite_slab', wall: 'tfg:rock/cracked_bricks_red_granite_wall',
dust: 'gtceu:granite_red_dust', loose: null, stonecutting: true }, // Bricks - Cracked
dust: 'gtceu:granite_red_dust', loose: null, stonecutting: true }, // Bricks - Cracked
{ raw: 'gtceu:mossy_red_granite_bricks', stair: 'tfg:rock/mossy_bricks_red_granite_stairs', slab: 'tfg:rock/mossy_bricks_red_granite_slab', wall: 'tfg:rock/mossy_bricks_red_granite_wall',
dust: 'gtceu:granite_red_dust', loose: null, stonecutting: true }, // Bricks - Mossy
dust: 'gtceu:granite_red_dust', loose: null, stonecutting: true }, // Bricks - Mossy
// Red Sandstone
{ raw: 'minecraft:red_sandstone', stair: 'minecraft:red_sandstone_stairs', slab: 'minecraft:red_sandstone_slab', wall: 'minecraft:red_sandstone_wall',
dust: null, loose: null, stonecutting: true }, // Raw
dust: null, loose: null, stonecutting: true }, // Raw
{ raw: 'minecraft:smooth_red_sandstone', stair: 'minecraft:smooth_red_sandstone_stairs', slab: 'minecraft:smooth_red_sandstone_slab', wall: 'tfg:rock/smooth_red_sandstone_wall',
dust: null, loose: null, stonecutting: true }, // Smooth
dust: null, loose: null, stonecutting: true }, // Smooth
{ raw: 'minecraft:cut_red_sandstone', stair: 'tfg:rock/cut_red_sandstone_stairs', slab: 'minecraft:smooth_red_sandstone_slab', wall: 'tfg:rock/cut_red_sandstone_wall',
dust: null, loose: null, stonecutting: true }, // Smooth - Extra
dust: null, loose: null, stonecutting: true }, // Smooth - Extra
// Venus Sandstone
{ raw: 'ad_astra:venus_sandstone_bricks', stair: 'ad_astra:venus_sandstone_brick_stairs', slab: 'ad_astra:venus_sandstone_brick_slab', wall: 'tfg:rock/bricks_venus_sandstone_wall',
dust: null, loose: null, stonecutting: true }, // Bricks
dust: null, loose: null, stonecutting: true }, // Bricks
{ raw: 'ad_astra:cracked_venus_sandstone_bricks', stair: 'tfg:rock/cracked_bricks_venus_sandstone_stairs', slab: 'tfg:rock/cracked_bricks_venus_sandstone_slab', wall: 'tfg:rock/cracked_bricks_venus_sandstone_wall',
dust: null, loose: null, stonecutting: true }, // Bricks - Cracked
dust: null, loose: null, stonecutting: true }, // Bricks - Cracked
// Certus Quartz
{ raw: 'ae2:quartz_block', stair: 'ae2:quartz_stairs', slab: 'ae2:quartz_slab', wall: 'ae2:quartz_wall',
dust: null, loose: null, stonecutting: false }, // Raw
{ raw: 'ae2:cut_quartz_block', stair: 'ae2:cut_quartz_stairs', slab: 'ae2:cut_quartz_slab', wall: 'ae2:cut_quartz_wall',
dust: null, loose: null, stonecutting: false }, // Smooth
{ raw: 'ae2:quartz_bricks', stair: 'ae2:quartz_brick_stairs', slab: 'ae2:quartz_brick_slab', wall: 'ae2:quartz_brick_wall',
dust: null, loose: null, stonecutting: false }, // Bricks
{ raw: 'ae2:chiseled_quartz_block', stair: 'ae2:chiseled_quartz_stairs', slab: 'ae2:chiseled_quartz_slab', wall: 'ae2:chiseled_quartz_wall',
dust: null, loose: null, stonecutting: false }, // Chiseled
{ raw: 'ae2:quartz_pillar', stair: 'ae2:quartz_pillar_stairs', slab: 'ae2:quartz_pillar_slab', wall: 'ae2:quartz_pillar_wall',
dust: null, loose: null, stonecutting: false }, // Pillar
// Other Space Blocks
{ raw: 'ae2:sky_stone_block', stair: 'ae2:sky_stone_stairs', slab: 'ae2:sky_stone_slab', wall: 'ae2:sky_stone_wall',
dust: 'ae2:sky_dust', loose: null, stonecutting: true },
dust: 'ae2:sky_dust', loose: null, stonecutting: true },
{ raw: 'ae2:smooth_sky_stone_block', stair: 'ae2:smooth_sky_stone_stairs', slab: 'ae2:smooth_sky_stone_slab', wall: 'ae2:smooth_sky_stone_wall',
dust: 'ae2:sky_dust', loose: null, stonecutting: true },
dust: 'ae2:sky_dust', loose: null, stonecutting: true },
{ raw: 'ae2:sky_stone_brick', stair: 'ae2:sky_stone_brick_stairs', slab: 'ae2:sky_stone_brick_slab', wall: 'ae2:sky_stone_brick_wall',
dust: 'ae2:sky_dust', loose: null, stonecutting: true },
dust: 'ae2:sky_dust', loose: null, stonecutting: true },
{ raw: 'ae2:sky_stone_small_brick', stair: 'ae2:sky_stone_small_brick_stairs', slab: 'ae2:sky_stone_small_brick_slab', wall: 'ae2:sky_stone_small_brick_wall',
dust: 'ae2:sky_dust', loose: null, stonecutting: true },
dust: 'ae2:sky_dust', loose: null, stonecutting: true },
{ raw: 'ae2:fluix_block', stair: 'ae2:fluix_stairs', slab: 'ae2:fluix_slab', wall: 'ae2:fluix_wall',
dust: 'ae2:fluix_dust', loose: null, stonecutting: true },
dust: 'ae2:fluix_dust', loose: null, stonecutting: true },
{ raw: 'minecraft:purpur_block', stair: 'minecraft:purpur_stairs', slab: 'minecraft:purpur_slab', wall: null,
dust: null, loose: null, stonecutting: true },
dust: null, loose: null, stonecutting: true },
// #endregion Space
// #region Other
// #region Vanilla Blocks
// Reconstituted Stone
{ raw: 'minecraft:stone', stair: 'minecraft:stone_stairs', slab: 'minecraft:stone_slab', wall: 'tfg:rock/stone_wall',
dust: 'gtceu:stone_dust', loose: null, stonecutting: true }, // Raw
dust: 'gtceu:stone_dust', loose: null, stonecutting: true }, // Raw
{ raw: 'minecraft:cobblestone', stair: 'minecraft:cobblestone_stairs', slab: 'minecraft:cobblestone_slab', wall: 'minecraft:cobblestone_wall',
dust: 'gtceu:stone_dust', loose: null, stonecutting: true }, // Cobble
dust: 'gtceu:stone_dust', loose: null, stonecutting: true }, // Cobble
{ raw: 'minecraft:mossy_cobblestone', stair: 'minecraft:mossy_cobblestone_stairs', slab: 'minecraft:mossy_cobblestone_slab', wall: 'minecraft:mossy_cobblestone_wall',
dust: 'gtceu:stone_dust', loose: null, stonecutting: true }, // Cobble - Mossy
dust: 'gtceu:stone_dust', loose: null, stonecutting: true }, // Cobble - Mossy
{ raw: 'minecraft:smooth_stone', stair: 'tfg:rock/smooth_stone_stairs', slab: 'minecraft:smooth_stone_slab', wall: 'tfg:rock/smooth_stone_wall',
dust: 'gtceu:stone_dust', loose: null, stonecutting: true }, // Smooth
dust: 'gtceu:stone_dust', loose: null, stonecutting: true }, // Smooth
{ raw: 'minecraft:stone_bricks', stair: 'minecraft:stone_brick_stairs', slab: 'minecraft:stone_brick_slab', wall: 'minecraft:stone_brick_wall',
dust: 'gtceu:stone_dust', loose: null, stonecutting: true }, // Brick
dust: 'gtceu:stone_dust', loose: null, stonecutting: true }, // Brick
{ raw: 'minecraft:cracked_stone_bricks', stair: 'tfg:rock/cracked_bricks_stone_stairs', slab: 'tfg:rock/cracked_bricks_stone_slab', wall: 'tfg:rock/cracked_bricks_stone_wall',
dust: 'gtceu:stone_dust', loose: null, stonecutting: true }, // Brick - Cracked
dust: 'gtceu:stone_dust', loose: null, stonecutting: true }, // Brick - Cracked
{ raw: 'minecraft:mossy_stone_bricks', stair: 'minecraft:mossy_stone_brick_stairs', slab: 'minecraft:mossy_stone_brick_slab', wall: 'minecraft:mossy_stone_brick_wall',
dust: 'gtceu:stone_dust', loose: null, stonecutting: true }, // Brick - Mossy
dust: 'gtceu:stone_dust', loose: null, stonecutting: true }, // Brick - Mossy
// Quartz
{ raw: 'minecraft:quartz_block', stair: 'minecraft:quartz_stairs', slab: 'minecraft:quartz_slab', wall: 'tfg:rock/quartz_wall',
dust: null, loose: null, stonecutting: false }, // Raw
// #endregion Other
{ raw: 'minecraft:smooth_quartz', stair: 'minecraft:smooth_quartz_stairs', slab: 'minecraft:quartz_slab', wall: 'tfg:rock/smooth_quartz_wall',
dust: null, loose: null, stonecutting: false }, // Smooth
// #endregion Vanilla Blocks
// #region @Create Stones
// @Create Andesite
{ raw: 'create:cut_andesite', stair: 'create:cut_andesite_stairs', slab: 'create:cut_andesite_slab', wall: 'create:cut_andesite_wall',
dust: 'tfg:andesite_dust', loose: null, stonecutting: false }, // Raw
{ raw: 'create:polished_cut_andesite', stair: 'create:polished_cut_andesite_stairs', slab: 'create:polished_cut_andesite_slab', wall: 'create:polished_cut_andesite_wall',
dust: 'tfg:andesite_dust', loose: null, stonecutting: false }, // Smooth
{ raw: 'create:cut_andesite_bricks', stair: 'create:cut_andesite_brick_stairs', slab: 'create:cut_andesite_brick_slab', wall: 'create:cut_andesite_brick_wall',
dust: 'tfg:andesite_dust', loose: null, stonecutting: false }, // Bricks
{ raw: 'create:small_andesite_bricks', stair: 'create:small_andesite_brick_stairs', slab: 'create:small_andesite_brick_slab', wall: 'create:small_andesite_brick_wall',
dust: 'tfg:andesite_dust', loose: null, stonecutting: false }, // Bricks - Extra
// @Create Calcite
{ raw: 'create:cut_calcite', stair: 'create:cut_calcite_stairs', slab: 'create:cut_calcite_slab', wall: 'create:cut_calcite_wall',
dust: 'gtceu:calcite_dust', loose: null, stonecutting: false }, // Raw
{ raw: 'create:polished_cut_calcite', stair: 'create:polished_cut_calcite_stairs', slab: 'create:polished_cut_calcite_slab', wall: 'create:polished_cut_calcite_wall',
dust: 'gtceu:calcite_dust', loose: null, stonecutting: false }, // Smooth
{ raw: 'create:cut_calcite_bricks', stair: 'create:cut_calcite_brick_stairs', slab: 'create:cut_calcite_brick_slab', wall: 'create:cut_calcite_brick_wall',
dust: 'gtceu:calcite_dust', loose: null, stonecutting: false }, // Bricks
{ raw: 'create:small_calcite_bricks', stair: 'create:small_calcite_brick_stairs', slab: 'create:small_calcite_brick_slab', wall: 'create:small_calcite_brick_wall',
dust: 'gtceu:calcite_dust', loose: null, stonecutting: false }, // Bricks - Extra
// @Create Granite (Chert)
{ raw: 'create:cut_granite', stair: 'create:cut_granite_stairs', slab: 'create:cut_granite_slab', wall: 'create:cut_granite_wall',
dust: 'tfg:chert_dust', loose: null, stonecutting: false }, // Raw
{ raw: 'create:polished_cut_granite', stair: 'create:polished_cut_granite_stairs', slab: 'create:polished_cut_granite_slab', wall: 'create:polished_cut_granite_wall',
dust: 'tfg:chert_dust', loose: null, stonecutting: false }, // Smooth
{ raw: 'create:cut_granite_bricks', stair: 'create:cut_granite_brick_stairs', slab: 'create:cut_granite_brick_slab', wall: 'create:cut_granite_brick_wall',
dust: 'tfg:chert_dust', loose: null, stonecutting: false }, // Bricks
{ raw: 'create:small_granite_bricks', stair: 'create:small_granite_brick_stairs', slab: 'create:small_granite_brick_slab', wall: 'create:small_granite_brick_wall',
dust: 'tfg:chert_dust', loose: null, stonecutting: false }, // Bricks - Extra
// @Create Diorite
{ raw: 'create:cut_diorite', stair: 'create:cut_diorite_stairs', slab: 'create:cut_diorite_slab', wall: 'create:cut_diorite_wall',
dust: 'tfg:diorite_dust', loose: null, stonecutting: false }, // Raw
{ raw: 'create:polished_cut_diorite', stair: 'create:polished_cut_diorite_stairs', slab: 'create:polished_cut_diorite_slab', wall: 'create:polished_cut_diorite_wall',
dust: 'tfg:diorite_dust', loose: null, stonecutting: false }, // Smooth
{ raw: 'create:cut_diorite_bricks', stair: 'create:cut_diorite_brick_stairs', slab: 'create:cut_diorite_brick_slab', wall: 'create:cut_diorite_brick_wall',
dust: 'tfg:diorite_dust', loose: null, stonecutting: false }, // Bricks
{ raw: 'create:small_diorite_bricks', stair: 'create:small_diorite_brick_stairs', slab: 'create:small_diorite_brick_slab', wall: 'create:small_diorite_brick_wall',
dust: 'tfg:diorite_dust', loose: null, stonecutting: false }, // Bricks - Extra
// @Create Limestone
{ raw: 'create:cut_limestone', stair: 'create:cut_limestone_stairs', slab: 'create:cut_limestone_slab', wall: 'create:cut_limestone_wall',
dust: 'tfg:limestone_dust', loose: null, stonecutting: false }, // Raw
{ raw: 'create:polished_cut_limestone', stair: 'create:polished_cut_limestone_stairs', slab: 'create:polished_cut_limestone_slab', wall: 'create:polished_cut_limestone_wall',
dust: 'tfg:limestone_dust', loose: null, stonecutting: false }, // Smooth
{ raw: 'create:cut_limestone_bricks', stair: 'create:cut_limestone_brick_stairs', slab: 'create:cut_limestone_brick_slab', wall: 'create:cut_limestone_brick_wall',
dust: 'tfg:limestone_dust', loose: null, stonecutting: false }, // Bricks
{ raw: 'create:small_limestone_bricks', stair: 'create:small_limestone_brick_stairs', slab: 'create:small_limestone_brick_slab', wall: 'create:small_limestone_brick_wall',
dust: 'tfg:limestone_dust', loose: null, stonecutting: false }, // Bricks - Extra
// @Create Asurine
{ raw: 'create:cut_asurine', stair: 'create:cut_asurine_stairs', slab: 'create:cut_asurine_slab', wall: 'create:cut_asurine_wall',
dust: 'gtceu:asurine_dust', loose: null, stonecutting: false }, // Raw
{ raw: 'create:polished_cut_asurine', stair: 'create:polished_cut_asurine_stairs', slab: 'create:polished_cut_asurine_slab', wall: 'create:polished_cut_asurine_wall',
dust: 'gtceu:asurine_dust', loose: null, stonecutting: false }, // Smooth
{ raw: 'create:cut_asurine_bricks', stair: 'create:cut_asurine_brick_stairs', slab: 'create:cut_asurine_brick_slab', wall: 'create:cut_asurine_brick_wall',
dust: 'gtceu:asurine_dust', loose: null, stonecutting: false }, // Bricks
{ raw: 'create:small_asurine_bricks', stair: 'create:small_asurine_brick_stairs', slab: 'create:small_asurine_brick_slab', wall: 'create:small_asurine_brick_wall',
dust: 'gtceu:asurine_dust', loose: null, stonecutting: false }, // Bricks - Extra
// @Create Crimsite
{ raw: 'create:cut_crimsite', stair: 'create:cut_crimsite_stairs', slab: 'create:cut_crimsite_slab', wall: 'create:cut_crimsite_wall',
dust: null, loose: null, stonecutting: false }, // Raw
{ raw: 'create:polished_cut_crimsite', stair: 'create:polished_cut_crimsite_stairs', slab: 'create:polished_cut_crimsite_slab', wall: 'create:polished_cut_crimsite_wall',
dust: null, loose: null, stonecutting: false }, // Smooth
{ raw: 'create:cut_crimsite_bricks', stair: 'create:cut_crimsite_brick_stairs', slab: 'create:cut_crimsite_brick_slab', wall: 'create:cut_crimsite_brick_wall',
dust: null, loose: null, stonecutting: false }, // Bricks
{ raw: 'create:small_crimsite_bricks', stair: 'create:small_crimsite_brick_stairs', slab: 'create:small_crimsite_brick_slab', wall: 'create:small_crimsite_brick_wall',
dust: null, loose: null, stonecutting: false }, // Bricks - Extra
// @Create Ochrum
{ raw: 'create:cut_ochrum', stair: 'create:cut_ochrum_stairs', slab: 'create:cut_ochrum_slab', wall: 'create:cut_ochrum_wall',
dust: 'gtceu:ochrum_dust', loose: null, stonecutting: false }, // Raw
{ raw: 'create:polished_cut_ochrum', stair: 'create:polished_cut_ochrum_stairs', slab: 'create:polished_cut_ochrum_slab', wall: 'create:polished_cut_ochrum_wall',
dust: 'gtceu:ochrum_dust', loose: null, stonecutting: false }, // Smooth
{ raw: 'create:cut_ochrum_bricks', stair: 'create:cut_ochrum_brick_stairs', slab: 'create:cut_ochrum_brick_slab', wall: 'create:cut_ochrum_brick_wall',
dust: 'gtceu:ochrum_dust', loose: null, stonecutting: false }, // Bricks
{ raw: 'create:small_ochrum_bricks', stair: 'create:small_ochrum_brick_stairs', slab: 'create:small_ochrum_brick_slab', wall: 'create:small_ochrum_brick_wall',
dust: 'gtceu:ochrum_dust', loose: null, stonecutting: false }, // Bricks - Extra
// @Create Scorchia
{ raw: 'create:cut_scorchia', stair: 'create:cut_scorchia_stairs', slab: 'create:cut_scorchia_slab', wall: 'create:cut_scorchia_wall',
dust: null, loose: null, stonecutting: false }, // Raw
{ raw: 'create:polished_cut_scorchia', stair: 'create:polished_cut_scorchia_stairs', slab: 'create:polished_cut_scorchia_slab', wall: 'create:polished_cut_scorchia_wall',
dust: null, loose: null, stonecutting: false }, // Smooth
{ raw: 'create:cut_scorchia_bricks', stair: 'create:cut_scorchia_brick_stairs', slab: 'create:cut_scorchia_brick_slab', wall: 'create:cut_scorchia_brick_wall',
dust: null, loose: null, stonecutting: false }, // Bricks
{ raw: 'create:small_scorchia_bricks', stair: 'create:small_scorchia_brick_stairs', slab: 'create:small_scorchia_brick_slab', wall: 'create:small_scorchia_brick_wall',
dust: null, loose: null, stonecutting: false }, // Bricks - Extra
// @Create Scoria
{ raw: 'create:cut_scoria', stair: 'create:cut_scoria_stairs', slab: 'create:cut_scoria_slab', wall: 'create:cut_scoria_wall',
dust: null, loose: null, stonecutting: false }, // Raw
{ raw: 'create:polished_cut_scoria', stair: 'create:polished_cut_scoria_stairs', slab: 'create:polished_cut_scoria_slab', wall: 'create:polished_cut_scoria_wall',
dust: null, loose: null, stonecutting: false }, // Smooth
{ raw: 'create:cut_scoria_bricks', stair: 'create:cut_scoria_brick_stairs', slab: 'create:cut_scoria_brick_slab', wall: 'create:cut_scoria_brick_wall',
dust: null, loose: null, stonecutting: false }, // Bricks
{ raw: 'create:small_scoria_bricks', stair: 'create:small_scoria_brick_stairs', slab: 'create:small_scoria_brick_slab', wall: 'create:small_scoria_brick_wall',
dust: null, loose: null, stonecutting: false }, // Bricks - Extra
// @Create Tuff
{ raw: 'create:cut_tuff', stair: 'create:cut_tuff_stairs', slab: 'create:cut_tuff_slab', wall: 'create:cut_tuff_wall',
dust: null, loose: null, stonecutting: false }, // Raw
{ raw: 'create:polished_cut_tuff', stair: 'create:polished_cut_tuff_stairs', slab: 'create:polished_cut_tuff_slab', wall: 'create:polished_cut_tuff_wall',
dust: null, loose: null, stonecutting: false }, // Smooth
{ raw: 'create:cut_tuff_bricks', stair: 'create:cut_tuff_brick_stairs', slab: 'create:cut_tuff_brick_slab', wall: 'create:cut_tuff_brick_wall',
dust: null, loose: null, stonecutting: false }, // Bricks
{ raw: 'create:small_tuff_bricks', stair: 'create:small_tuff_brick_stairs', slab: 'create:small_tuff_brick_slab', wall: 'create:small_tuff_brick_wall',
dust: null, loose: null, stonecutting: false }, // Bricks - Extra
// @Create Veridium
{ raw: 'create:cut_veridium', stair: 'create:cut_veridium_stairs', slab: 'create:cut_veridium_slab', wall: 'create:cut_veridium_wall',
dust: null, loose: null, stonecutting: false }, // Raw
{ raw: 'create:polished_cut_veridium', stair: 'create:polished_cut_veridium_stairs', slab: 'create:polished_cut_veridium_slab', wall: 'create:polished_cut_veridium_wall',
dust: null, loose: null, stonecutting: false }, // Smooth
{ raw: 'create:cut_veridium_bricks', stair: 'create:cut_veridium_brick_stairs', slab: 'create:cut_veridium_brick_slab', wall: 'create:cut_veridium_brick_wall',
dust: null, loose: null, stonecutting: false }, // Bricks
{ raw: 'create:small_veridium_bricks', stair: 'create:small_veridium_brick_stairs', slab: 'create:small_veridium_brick_slab', wall: 'create:small_veridium_brick_wall',
dust: null, loose: null, stonecutting: false }, // Bricks - Extra
// #endregion @Create Stones
])
CUT_GRIND.forEach(x => {
@ -717,11 +937,9 @@ function registerTFGRockRecipes(event) {
}
}
if (x.wall != null) {
if (x.raw != null) {
event.recipes.tfc.chisel(x.wall, x.raw, 'smooth')
if (x.raw != null) {
if (x.stonecutting) {
event.stonecutting(`2x ${x.wall}`, x.raw).id(`${x.raw}_to_${x.wall}`.replace(/:/g, '_'))
event.stonecutting(x.wall, x.raw).id(`${x.raw}_to_${x.wall}`.replace(/:/g, '_'))
}
}
if (x.slab != null) {
@ -824,7 +1042,17 @@ function registerTFGRockRecipes(event) {
// #region PILLARS
const PILLARS = [
{ raw: 'tfc:rock/smooth/andesite', pillar: 'create:andesite_pillar' },
{ raw: 'create:cut_andesite', pillar: 'create:andesite_pillar' },
{ raw: 'create:polished_cut_calcite', pillar: 'create:calcite_pillar' },
{ raw: 'tfc:rock/smooth/chert', pillar: 'create:granite_pillar' },
{ raw: 'create:cut_granite', pillar: 'create:granite_pillar' },
{ raw: 'tfc:rock/smooth/diorite', pillar: 'create:diorite_pillar' },
{ raw: 'create:cut_diorite', pillar: 'create:diorite_pillar' },
{ raw: 'tfc:rock/smooth/limestone', pillar: 'create:limestone_pillar' },
{ raw: 'create:cut_limestone', pillar: 'create:limestone_pillar' },
{ raw: 'minecraft:polished_deepslate', pillar: 'create:deepslate_pillar' },
{ raw: 'create:polished_cut_deepslate', pillar: 'create:deepslate_pillar' },
{ raw: 'create:polished_cut_dripstone', pillar: 'create:dripstone_pillar' },
{ raw: 'create:cut_dripstone', pillar: 'create:dripstone_pillar' },
{ raw: 'ad_astra:moon_stone_bricks', pillar: 'ad_astra:moon_pillar' },
@ -834,11 +1062,26 @@ function registerTFGRockRecipes(event) {
{ raw: 'ad_astra:mercury_stone_bricks', pillar: 'ad_astra:mercury_pillar' },
{ raw: 'ad_astra:glacio_stone_bricks', pillar: 'ad_astra:glacio_pillar' },
{ raw: 'ad_astra:permafrost_bricks', pillar: 'ad_astra:permafrost_pillar' },
{ raw: 'minecraft:purpur_block', pillar: 'minecraft:purpur_pillar' }
{ raw: 'create:cut_asurine', pillar: 'create:asurine_pillar' },
{ raw: 'create:polished_cut_asurine', pillar: 'create:asurine_pillar' },
{ raw: 'create:cut_crimsite', pillar: 'create:crimsite_pillar' },
{ raw: 'create:polished_cut_crimsite', pillar: 'create:crimsite_pillar' },
{ raw: 'create:cut_ochrum', pillar: 'create:ochrum_pillar' },
{ raw: 'create:polished_cut_ochrum', pillar: 'create:ochrum_pillar' },
{ raw: 'create:cut_scorchia', pillar: 'create:scorchia_pillar' },
{ raw: 'create:polished_cut_scorchia', pillar: 'create:scorchia_pillar' },
{ raw: 'create:cut_scoria', pillar: 'create:scoria_pillar' },
{ raw: 'create:polished_cut_scoria', pillar: 'create:scoria_pillar' },
{ raw: 'create:cut_tuff', pillar: 'create:tuff_pillar' },
{ raw: 'create:polished_cut_tuff', pillar: 'create:tuff_pillar' },
{ raw: 'create:cut_veridium', pillar: 'create:veridium_pillar' },
{ raw: 'create:polished_cut_veridium', pillar: 'create:veridium_pillar' },
{ raw: 'minecraft:purpur_block', pillar: 'minecraft:purpur_pillar' },
{ raw: 'minecraft:quartz_block', pillar: 'minecraft:quartz_pillar' },
{ raw: 'ae2:quartz_block', pillar: 'ae2:quartz_pillar' }
]
PILLARS.forEach(x => {
console.log(x.pillar)
event.shaped(`2x ${x.pillar}`, [
'A',
'A'
@ -849,17 +1092,47 @@ function registerTFGRockRecipes(event) {
event.stonecutting(x.pillar, x.raw).id(`${x.raw}_to_${x.pillar}`.replace(/:/g, '_'))
})
// horizontal shaped recipes
event.shaped(
Item.of('create:layered_deepslate', 2), [ 'AA ' ], { A: 'minecraft:polished_deepslate' }
)
// horizontal shaped recipes
const PILLARS_H = [
{ raw: 'tfc:rock/smooth/andesite', pillar: 'create:layered_andesite' },
{ raw: 'create:polished_cut_andesite', pillar: 'create:layered_andesite' },
{ raw: 'tfc:rock/smooth/chert', pillar: 'create:layered_granite' },
{ raw: 'create:polished_cut_granite', pillar: 'create:layered_granite' },
{ raw: 'create:polished_cut_calcite', pillar: 'create:layered_calcite' },
{ raw: 'tfc:rock/smooth/diorite', pillar: 'create:layered_diorite' },
{ raw: 'create:polished_cut_diorite', pillar: 'create:layered_diorite' },
{ raw: 'tfc:rock/smooth/limestone', pillar: 'create:layered_limestone' },
{ raw: 'create:polished_cut_limestone', pillar: 'create:layered_limestone' },
{ raw: 'minecraft:polished_deepslate', pillar: 'create:layered_deepslate' },
{ raw: 'create:polished_cut_deepslate', pillar: 'create:layered_deepslate' },
{ raw: 'create:cut_dripstone', pillar: 'create:layered_dripstone' },
{ raw: 'create:polished_cut_dripstone', pillar: 'create:layered_dripstone' },
{ raw: 'create:cut_asurine', pillar: 'create:layered_asurine' },
{ raw: 'create:polished_cut_asurine', pillar: 'create:layered_asurine' },
{ raw: 'create:cut_crimsite', pillar: 'create:layered_crimsite' },
{ raw: 'create:polished_cut_crimsite', pillar: 'create:layered_crimsite' },
{ raw: 'create:cut_ochrum', pillar: 'create:layered_ochrum' },
{ raw: 'create:polished_cut_ochrum', pillar: 'create:layered_ochrum' },
{ raw: 'create:cut_scorchia', pillar: 'create:layered_scorchia' },
{ raw: 'create:polished_cut_scorchia', pillar: 'create:layered_scorchia' },
{ raw: 'create:cut_scoria', pillar: 'create:layered_scoria' },
{ raw: 'create:polished_cut_scoria', pillar: 'create:layered_scoria' },
{ raw: 'create:cut_tuff', pillar: 'create:layered_tuff' },
{ raw: 'create:polished_cut_tuff', pillar: 'create:layered_tuff' },
{ raw: 'create:cut_veridium', pillar: 'create:layered_veridium' },
{ raw: 'create:polished_cut_veridium', pillar: 'create:layered_veridium' }
]
PILLARS_H.forEach(x => {
console.log(x.pillar)
event.shaped(`2x ${x.pillar}`, [
'AA'
], {
A: x.raw
})
})
event.shaped(
Item.of('create:layered_dripstone', 2), [ 'AA ' ], { A: 'create:polished_cut_dripstone' }
)
event.shaped(
Item.of('create:layered_dripstone', 2), [ 'AA ' ], { A: 'create:cut_dripstone' }
)
// #endregion PILLARS
// #region ROCK_DUPING (Breaker)

View file

@ -60,9 +60,9 @@ function registerWansAncientBeastsLoots(event) {
event.addEntityLootModifier('wan_ancient_beasts:surfer')
.addLoot('tfc:medium_raw_hide')
.addWeightedLoot([1, 3], ['minecraft:bone'])
// TODO: meat
.addWeightedLoot([6, 8], ['tfg:food/raw_surfer_steak'])
//event.addEntityLootModifier('wan_ancient_beasts:surfer')
// .matchMainHand('#forge:tools/butchery_knives')
// .addWeightedLoot([1, 2], ['tfg:food/raw_whole_soarer'])
event.addEntityLootModifier('wan_ancient_beasts:surfer')
.matchMainHand('#forge:tools/butchery_knives')
.addWeightedLoot([3, 4], ['tfg:food/raw_surfer_steak'])
}

View file

@ -23,89 +23,6 @@ global.CREATE_DISABLED_ITEMS = [
'create:wheat_flour',
'create:wheat_flour',
// Vergilium Blocks
'create:veridium',
'create:cut_veridium',
'create:cut_veridium_stairs',
'create:cut_veridium_slab',
'create:cut_veridium_wall',
'create:polished_cut_veridium',
'create:polished_cut_veridium_stairs',
'create:polished_cut_veridium_slab',
'create:polished_cut_veridium_wall',
'create:cut_veridium_bricks',
'create:cut_veridium_brick_stairs',
'create:cut_veridium_brick_slab',
'create:cut_veridium_brick_wall',
'create:small_veridium_bricks',
'create:small_veridium_brick_stairs',
'create:small_veridium_brick_slab',
'create:small_veridium_brick_wall',
'create:layered_veridium',
'create:veridium_pillar',
// Scoria
'create:scoria',
'create:cut_scoria',
'create:cut_scoria_stairs',
'create:cut_scoria_slab',
'create:cut_scoria_wall',
'create:polished_cut_scoria',
'create:polished_cut_scoria_stairs',
'create:polished_cut_scoria_slab',
'create:polished_cut_scoria_wall',
'create:cut_scoria_bricks',
'create:cut_scoria_brick_stairs',
'create:cut_scoria_brick_slab',
'create:cut_scoria_brick_wall',
'create:small_scoria_bricks',
'create:small_scoria_brick_stairs',
'create:small_scoria_brick_slab',
'create:small_scoria_brick_wall',
'create:layered_scoria',
'create:scoria_pillar',
// Cringite
'create:crimsite',
'create:cut_crimsite',
'create:cut_crimsite_stairs',
'create:cut_crimsite_slab',
'create:cut_crimsite_wall',
'create:polished_cut_crimsite',
'create:polished_cut_crimsite_stairs',
'create:polished_cut_crimsite_slab',
'create:polished_cut_crimsite_wall',
'create:cut_crimsite_bricks',
'create:cut_crimsite_brick_stairs',
'create:cut_crimsite_brick_slab',
'create:cut_crimsite_brick_wall',
'create:small_crimsite_bricks',
'create:small_crimsite_brick_stairs',
'create:small_crimsite_brick_slab',
'create:small_crimsite_brick_wall',
'create:layered_crimsite',
'create:crimsite_pillar',
// Tuff
'create:cut_tuff',
'create:cut_tuff_stairs',
'create:cut_tuff_slab',
'create:cut_tuff_wall',
'create:polished_cut_tuff',
'create:polished_cut_tuff_stairs',
'create:polished_cut_tuff_slab',
'create:polished_cut_tuff_wall',
'create:cut_tuff_bricks',
'create:cut_tuff_brick_stairs',
'create:cut_tuff_brick_slab',
'create:cut_tuff_brick_wall',
'create:small_tuff_bricks',
'create:small_tuff_brick_stairs',
'create:small_tuff_brick_slab',
'create:small_tuff_brick_wall',
'create:layered_tuff',
'create:tuff_pillar',
// Blocks
'create:andesite_alloy_block',
'create:experience_block',

View file

@ -908,22 +908,18 @@ global.TFC_MEAT_RECIPE_COMPONENTS = /** @type {const} */ ([
{ input: "tfg:food/raw_glacian_mutton", output: "tfg:food/cooked_glacian_mutton", name: "cooked_glacian_mutton" },
{ input: "tfg:food/raw_sniffer_beef", output: "tfg:food/cooked_sniffer_beef", name: "cooked_sniffer_beef" },
{ input: "tfg:food/raw_wraptor", output: "tfg:food/cooked_wraptor", name: "cooked_wraptor" },
{
input: "wan_ancient_beasts:toxlacanth",
output: "wan_ancient_beasts:cooked_toxlacanth",
name: "cooked_toxlacanth",
},
{
input: "tfg:food/raw_springling_chops",
output: "tfg:food/cooked_springling_chops",
name: "cooked_springling_chops",
},
{ input: "wan_ancient_beasts:toxlacanth", output: "wan_ancient_beasts:cooked_toxlacanth", name: "cooked_toxlacanth" },
{ input: "tfg:food/raw_springling_collar", output: "tfg:food/cooked_springling_collar", name: "cooked_springling_collar" },
{ input: "tfg:food/raw_walker_steak", output: "tfg:food/cooked_walker_steak", name: "cooked_walker_steak" },
{ input: "tfg:food/raw_glider_wings", output: "tfg:food/cooked_glider_wings", name: "cooked_glider_wings" },
{ input: "tfg:food/raw_whole_soarer", output: "tfg:food/cooked_whole_soarer", name: "cooked_whole_soarer" },
{ input: "tfg:food/raw_crusher_meat", output: "tfg:food/cooked_crusher_meat", name: "cooked_crusher_meat" },
{ input: "tfg:food/raw_goober_meat", output: "tfg:food/cooked_goober_meat", name: "cooked_goober_meat" },
{ input: "wan_ancient_beasts:raw_ancient_meat", output: "wan_ancient_beasts:cooked_ancient_meat", name: "cooked_eater_meat" }
{ input: "wan_ancient_beasts:raw_ancient_meat", output: "wan_ancient_beasts:cooked_ancient_meat", name: "cooked_eater_meat" },
{ input: "tfg:food/raw_surfer_steak", output: "tfg:food/cooked_surfer_steak", name: "cooked_surfer_steak" },
{ input: "tfg:food/raw_long_pig_filet", output: "tfg:food/cooked_long_pig_filet", name: "cooked_long_pig_filet" },
{ input: "tfg:food/raw_cruncher_ribs", output: "tfg:food/cooked_cruncher_ribs", name: "cooked_cruncher_ribs" },
{ input: "tfg:food/raw_stickastackatick", output: "tfg:food/cooked_stickastackatick", name: "cooked_stickastackatick" },
]);
global.TFC_QUERN_POWDER_RECIPE_COMPONENTS = /** @type {const} */ ([

View file

@ -364,5 +364,23 @@ const registerTFGBlocks = (event) => {
.opaque(true)
})
event.create('tfg:rock/quartz_wall', 'wall')
.soundType('stone')
.textureAll('minecraft:block/quartz_block_side')
.tagBoth('tfg:rock_wall')
.mapColor('snow')
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
event.create('tfg:rock/smooth_quartz_wall', 'wall')
.soundType('stone')
.textureAll('minecraft:block/quartz_block_bottom')
.tagBoth('tfg:rock_wall')
.mapColor('snow')
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
// #endregion Reconstituted Stone
}

View file

@ -140,17 +140,17 @@ function registerTFGFoodItems(event) {
.tag('tfc:foods/cooked_meats')
//Springling
event.create('tfg:food/raw_springling_chops')
event.create('tfg:food/raw_springling_collar')
.translationKey('item.tfg.food.raw_springling_chops')
.texture('tfg:item/food/raw_springling_chops')
.texture('tfg:item/food/raw_springling_collar')
.food(food => food.hunger(2).saturation(2)
.effect('minecraft:hunger', 100, 0, 1))
.tag('tfc:foods/meats')
.tag('tfc:foods/raw_meats')
event.create('tfg:food/cooked_springling_chops')
event.create('tfg:food/cooked_springling_collar')
.translationKey('item.tfg.food.cooked_springling_chops')
.texture('tfg:item/food/cooked_springling_chops')
.texture('tfg:item/food/cooked_springling_collar')
.food(food => food.hunger(4).saturation(4))
.tag('tfc:foods/meats')
.tag('tfc:foods/cooked_meats')
@ -231,10 +231,87 @@ function registerTFGFoodItems(event) {
event.create('tfg:food/cooked_goober_meat')
.translationKey('item.tfg.food.cooked_goober_meat')
.texture('tfg:item/food/cooked_goober_meat')
.food(food => food.hunger(3).saturation(6))
.food(food => food.hunger(3).saturation(9))
.tag('tfc:foods/meats')
.tag('tfc:foods/cooked_meats')
//Stackatick
event.create('tfg:food/raw_stackatick_chunks')
.translationKey('item.tfg.food.raw_stackatick_chunks')
.texture('tfg:item/food/raw_stackatick_chunks')
.food(food => food.hunger(1).saturation(1)
.effect('minecraft:hunger', 100, 0, 1))
.tag('tfc:foods/meats')
.tag('tfc:foods/raw_meats')
event.create('tfg:food/raw_stickastackatick')
.translationKey('item.tfg.food.raw_stickastackatick')
.parentModel('tfg:item/food/raw_stickastackatick')
.food(food => food.hunger(1).saturation(1)
.effect('minecraft:hunger', 100, 0, 1)
.eaten(ctx => {
ctx.player.give('minecraft:stick')
}))
.tag('tfc:foods/meats')
.tag('tfc:foods/raw_meats')
event.create('tfg:food/cooked_stickastackatick')
.translationKey('item.tfg.food.cooked_stickastackatick')
.parentModel('tfg:item/food/cooked_stickastackatick')
.food(food => food.hunger(2).saturation(5)
.eaten(ctx => {
ctx.player.give('minecraft:stick')
}))
.tag('tfc:foods/meats')
.tag('tfc:foods/cooked_meats')
//Cruncher
event.create('tfg:food/raw_cruncher_ribs')
.translationKey('item.tfg.food.raw_cruncher_ribs')
.texture('tfg:item/food/raw_cruncher_ribs')
.food(food => food.hunger(2).saturation(2)
.effect('minecraft:hunger', 100, 0, 1))
.tag('tfc:foods/meats')
.tag('tfc:foods/raw_meats')
event.create('tfg:food/cooked_cruncher_ribs')
.translationKey('item.tfg.food.cooked_cruncher_ribs')
.texture('tfg:item/food/cooked_cruncher_ribs')
.food(food => food.hunger(10).saturation(14))
.tag('tfc:foods/meats')
.tag('tfc:foods/cooked_meats')
//Surfer
event.create('tfg:food/raw_surfer_steak')
.translationKey('item.tfg.food.raw_surfer_steak')
.texture('tfg:item/food/raw_surfer_steak')
.food(food => food.hunger(2).saturation(2)
.effect('minecraft:hunger', 100, 0, 1))
.tag('tfc:foods/meats')
.tag('tfc:foods/raw_meats')
event.create('tfg:food/cooked_surfer_steak')
.translationKey('item.tfg.food.cooked_surfer_steak')
.texture('tfg:item/food/cooked_surfer_steak')
.food(food => food.hunger(8).saturation(8))
.tag('tfc:foods/meats')
.tag('tfc:foods/cooked_meats')
//Longpig
event.create('tfg:food/raw_long_pig_filet')
.translationKey('item.tfg.food.raw_long_pig_filet')
.texture('tfg:item/food/raw_long_pig_filet')
.food(food => food.hunger(2).saturation(2)
.effect('minecraft:hunger', 100, 0, 1))
.tag('tfc:foods/meats')
.tag('tfc:foods/raw_meats')
event.create('tfg:food/cooked_long_pig_filet')
.translationKey('item.tfg.food.cooked_long_pig_filet')
.texture('tfg:item/food/cooked_long_pig_filet')
.food(food => food.hunger(7).saturation(8))
.tag('tfc:foods/meats')
.tag('tfc:foods/cooked_meats')
event.create('tfg:food/ice_soup')
.translationKey('item.tfg.food.ice_soup')

View file

@ -10,7 +10,7 @@
{
"pakku_id": "6k7DoFyO7bpHnhyk",
"type": "MOD",
"side": "CLIENT",
"side": "BOTH",
"slug": {
"curseforge": "aaa-particles",
"modrinth": "aaa-particles"
@ -4143,7 +4143,7 @@
"files": [
{
"type": "modrinth",
"file_name": "create_hypertube-0.2.6-FORGE.jar",
"file_name": "create_hypertube-0.2.6-hotfix-FORGE.jar",
"mc_versions": [
"1.20.1",
"1.20.2",
@ -4153,26 +4153,25 @@
"1.20.6"
],
"loaders": [
"forge",
"neoforge"
"forge"
],
"release_type": "beta",
"url": "https://cdn.modrinth.com/data/ATDdrG1y/versions/yAdQmaBl/create_hypertube-0.2.6-FORGE.jar",
"id": "yAdQmaBl",
"url": "https://cdn.modrinth.com/data/ATDdrG1y/versions/iRjDdZIt/create_hypertube-0.2.6-hotfix-FORGE.jar",
"id": "iRjDdZIt",
"parent_id": "ATDdrG1y",
"hashes": {
"sha512": "09f242017ca09588de986dad57998d29dc957ff317665cd202bce2e23a930469713388f76922a49e607e82a1b5820fb852de14c5b261da2646e1bf5e638d8e82",
"sha1": "5a72ee3a4ef80b18cb06c2601813aa0cdc8fb824"
"sha512": "3883609379fed3cde7a046667cb1d04af5816d007bb9c875603d7fb4f3292926663dd22ecc660faa733743fb1adae52cde8dbf2667655846f6bb00af4825e748",
"sha1": "83c1728344eef7669b933e36a42a1d0e4f529ea8"
},
"required_dependencies": [
"LNytGWDc"
],
"size": 351186,
"date_published": "2025-10-06T00:00:47.194203Z"
"size": 351225,
"date_published": "2025-10-09T14:05:53.834301Z"
},
{
"type": "curseforge",
"file_name": "create_hypertube-0.2.6-FORGE.jar",
"file_name": "create_hypertube-0.2.6-hotfix-FORGE.jar",
"mc_versions": [
"1.20.1"
],
@ -4181,18 +4180,18 @@
"forge"
],
"release_type": "beta",
"url": "https://edge.forgecdn.net/files/7071/930/create_hypertube-0.2.6-FORGE.jar",
"id": "7071930",
"url": "https://edge.forgecdn.net/files/7086/642/create_hypertube-0.2.6-hotfix-FORGE.jar",
"id": "7086642",
"parent_id": "1281336",
"hashes": {
"sha1": "5a72ee3a4ef80b18cb06c2601813aa0cdc8fb824",
"md5": "f1d7fc83381bfb58bb0d0e342cf53fe2"
"sha1": "83c1728344eef7669b933e36a42a1d0e4f529ea8",
"md5": "3863248ebd60a41ebf7dac874cf6e0c0"
},
"required_dependencies": [
"328085"
],
"size": 351186,
"date_published": "2025-10-05T23:58:59.537Z"
"size": 351225,
"date_published": "2025-10-09T14:00:11.063Z"
}
]
},
@ -14659,4 +14658,4 @@
}
],
"lockfile_version": 1
}
}