neuralgia/kubejs/startup_scripts/tfg/blocks.nether.js
Adrien Vidal 0a8e68e7d0
[Molden] Stone TFG-fication continued (#1845)
* Fixed some rock type tags

* Nether mossy cobbles

* nether mossy bricks

* mossy bricks

* nether brick recipes + deepstate sets + typos

* cobble interaction index

* reformatting tables

* Region delimiters for stone blocks

* More shaped sets + deepslate recipes

+ missing landslide recipes
+ tables formatting for readability

* Other nether shaped blocks

+ A bit or reorganizing of recipes.rocks.js

* Many Space Stone Blocks

+ Stone Declaration Refactor
+ Many typo fixes
+ Moon Stone Recipes
+ Some Missing tags

* Tags Refactor + Missing Blocks

* definition fix

* remove console debugs

* Space stones cutting & Interractions

+ Breaker Duping Reformat
+ Missing Dripstone Brick
+ Missing Red Granite recipes
+ Misc bugfixes

* small fix

* Vanilla Stone + Red Sandstone Fix

+ Duper loop fix

* Undo .gitignore changes

* Venus sandstone stuff
2025-09-16 15:54:54 -05:00

594 lines
No EOL
19 KiB
JavaScript

"use strict";
function registerTFGNetherBlocks(event) {
const SHAPES = ['stairs', 'slab', 'wall']
const STONE_CHARACS = {
deepslate: { sound: 'deepslate', type: "metamorphic", mapColor: 'terracotta_grey' },
blackstone: { sound: 'deepslate', type: "igneous_intrusive", mapColor: 'color_black' },
dripstone: { sound: 'dripstone_block', type: "sedimentary", mapColor: 'terracotta' },
crackrack: { sound: 'netherrack', type: "igneous_intrusive", mapColor: 'crimson_stem' },
nether: { sound: 'nether_bricks', type: "igneous_intrusive", mapColor: 'nether' }
}
// #region Raw Stones
SHAPES.forEach(shape => {
event.create(`tfg:rock/deepslate_${shape}`, shape)
.soundType(STONE_CHARACS.deepslate.sound)
.textureAll('minecraft:block/deepslate')
.tagBoth(`tfg:rock_${shape}s`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.deepslate.type}_items`)
.mapColor(STONE_CHARACS.deepslate.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
SHAPES.forEach(shape => {
event.create(`tfg:rock/dripstone_${shape}`, shape)
.soundType(STONE_CHARACS.dripstone.sound)
.textureAll('minecraft:block/dripstone_block')
.tagBoth(`tfg:rock_${shape}s`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.dripstone.type}_items`)
.mapColor(STONE_CHARACS.dripstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
SHAPES.forEach(shape => {
event.create(`tfg:rock/crackrack_${shape}`, shape)
.soundType(STONE_CHARACS.crackrack.sound)
.textureAll('beneath:block/crackrack')
.tagBoth(`tfg:rock_${shape}s`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.crackrack.type}_items`)
.mapColor(STONE_CHARACS.crackrack.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
// #endregion Raw Stones
// #region Hardened Stones
event.create('tfg:rock/hardened_deepslate')
.soundType(STONE_CHARACS.deepslate.sound)
.property(BlockProperties.AXIS)
.requiresTool(true)
.item(item => {
item.modelJson({ parent: 'minecraft:item/deepslate' })
})
.tagBlock('tfc:can_carve')
.tagBoth('forge:stone')
.tagBoth('tfc:rock/hardened')
.tagBoth(`tfc:${STONE_CHARACS.deepslate.type}_items`)
.mapColor(STONE_CHARACS.deepslate.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
event.create('tfg:rock/hardened_blackstone')
.soundType(STONE_CHARACS.blackstone.sound)
.requiresTool(true)
.item(item => {
item.modelJson({ parent: 'minecraft:item/blackstone' })
})
.tagBlock('tfc:can_carve')
.tagBoth('forge:stone')
.tagBoth('tfc:rock/hardened')
.tagBoth(`tfc:${STONE_CHARACS.blackstone.type}_items`)
.mapColor(STONE_CHARACS.blackstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
event.create('tfg:rock/hardened_dripstone')
.soundType(STONE_CHARACS.dripstone.sound)
.stoneSoundType()
.requiresTool(true)
.item(item => {
item.modelJson({ parent: 'minecraft:item/dripstone_block' })
})
.tagBlock('tfc:can_carve')
.tagBoth('forge:stone')
.tagBoth('tfc:rock/hardened')
.tagBoth(`tfc:${STONE_CHARACS.dripstone.type}_items`)
.mapColor(STONE_CHARACS.dripstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
// #endregion Hardened stones
// #region Spikes
event.create('tfg:spike/deepslate_spike', 'tfc:rock_spike')
.textureAll('minecraft:block/deepslate')
.soundType(STONE_CHARACS.deepslate.sound)
.tagBoth(`tfc:${STONE_CHARACS.deepslate.type}_items`)
.tagBlock('minecraft:mineable/pickaxe')
.hardness(0.8)
.resistance(0.8)
.requiresTool(true)
event.create('tfg:spike/blackstone_spike', 'tfc:rock_spike')
.textureAll('minecraft:block/blackstone')
.soundType(STONE_CHARACS.blackstone.sound)
.tagBoth(`tfc:${STONE_CHARACS.blackstone.type}_items`)
.tagBlock('minecraft:mineable/pickaxe')
.hardness(0.8)
.resistance(0.8)
.requiresTool(true)
event.create('tfg:spike/dripstone_spike', 'tfc:rock_spike')
.textureAll('minecraft:block/dripstone_block')
.soundType(STONE_CHARACS.dripstone.sound)
.tagBoth(`tfc:${STONE_CHARACS.dripstone.type}_items`)
.tagBlock('minecraft:mineable/pickaxe')
.hardness(0.8)
.resistance(0.8)
.requiresTool(true)
// #endregion Spikes
// #region Loose Stones
event.create('tfg:loose/deepslate', 'tfc:loose_rock')
.soundType(STONE_CHARACS.deepslate.sound)
.itemTexture('tfg:item/loose/deepslate')
.rockTypeModel(STONE_CHARACS.deepslate.type)
.translationKey("block.tfg.loose.deepslate")
.tagBlock('tfc:loose_rocks')
.tagItem('tfc:any_knapping')
.tagItem('tfc:rock_knapping')
.tagItem(`tfc:${STONE_CHARACS.deepslate.type}_rock`)
.tagBoth(`tfc:${STONE_CHARACS.deepslate.type}_items`)
.tagItem("rnr:loose_rock_items")
event.create('tfg:loose/dripstone', 'tfc:loose_rock')
.soundType(STONE_CHARACS.dripstone.sound)
.itemTexture('tfg:item/loose/dripstone')
.rockTypeModel(STONE_CHARACS.dripstone.type)
.translationKey("block.tfg.loose.dripstone")
.tagBlock('tfc:loose_rocks')
.tagItem('tfc:any_knapping')
.tagItem('tfc:rock_knapping')
.tagItem(`tfc:${STONE_CHARACS.dripstone.type}_rock`)
.tagBoth(`tfc:${STONE_CHARACS.dripstone.type}_items`)
.tagItem("rnr:loose_rock_items")
event.create('tfg:loose/crackrack', 'tfc:loose_rock')
.soundType(STONE_CHARACS.crackrack.sound)
.itemTexture('tfg:item/loose/crackrack')
.rockTypeModel(STONE_CHARACS.crackrack.type)
.translationKey("block.tfg.loose.crackrack")
.tagBlock('tfc:loose_rocks')
.tagItem('tfc:any_knapping')
.tagItem('tfc:rock_knapping')
.tagItem(`tfc:${STONE_CHARACS.crackrack.type}_rock`)
.tagBoth(`tfc:${STONE_CHARACS.crackrack.type}_items`)
.tagItem("rnr:loose_rock_items")
// #endregion Loose rocks
// #region Cobblestones
// Deepslate
event.create('tfg:rock/mossy_cobble_deepslate')
.soundType(STONE_CHARACS.deepslate.sound)
.tagBoth('forge:cobblestone')
.tagBoth('forge:cobblestone/normal')
.tagBoth(`tfc:${STONE_CHARACS.deepslate.type}_items`)
.mapColor(STONE_CHARACS.deepslate.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.tagBlock('tfc:can_landslide')
.fullBlock(true)
.opaque(true)
SHAPES.forEach(shape => {
event.create(`tfg:rock/mossy_cobble_deepslate_${shape}`, shape)
.soundType(STONE_CHARACS.deepslate.sound)
.tagBoth(`tfg:rock_${shape}s`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.deepslate.type}_items`)
.mapColor(STONE_CHARACS.deepslate.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
// Blackstone
event.create('tfg:rock/cobble_blackstone')
.soundType(STONE_CHARACS.blackstone.sound)
.tagBoth('forge:cobblestone')
.tagBoth('forge:cobblestone/normal')
.tagBoth(`tfc:${STONE_CHARACS.blackstone.type}_items`)
.mapColor(STONE_CHARACS.blackstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.tagBlock('tfc:can_landslide')
.fullBlock(true)
.opaque(true)
SHAPES.forEach(shape => {
event.create(`tfg:rock/cobble_blackstone_${shape}`, shape)
.soundType(STONE_CHARACS.blackstone.sound)
.textureAll('minecraft:block/blackstone_top')
.tagBoth(`tfg:rock_${shape}s`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.blackstone.type}_items`)
.mapColor(STONE_CHARACS.blackstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
event.create('tfg:rock/mossy_cobble_blackstone')
.soundType(STONE_CHARACS.blackstone.sound)
.tagBoth('forge:cobblestone')
.tagBoth('forge:cobblestone/normal')
.tagBoth(`tfc:${STONE_CHARACS.blackstone.type}_items`)
.mapColor(STONE_CHARACS.blackstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.tagBlock('tfc:can_landslide')
.fullBlock(true)
.opaque(true)
SHAPES.forEach(shape => {
event.create(`tfg:rock/mossy_cobble_blackstone_${shape}`, shape)
.soundType(STONE_CHARACS.blackstone.sound)
.tagBoth(`tfg:rock_${shape}s`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.blackstone.type}_items`)
.mapColor(STONE_CHARACS.blackstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
// Dripstone
event.create('tfg:rock/cobble_dripstone')
.soundType(STONE_CHARACS.dripstone.sound)
.tagBoth('forge:cobblestone')
.tagBoth('forge:cobblestone/normal')
.tagBoth(`tfc:${STONE_CHARACS.dripstone.type}_items`)
.mapColor(STONE_CHARACS.dripstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.tagBlock('tfc:can_landslide')
.fullBlock(true)
.opaque(true)
SHAPES.forEach(shape => {
event.create(`tfg:rock/cobble_dripstone_${shape}`, shape)
.soundType(STONE_CHARACS.dripstone.sound)
.tagBoth(`tfg:rock_${shape}s`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.dripstone.type}_items`)
.mapColor(STONE_CHARACS.dripstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
event.create('tfg:rock/mossy_cobble_dripstone')
.soundType(STONE_CHARACS.dripstone.sound)
.tagBoth('forge:cobblestone')
.tagBoth('forge:cobblestone/normal')
.tagBoth(`tfc:${STONE_CHARACS.dripstone.type}_items`)
.mapColor(STONE_CHARACS.dripstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.tagBlock('tfc:can_landslide')
.fullBlock(true)
.opaque(true)
SHAPES.forEach(shape => {
event.create(`tfg:rock/mossy_cobble_dripstone_${shape}`, shape)
.soundType(STONE_CHARACS.dripstone.sound)
.tagBoth(`tfg:rock_${shape}s`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.dripstone.type}_items`)
.mapColor(STONE_CHARACS.dripstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
// Crackrack
event.create('tfg:rock/cobble_crackrack')
.soundType(STONE_CHARACS.crackrack.sound)
.tagBoth('forge:cobblestone')
.tagBoth('forge:cobblestone/normal')
.tagBoth(`tfc:${STONE_CHARACS.crackrack.type}_items`)
.mapColor(STONE_CHARACS.crackrack.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.tagBlock('tfc:can_landslide')
.fullBlock(true)
.opaque(true)
SHAPES.forEach(shape => {
event.create(`tfg:rock/cobble_crackrack_${shape}`, shape)
.soundType(STONE_CHARACS.crackrack.sound)
.tagBoth(`tfg:rock_${shape}s`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.crackrack.type}_items`)
.mapColor(STONE_CHARACS.crackrack.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
event.create('tfg:rock/mossy_cobble_crackrack')
.soundType(STONE_CHARACS.crackrack.sound)
.tagBoth('forge:cobblestone')
.tagBoth('forge:cobblestone/normal')
.tagBoth(`tfc:${STONE_CHARACS.crackrack.type}_items`)
.mapColor(STONE_CHARACS.crackrack.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.tagBlock('tfc:can_landslide')
.fullBlock(true)
.opaque(true)
SHAPES.forEach(shape => {
event.create(`tfg:rock/mossy_cobble_crackrack_${shape}`, shape)
.soundType(STONE_CHARACS.crackrack.sound)
.tagBoth(`tfg:rock_${shape}s`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.crackrack.type}_items`)
.mapColor(STONE_CHARACS.crackrack.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
// #region Smooth (Polished/Cut) Stones
event.create('tfg:rock/polished_crackrack')
.soundType(STONE_CHARACS.crackrack.sound)
.tagBoth('forge:smooth_stone')
.tagBoth('tfc:igneous_intrusive_items')
.tagBoth('tfc:rock/smooth')
.mapColor('crimson_stem')
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
SHAPES.forEach(shape => {
event.create(`tfg:rock/polished_crackrack_${shape}`, shape)
.soundType(STONE_CHARACS.crackrack.sound)
.tagBoth(`tfg:rock_${shape}s`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.crackrack.type}_items`)
.mapColor(STONE_CHARACS.crackrack.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
// #endregion Smooth (Polished/Cut) Stones
// #region Gravels
event.create('tfg:rock/gravel_deepslate')
.soundType('gravel')
.tagBoth('forge:gravel')
.tagBoth('tfc:rock/gravel')
.tagBoth(`tfc:${STONE_CHARACS.deepslate.type}_items`)
.mapColor(STONE_CHARACS.deepslate.mapColor)
.tagBlock('minecraft:mineable/shovel')
.tagBlock('tfc:can_landslide')
.fullBlock(true)
.opaque(true)
event.create('tfg:rock/gravel_blackstone')
.soundType('gravel')
.tagBoth('forge:gravel')
.tagBoth('tfc:rock/gravel')
.tagBoth(`tfc:${STONE_CHARACS.blackstone.type}_items`)
.mapColor(STONE_CHARACS.blackstone.mapColor)
.tagBlock('minecraft:mineable/shovel')
.tagBlock('tfc:can_landslide')
.fullBlock(true)
.opaque(true)
event.create('tfg:rock/gravel_dripstone')
.soundType('gravel')
.tagBoth('forge:gravel')
.tagBoth('tfc:rock/gravel')
.tagBoth(`tfc:${STONE_CHARACS.dripstone.type}_items`)
.mapColor(STONE_CHARACS.dripstone.mapColor)
.tagBlock('minecraft:mineable/shovel')
.tagBlock('tfc:can_landslide')
.fullBlock(true)
.opaque(true)
event.create('tfg:rock/gravel_crackrack')
.soundType('gravel')
.tagBoth('forge:gravel')
.tagBoth('tfc:rock/gravel')
.tagBoth(`tfc:${STONE_CHARACS.crackrack.type}_items`)
.mapColor(STONE_CHARACS.crackrack.mapColor)
.tagBlock('minecraft:mineable/shovel')
.tagBlock('tfc:can_landslide')
.fullBlock(true)
.opaque(true)
// #endregion Gravels
// #region Bricks / Decorative
// Deepslate
SHAPES.forEach(shape => {
event.create(`tfg:rock/cracked_bricks_deepslate_${shape}`, shape)
.soundType(STONE_CHARACS.deepslate.sound)
.textureAll('minecraft:block/cracked_deepslate_bricks')
.tagBoth(`tfg:brick_${shape}`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.deepslate.type}_items`)
.mapColor(STONE_CHARACS.deepslate.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
SHAPES.forEach(shape => {
event.create(`tfg:rock/cracked_tiles_deepslate_${shape}`, shape)
.soundType(STONE_CHARACS.deepslate.sound)
.textureAll('minecraft:block/cracked_deepslate_tiles')
.tagBoth(`tfg:brick_${shape}`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.deepslate.type}_items`)
.mapColor(STONE_CHARACS.deepslate.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
event.create('tfg:rock/mossy_bricks_deepslate')
.soundType(STONE_CHARACS.deepslate.sound)
.tagBoth('minecraft:stone_bricks')
.tagBoth('forge:stone_bricks')
.tagBoth('tfc:rock/bricks')
.tagBoth('tfc:rock/mossy_bricks')
.tagBoth(`tfc:${STONE_CHARACS.deepslate.type}_items`)
.mapColor(STONE_CHARACS.deepslate.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
SHAPES.forEach(shape => {
event.create(`tfg:rock/mossy_bricks_deepslate_${shape}`, shape)
.soundType(STONE_CHARACS.deepslate.sound)
.tagBoth(`tfg:brick_${shape}`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.deepslate.type}_items`)
.mapColor(STONE_CHARACS.deepslate.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
// Blackstone
SHAPES.forEach(shape => {
event.create(`tfg:rock/cracked_bricks_blackstone_${shape}`, shape)
.soundType(STONE_CHARACS.blackstone.sound)
.textureAll('minecraft:block/cracked_polished_blackstone_bricks')
.tagBoth(`tfg:brick_${shape}`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.blackstone.type}_items`)
.mapColor(STONE_CHARACS.blackstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
event.create('tfg:rock/mossy_bricks_blackstone')
.soundType(STONE_CHARACS.blackstone.sound)
.tagBoth('minecraft:stone_bricks')
.tagBoth('forge:stone_bricks')
.tagBoth('tfc:rock/bricks')
.tagBoth('tfc:rock/mossy_bricks')
.tagBoth(`tfc:${STONE_CHARACS.blackstone.type}_items`)
.mapColor(STONE_CHARACS.blackstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
SHAPES.forEach(shape => {
event.create(`tfg:rock/mossy_bricks_blackstone_${shape}`, shape)
.soundType(STONE_CHARACS.blackstone.sound)
.tagBoth(`tfg:brick_${shape}`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.blackstone.type}_items`)
.mapColor(STONE_CHARACS.blackstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
// Dripstone
event.create('tfg:rock/cracked_bricks_dripstone')
.soundType(STONE_CHARACS.dripstone.sound)
.tagBoth('minecraft:stone_bricks')
.tagBoth('forge:stone_bricks')
.tagBoth('tfc:rock/bricks')
.tagBoth('tfc:rock/mossy_bricks')
.tagBoth(`tfc:${STONE_CHARACS.dripstone.type}_items`)
.mapColor(STONE_CHARACS.dripstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
SHAPES.forEach(shape => {
event.create(`tfg:rock/cracked_bricks_dripstone_${shape}`, shape)
.soundType(STONE_CHARACS.dripstone.sound)
.tagBoth(`tfg:brick_${shape}`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.dripstone.type}_items`)
.mapColor(STONE_CHARACS.dripstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
event.create('tfg:rock/mossy_bricks_dripstone')
.soundType(STONE_CHARACS.dripstone.sound)
.tagBoth('minecraft:stone_bricks')
.tagBoth('forge:stone_bricks')
.tagBoth('tfc:rock/bricks')
.tagBoth('tfc:rock/mossy_bricks')
.tagBoth(`tfc:${STONE_CHARACS.dripstone.type}_items`)
.mapColor(STONE_CHARACS.dripstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
SHAPES.forEach(shape => {
event.create(`tfg:rock/mossy_bricks_dripstone_${shape}`, shape)
.soundType(STONE_CHARACS.dripstone.sound)
.tagBoth(`tfg:brick_${shape}`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.dripstone.type}_items`)
.mapColor(STONE_CHARACS.dripstone.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
// Crackrack
SHAPES.forEach(shape => {
event.create(`tfg:rock/cracked_bricks_nether_${shape}`, shape)
.soundType(STONE_CHARACS.nether.sound)
.textureAll('minecraft:block/cracked_nether_bricks')
.tagBoth(`tfg:brick_${shape}`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.nether.type}_items`)
.mapColor(STONE_CHARACS.nether.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
event.create('tfg:rock/mossy_bricks_nether')
.soundType(STONE_CHARACS.nether.sound)
.tagBoth('minecraft:stone_bricks')
.tagBoth('forge:stone_bricks')
.tagBoth('tfc:rock/bricks')
.tagBoth('tfc:rock/mossy_bricks')
.tagBoth(`tfc:${STONE_CHARACS.nether.type}_items`)
.mapColor(STONE_CHARACS.nether.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
SHAPES.forEach(shape => {
event.create(`tfg:rock/mossy_bricks_nether_${shape}`, shape)
.soundType(STONE_CHARACS.nether.sound)
.tagBoth(`tfg:brick_${shape}`.replace(/ss/g, 's'))
.tagBoth(`tfc:${STONE_CHARACS.nether.type}_items`)
.mapColor(STONE_CHARACS.nether.mapColor)
.tagBlock('minecraft:mineable/pickaxe')
.fullBlock(true)
.opaque(true)
})
// #endregion Bricks / Decorative
// #region Plants
event.create('tfg:mushroom_roots', 'tfg:decorative_plant')
.soundType('nether_wart')
.tagItem('tfc:plants')
event.create('tfg:mushroom_sprouts', 'tfg:decorative_plant')
.soundType('nether_wart')
.tagItem('tfc:plants')
event.create('tfg:charred_log')
.fullBlock(true)
.woodSoundType()
.property(BlockProperties.AXIS)
.tagBoth('minecraft:mineable/axe')
.tagBoth('tfc:logs_that_log')
.tagBoth('afc:logs_that_log')
.tagBoth('minecraft:logs')
.mapColor('black')
}