* - Lots of ui updates. And a couple fixes. * - New button textures. - Fixed campfire loot table. - Made anvil rod recipes easier. - Added assembler recipes for multiblock tank parts. * - Added assembler recipes for multiblock tank parts. * - Updated Changelog * - Some more UI tweaks. - Added modern-markings mod with integration. * - Updated stromatolite textures - Added some more WIP venus foliage --------- Co-authored-by: Pyritie <pyritie@gmail.com>
451 lines
No EOL
13 KiB
JavaScript
451 lines
No EOL
13 KiB
JavaScript
function registerTFGSpaceBlocks(event) {
|
|
|
|
// Dimension markers
|
|
|
|
event.create('tfg:marker/moon')
|
|
.stoneSoundType()
|
|
.item(item => {
|
|
item.modelJson({ parent: 'tfg:block/marker/moon' })
|
|
})
|
|
.tagBlock('c:hidden_from_recipe_viewers')
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
|
|
event.create('tfg:marker/mars')
|
|
.stoneSoundType()
|
|
.item(item => {
|
|
item.modelJson({ parent: 'tfg:block/marker/mars' })
|
|
})
|
|
.tagBlock('c:hidden_from_recipe_viewers')
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
|
|
event.create('tfg:marker/venus')
|
|
.stoneSoundType()
|
|
.item(item => {
|
|
item.modelJson({ parent: 'tfg:block/marker/venus' })
|
|
})
|
|
.tagBlock('c:hidden_from_recipe_viewers')
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
|
|
event.create('tfg:marker/mercury')
|
|
.stoneSoundType()
|
|
.item(item => {
|
|
item.modelJson({ parent: 'tfg:block/marker/mercury' })
|
|
})
|
|
.tagBlock('c:hidden_from_recipe_viewers')
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
|
|
// Hardened stones
|
|
|
|
event.create('tfg:rock/hardened_moon_stone')
|
|
.stoneSoundType()
|
|
.requiresTool(true)
|
|
.item(item => {
|
|
item.modelJson({ parent: 'ad_astra:item/moon_stone' })
|
|
})
|
|
.tagBlock('tfc:can_carve')
|
|
.tagBoth('forge:stone')
|
|
.tagBoth('tfc:rock/hardened')
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
.mapColor('terracotta_cyan')
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
|
|
event.create('tfg:rock/hardened_moon_deepslate')
|
|
.soundType('deepslate')
|
|
.requiresTool(true)
|
|
.item(item => {
|
|
item.modelJson({ parent: 'ad_astra:item/moon_deepslate' })
|
|
})
|
|
.tagBlock('tfc:can_carve')
|
|
.tagBoth('forge:stone')
|
|
.tagBoth('tfc:rock/hardened')
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
.mapColor('terracotta_blue')
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
|
|
event.create('tfg:rock/hardened_mars_stone')
|
|
.stoneSoundType()
|
|
.requiresTool(true)
|
|
.item(item => {
|
|
item.modelJson({ parent: 'ad_astra:item/mars_stone' })
|
|
})
|
|
.tagBlock('tfc:can_carve')
|
|
.tagBoth('forge:stone')
|
|
.tagBoth('tfc:rock/hardened')
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
.mapColor('terracotta_orange')
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
|
|
event.create('tfg:rock/hardened_venus_stone')
|
|
.stoneSoundType()
|
|
.requiresTool(true)
|
|
.item(item => {
|
|
item.modelJson({ parent: 'ad_astra:item/venus_stone' })
|
|
})
|
|
.tagBlock('tfc:can_carve')
|
|
.tagBoth('forge:stone')
|
|
.tagBoth('tfc:rock/hardened')
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
.mapColor('terracotta_yellow')
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
|
|
event.create('tfg:rock/hardened_mercury_stone')
|
|
.stoneSoundType()
|
|
.requiresTool(true)
|
|
.item(item => {
|
|
item.modelJson({ parent: 'ad_astra:item/mercury_stone' })
|
|
})
|
|
.tagBlock('tfc:can_carve')
|
|
.tagBoth('forge:stone')
|
|
.tagBoth('tfc:rock/hardened')
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
.mapColor('terracotta_purple')
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
|
|
event.create('tfg:rock/hardened_glacio_stone')
|
|
.stoneSoundType()
|
|
.requiresTool(true)
|
|
.item(item => {
|
|
item.modelJson({ parent: 'ad_astra:item/glacio_stone' })
|
|
})
|
|
.tagBlock('tfc:can_carve')
|
|
.tagBoth('forge:stone')
|
|
.tagBoth('tfc:rock/hardened')
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
.mapColor('terracotta_light_blue')
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
|
|
// Loose stones
|
|
|
|
event.create('tfg:loose/moon_stone', 'tfc:loose_rock')
|
|
.stoneSoundType()
|
|
.itemTexture('tfg:item/loose/moon_stone')
|
|
.tagBlock('tfc:loose_rocks')
|
|
.tagItem('tfc:any_knapping')
|
|
.tagItem('tfc:rock_knapping')
|
|
.tagItem('tfc:igneous_intrusive_rock')
|
|
|
|
event.create('tfg:loose/moon_deepslate', 'tfc:loose_rock')
|
|
.soundType('deepslate')
|
|
.itemTexture('tfg:item/loose/moon_deepslate')
|
|
.tagBlock('tfc:loose_rocks')
|
|
.tagItem('tfc:any_knapping')
|
|
.tagItem('tfc:rock_knapping')
|
|
.tagItem('tfc:igneous_intrusive_rock')
|
|
|
|
event.create('tfg:loose/mars_stone', 'tfc:loose_rock')
|
|
.stoneSoundType()
|
|
.itemTexture('tfg:item/loose/mars_stone')
|
|
.tagBlock('tfc:loose_rocks')
|
|
.tagItem('tfc:any_knapping')
|
|
.tagItem('tfc:rock_knapping')
|
|
.tagItem('tfc:sedimentary_rock')
|
|
|
|
event.create('tfg:loose/venus_stone', 'tfc:loose_rock')
|
|
.stoneSoundType()
|
|
.itemTexture('tfg:item/loose/venus_stone')
|
|
.tagBlock('tfc:loose_rocks')
|
|
.tagItem('tfc:any_knapping')
|
|
.tagItem('tfc:rock_knapping')
|
|
.tagItem('tfc:igneous_extrusive_rock')
|
|
|
|
event.create('tfg:loose/mercury_stone', 'tfc:loose_rock')
|
|
.stoneSoundType()
|
|
.itemTexture('tfg:item/loose/mercury_stone')
|
|
.tagBlock('tfc:loose_rocks')
|
|
.tagItem('tfc:any_knapping')
|
|
.tagItem('tfc:rock_knapping')
|
|
.tagItem('tfc:igneous_intrusive_rock')
|
|
|
|
event.create('tfg:loose/glacio_stone', 'tfc:loose_rock')
|
|
.stoneSoundType()
|
|
.itemTexture('tfg:item/loose/glacio_stone')
|
|
.tagBlock('tfc:loose_rocks')
|
|
.tagItem('tfc:any_knapping')
|
|
.tagItem('tfc:rock_knapping')
|
|
.tagItem('tfc:igneous_extrusive_rock')
|
|
|
|
event.create('tfg:loose/permafrost', 'tfc:loose_rock')
|
|
.stoneSoundType()
|
|
.itemTexture('tfg:item/loose/permafrost')
|
|
.tagBlock('tfc:loose_rocks')
|
|
.tagItem('tfc:any_knapping')
|
|
.tagItem('tfc:rock_knapping')
|
|
.tagItem('tfc:metamorphic_rock')
|
|
|
|
// Spikes
|
|
|
|
event.create('tfg:spike/moon_stone_spike', 'tfc:rock_spike')
|
|
.stoneSoundType()
|
|
.noItem()
|
|
|
|
event.create('tfg:spike/moon_deepslate_spike', 'tfc:rock_spike')
|
|
.soundType('deepslate')
|
|
.noItem()
|
|
|
|
event.create('tfg:spike/mars_stone_spike', 'tfc:rock_spike')
|
|
.stoneSoundType()
|
|
.noItem()
|
|
|
|
event.create('tfg:spike/venus_stone_spike', 'tfc:rock_spike')
|
|
.stoneSoundType()
|
|
.noItem()
|
|
|
|
event.create('tfg:spike/mercury_stone_spike', 'tfc:rock_spike')
|
|
.stoneSoundType()
|
|
.noItem()
|
|
|
|
event.create('tfg:spike/glacio_stone_spike', 'tfc:rock_spike')
|
|
.stoneSoundType()
|
|
.noItem()
|
|
|
|
event.create('tfg:spike/permafrost_spike', 'tfc:rock_spike')
|
|
.stoneSoundType()
|
|
.noItem()
|
|
|
|
// #region Plants
|
|
|
|
/*
|
|
* Default box for single_plant = (3.0F, 0.0F, 3.0F, 13.0F, 7.0F, 13.0F)
|
|
* Default box for double_plants--Per half = (2.0F, 0.0F, 2.0F, 14.0F, 16.0F, 14.0F)
|
|
* Default box for smoke_emitter--Emits Signal smoke = (2.0F, 0.0F, 2.0F, 14.0F, 16.0F, 14.0F)
|
|
* Default box for light_smoke_emitter--Emits Cozy smoke = (2.0F, 0.0F, 2.0F, 14.0F, 16.0F, 14.0F)
|
|
*/
|
|
|
|
event.create('tfg:lunar_roots', 'tfg:decorative_plant')
|
|
.soundType('nether_wart')
|
|
.lightLevel(0.4)
|
|
.tagItem('tfg:moon_plants')
|
|
|
|
event.create('tfg:lunar_sprouts', 'tfg:decorative_plant')
|
|
.soundType('nether_wart')
|
|
.tagItem('tfg:moon_plants')
|
|
|
|
event.create('tfg:corallium_arenicolus_0', 'tfg:double_decorative_plant')
|
|
.soundType('nether_wart')
|
|
.tagItem('tfg:venus_plants')
|
|
.lightLevel(0.4)
|
|
.renderType('translucent')
|
|
|
|
event.create('tfg:corallium_arenicolus_1', 'tfg:decorative_plant')
|
|
.soundType('nether_wart')
|
|
.tagItem('tfg:venus_plants')
|
|
.box(3, 0, 3, 13, 14, 13)
|
|
|
|
event.create('tfg:corallium_arenicolus_2', 'tfg:decorative_plant')
|
|
.soundType('nether_wart')
|
|
.tagItem('tfg:venus_plants')
|
|
.renderType('translucent')
|
|
.box(0, 0, 0, 16, 4, 16)
|
|
|
|
event.create('tfg:corallium_arenicolus_3', 'tfg:decorative_plant')
|
|
.soundType('nether_wart')
|
|
.tagItem('tfg:venus_plants')
|
|
.box(3, 0, 3, 13, 14, 13)
|
|
|
|
event.create('tfg:corallium_arenicolus_4', 'tfg:decorative_plant')
|
|
.soundType('nether_wart')
|
|
.tagItem('tfg:venus_plants')
|
|
.box(3, 0, 3, 13, 14, 13)
|
|
|
|
event.create('tfg:corallium_arenicolus_5', 'tfg:decorative_plant')
|
|
.soundType('nether_wart')
|
|
.tagItem('tfg:venus_plants')
|
|
.box(3, 0, 3, 13, 14, 13)
|
|
|
|
// #endregion
|
|
|
|
//#region Venus Blocks
|
|
//Fluorapatite
|
|
const fluorapatite_colors = ['blue', 'green', 'brown', 'orange', 'white', 'yellow'];
|
|
fluorapatite_colors.forEach(color => {
|
|
//Sand
|
|
event.create(`tfg:sand/fluorapatite/${color}`, 'falling')
|
|
.textureAll(`tfg:block/planets/venus/sand_fluorapatite_${color}`)
|
|
.soundType('sand')
|
|
.requiresTool(false)
|
|
.tagBoth('forge:sand')
|
|
.tagItem('forge:sand/fluorapatite')
|
|
.tagBlock('minecraft:mineable/shovel')
|
|
.mapColor(`color_${color}`)
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
//Raw Sandstone
|
|
event.create(`tfg:sandstone/raw/fluorapatite/${color}`)
|
|
.textureAll(`tfg:block/planets/venus/sandstone_bottom_fluorapatite_${color}`)
|
|
.texture('up', `tfg:block/planets/venus/sandstone_top_fluorapatite_${color}`)
|
|
.hardness(0.8)
|
|
.resistance(0.8)
|
|
.soundType('stone')
|
|
.requiresTool(true)
|
|
.tagBoth('forge:sandstone')
|
|
.tagItem('forge:sandstone/fluorapatite')
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
.mapColor(`color_${color}`)
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
//Raw Sandstone Wall
|
|
event.create(`tfg:sandstone/wall/raw/fluorapatite/${color}`, 'wall')
|
|
.textureAll(`tfg:block/planets/venus/sandstone_bottom_fluorapatite_${color}`)
|
|
.hardness(0.8)
|
|
.resistance(0.8)
|
|
.soundType('stone')
|
|
.requiresTool(true)
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
.mapColor(`color_${color}`)
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
//Raw Sandstone Slab
|
|
event.create(`tfg:sandstone/slab/raw/fluorapatite/${color}`, 'slab')
|
|
.textureAll(`tfg:block/planets/venus/sandstone_bottom_fluorapatite_${color}`)
|
|
.hardness(0.8)
|
|
.resistance(0.8)
|
|
.soundType('stone')
|
|
.requiresTool(true)
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
.mapColor(`color_${color}`)
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
//Raw Sandstone Stairs
|
|
event.create(`tfg:sandstone/stairs/raw/fluorapatite/${color}`, 'stairs')
|
|
.textureAll(`tfg:block/planets/venus/sandstone_bottom_fluorapatite_${color}`)
|
|
.hardness(0.8)
|
|
.resistance(0.8)
|
|
.soundType('stone')
|
|
.requiresTool(true)
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
.mapColor(`color_${color}`)
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
//Smooth Sandstone
|
|
event.create(`tfg:sandstone/smooth/fluorapatite/${color}`)
|
|
.textureAll(`tfg:block/planets/venus/sandstone_top_fluorapatite_${color}`)
|
|
.hardness(0.8)
|
|
.resistance(0.8)
|
|
.soundType('stone')
|
|
.requiresTool(true)
|
|
.tagBoth('forge:sandstone')
|
|
.tagItem('forge:sandstone/fluorapatite')
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
.mapColor(`color_${color}`)
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
//Smooth Sandstone Wall
|
|
event.create(`tfg:sandstone/smooth/wall/fluorapatite/${color}`, 'wall')
|
|
.textureAll(`tfg:block/planets/venus/sandstone_top_fluorapatite_${color}`)
|
|
.hardness(0.8)
|
|
.resistance(0.8)
|
|
.soundType('stone')
|
|
.requiresTool(true)
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
.mapColor(`color_${color}`)
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
//Smooth Sandstone Slab
|
|
event.create(`tfg:sandstone/smooth/slab/fluorapatite/${color}`, 'slab')
|
|
.textureAll(`tfg:block/planets/venus/sandstone_top_fluorapatite_${color}`)
|
|
.hardness(0.8)
|
|
.resistance(0.8)
|
|
.soundType('stone')
|
|
.requiresTool(true)
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
.mapColor(`color_${color}`)
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
//Smooth Sandstone Stairs
|
|
event.create(`tfg:sandstone/smooth/stairs/fluorapatite/${color}`, 'stairs')
|
|
.textureAll(`tfg:block/planets/venus/sandstone_top_fluorapatite_${color}`)
|
|
.hardness(0.8)
|
|
.resistance(0.8)
|
|
.soundType('stone')
|
|
.requiresTool(true)
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
.mapColor(`color_${color}`)
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
//Chiseled Sandstone
|
|
event.create(`tfg:sandstone/smooth/chiseled/fluorapatite/${color}`)
|
|
.textureAll(`tfg:block/planets/venus/sandstone_chiseled_fluorapatite_${color}`)
|
|
.texture('up', `tfg:block/planets/venus/sandstone_top_fluorapatite_${color}`)
|
|
.texture('down', `tfg:block/planets/venus/sandstone_bottom_fluorapatite_${color}`)
|
|
.hardness(0.8)
|
|
.resistance(0.8)
|
|
.soundType('stone')
|
|
.requiresTool(true)
|
|
.tagBoth('forge:sandstone')
|
|
.tagItem('forge:sandstone/fluorapatite')
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
.mapColor(`color_${color}`)
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
//Sandstone
|
|
event.create(`tfg:sandstone/fluorapatite/${color}`)
|
|
.textureAll(`tfg:block/planets/venus/sandstone_fluorapatite_${color}`)
|
|
.texture('down', `tfg:block/planets/venus/sandstone_bottom_fluorapatite_${color}`)
|
|
.texture('up', `tfg:block/planets/venus/sandstone_top_fluorapatite_${color}`)
|
|
.hardness(0.8)
|
|
.resistance(0.8)
|
|
.soundType('stone')
|
|
.requiresTool(true)
|
|
.tagBoth('forge:sandstone')
|
|
.tagItem('forge:sandstone/fluorapatite')
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
.mapColor(`color_${color}`)
|
|
.fullBlock(true)
|
|
.opaque(true)
|
|
})
|
|
|
|
//#region Venus Stone
|
|
|
|
//Stromatolite
|
|
event.create('tfg:rock/raw/stromatolite', 'tfc:raw_rock')
|
|
.textureAll('tfg:block/planets/venus/stromatolite_spike')
|
|
.model('tfg:block/rock/stromatolite_block')
|
|
.rockTypeTooltip(Text.translatable('tooltip.tfg.sedimentary'))
|
|
.naturallySupported(true)
|
|
.sedimentary()
|
|
.renderType('cutout')
|
|
.soundType('dripstone_block')
|
|
.requiresTool(true)
|
|
.hardness(0.8)
|
|
.resistance(0.8)
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
|
|
event.create('tfg:rock/spike/stromatolite', 'tfc:rock_spike')
|
|
.textureAll('tfg:block/planets/venus/stromatolite_spike')
|
|
.soundType('dripstone_block')
|
|
.hardness(0.8)
|
|
.resistance(0.8)
|
|
.requiresTool(true)
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
|
|
//Geyserite
|
|
event.create('tfg:rock/raw/geyserite', 'tfc:raw_rock')
|
|
.textureAll('tfg:block/planets/venus/geyserite')
|
|
.rockTypeTooltip(Text.translatable('tooltip.tfg.sedimentary'))
|
|
.naturallySupported(true)
|
|
.sedimentary()
|
|
.soundType('dripstone_block')
|
|
.requiresTool(true)
|
|
.hardness(0.8)
|
|
.resistance(0.8)
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
|
|
event.create('tfg:rock/spike/geyserite', 'tfc:rock_spike')
|
|
.textureAll('tfg:block/planets/venus/geyserite')
|
|
.soundType('dripstone_block')
|
|
.hardness(0.8)
|
|
.resistance(0.8)
|
|
.requiresTool(true)
|
|
.tagBlock('minecraft:mineable/pickaxe')
|
|
|
|
} |