Merge branch '1.21' of https://git.dbotthepony.ru/DBot/overdrive_that_matters into 1.21
3
color datagen/essence_storage.sh
Normal file
@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
|
||||
node ./base_with_mask.js block/essence_storage block/essence_storage_mask essence_storage
|
1
src/bb/bread_monster.bbmodel
Normal file
@ -93,6 +93,11 @@ object DataGen {
|
||||
blockStateProvider.simpleBlockM(*blocks)
|
||||
}
|
||||
|
||||
fun decorativeCubeAllCutout(vararg blocks: Block) {
|
||||
blockModelProvider.decorativeCubeAllCutout(*blocks)
|
||||
blockStateProvider.simpleBlockM(*blocks)
|
||||
}
|
||||
|
||||
fun decorativeCubeAll(subdir: String, vararg blocks: Block) {
|
||||
blockModelProvider.decorativeCubeAll(subdir, *blocks)
|
||||
blockStateProvider.simpleBlockM(*blocks)
|
||||
|
@ -35,6 +35,7 @@ fun addDecorativeData(blockStateProvider: MatteryBlockStateProvider, itemModelPr
|
||||
}
|
||||
|
||||
DataGen.decorativeCubeAll(MBlocks.CARBON_FIBRE_BLOCK)
|
||||
DataGen.decorativeCubeAllCutout(MBlocks.METAL_MESH)
|
||||
|
||||
DataGen.decoratives(MRegistry.TRITANIUM_BLOCK)
|
||||
|
||||
|
@ -23,16 +23,25 @@ fun addBlockModels(provider: MatteryBlockModelProvider) {
|
||||
cubeAll(MBlocks.FLYWHEEL_HOUSING)
|
||||
column(MBlocks.FLYWHEEL_BEARING, "block/flywheel_bearing","block/flywheel_bearing_top")
|
||||
column(MBlocks.FLYWHEEL_SHAFT, "block/flywheel_shaft","block/flywheel_shaft_top")
|
||||
orientable(MBlocks.FLYWHEEL_BATTERY,"block/flywheel_housing","block/flywheel_controller")
|
||||
|
||||
column(MBlocks.GENERATOR_BLOCK, "block/generator_block","block/generator_block_top")
|
||||
cubeAllFramed("modular_frame", "block/modular_frame")
|
||||
cubeAllFramed("heavy_modular_frame", "block/heavy_modular_frame")
|
||||
|
||||
cubeAll(MBlocks.ENERGY_INPUT_INTERFACE)
|
||||
cubeAll(MBlocks.ENERGY_OUTPUT_INTERFACE)
|
||||
|
||||
orientable(MBlocks.MATTER_INPUT_HATCH,"block/hatch","block/matter_input_hatch")
|
||||
orientable(MBlocks.MATTER_OUTPUT_HATCH,"block/hatch","block/matter_output_hatch")
|
||||
cubeAll(MBlocks.TRITANIUM_HULL)
|
||||
|
||||
orientable(MBlocks.ENERGY_INPUT_HATCH,"block/hatch","block/energy_input_hatch")
|
||||
orientable(MBlocks.ENERGY_OUTPUT_HATCH,"block/hatch","block/energy_output_hatch")
|
||||
orientable(MBlocks.MATTER_INPUT_HATCH,"block/tritanium_hull","block/matter_input_hatch")
|
||||
orientable(MBlocks.MATTER_OUTPUT_HATCH,"block/tritanium_hull","block/matter_output_hatch")
|
||||
|
||||
orientable(MBlocks.ENERGY_INPUT_HATCH,"block/tritanium_hull","block/energy_input_hatch")
|
||||
orientable(MBlocks.ENERGY_OUTPUT_HATCH,"block/tritanium_hull","block/energy_output_hatch")
|
||||
|
||||
orientable(MBlocks.ITEM_INPUT_HATCH,"block/tritanium_hull","block/item_input_hatch")
|
||||
orientable(MBlocks.ITEM_OUTPUT_HATCH,"block/tritanium_hull","block/item_output_hatch")
|
||||
|
||||
cable("crude_energy_cable", "block/power_cable_0", powered = true)
|
||||
cable("regular_energy_cable", "block/power_cable_1", powered = true)
|
||||
|
@ -31,7 +31,6 @@ fun addBlockStates(provider: MatteryBlockStateProvider) {
|
||||
provider.ore(MBlocks.TRITANIUM_ORE)
|
||||
provider.ore(MBlocks.TRITANIUM_RAW_BLOCK)
|
||||
provider.block(MBlocks.TRITANIUM_INGOT_BLOCK)
|
||||
provider.block(MBlocks.METAL_MESH)
|
||||
|
||||
provider.ore(MBlocks.DILITHIUM_ORE)
|
||||
provider.ore(MBlocks.DEEPSLATE_DILITHIUM_ORE)
|
||||
@ -105,6 +104,7 @@ fun addBlockStates(provider: MatteryBlockStateProvider) {
|
||||
|
||||
provider.block(MBlocks.MATTER_DECOMPOSER.values)
|
||||
provider.block(MBlocks.MATTER_REPLICATOR.values)
|
||||
provider.block(MBlocks.MATTER_ENTANGLER)
|
||||
provider.block(MBlocks.PLATE_PRESS.values)
|
||||
provider.block(MBlocks.TWIN_PLATE_PRESS.values)
|
||||
provider.block(MBlocks.GRAVITATION_STABILIZER)
|
||||
@ -335,11 +335,18 @@ fun addBlockStates(provider: MatteryBlockStateProvider) {
|
||||
return@forAllStates generated.toTypedArray()
|
||||
}
|
||||
}
|
||||
|
||||
provider.block(MBlocks.TRITANIUM_HULL)
|
||||
|
||||
provider.block(MBlocks.FLYWHEEL_HOUSING)
|
||||
provider.block(MBlocks.FLYWHEEL_BEARING)
|
||||
provider.block(MBlocks.FLYWHEEL_SHAFT)
|
||||
provider.block(MBlocks.FLYWHEEL_BATTERY)
|
||||
|
||||
provider.block(MBlocks.GENERATOR_BLOCK)
|
||||
provider.block(MBlocks.MODULAR_FRAME)
|
||||
provider.block(MBlocks.HEAVY_MODULAR_FRAME)
|
||||
|
||||
provider.block(MBlocks.ENERGY_INPUT_INTERFACE)
|
||||
provider.block(MBlocks.ENERGY_OUTPUT_INTERFACE)
|
||||
|
||||
@ -348,4 +355,8 @@ fun addBlockStates(provider: MatteryBlockStateProvider) {
|
||||
|
||||
provider.block(MBlocks.MATTER_INPUT_HATCH)
|
||||
provider.block(MBlocks.MATTER_OUTPUT_HATCH)
|
||||
|
||||
provider.block(MBlocks.ITEM_INPUT_HATCH)
|
||||
provider.block(MBlocks.ITEM_OUTPUT_HATCH)
|
||||
|
||||
}
|
||||
|
@ -192,6 +192,7 @@ fun addItemModels(provider: MatteryItemModelProvider) {
|
||||
provider.coloredWithBaseBlock(MItems.MATTER_BOTTLER, "matter_bottler", "_idle")
|
||||
provider.coloredWithBaseBlock(MItems.MATTER_SCANNER, "matter_scanner", "_idle")
|
||||
provider.coloredWithBaseBlock(MItems.MATTER_REPLICATOR, "matter_replicator", "_idle")
|
||||
provider.block(MItems.MATTER_ENTANGLER, "matter_entangler_idle")
|
||||
provider.coloredWithBaseBlock(MItems.DRIVE_VIEWER, "drive_viewer", "_idle")
|
||||
provider.coloredWithBaseBlock(MItems.MATTER_DECOMPOSER, "matter_decomposer", "_idle")
|
||||
provider.coloredWithBaseBlock(MItems.ENERGY_SERVO, "energy_servo")
|
||||
@ -237,6 +238,9 @@ fun addItemModels(provider: MatteryItemModelProvider) {
|
||||
provider.block(MItems.FLYWHEEL_HOUSING)
|
||||
provider.block(MItems.FLYWHEEL_BEARING)
|
||||
provider.block(MItems.FLYWHEEL_SHAFT)
|
||||
provider.block(MItems.FLYWHEEL_BATTERY)
|
||||
|
||||
provider.block(MItems.TRITANIUM_HULL)
|
||||
|
||||
provider.block(MItems.GENERATOR_BLOCK)
|
||||
provider.block(MItems.ENERGY_INPUT_INTERFACE)
|
||||
@ -248,6 +252,12 @@ fun addItemModels(provider: MatteryItemModelProvider) {
|
||||
provider.block(MItems.MATTER_INPUT_HATCH)
|
||||
provider.block(MItems.MATTER_OUTPUT_HATCH)
|
||||
|
||||
provider.block(MItems.ITEM_INPUT_HATCH)
|
||||
provider.block(MItems.ITEM_OUTPUT_HATCH)
|
||||
|
||||
provider.block(MItems.MODULAR_FRAME)
|
||||
provider.block(MItems.HEAVY_MODULAR_FRAME)
|
||||
|
||||
MItems.TRITANIUM_ANVIL.values.forEach { provider.blocks(it) }
|
||||
|
||||
for ((color, item) in MItems.CARGO_CRATE_MINECARTS) {
|
||||
|
@ -549,13 +549,12 @@ private fun blocks(provider: MatteryLanguageProvider) {
|
||||
addBlock(MBlocks.DRIVE_VIEWER.values, "Drive Viewer")
|
||||
|
||||
add(MBlocks.BLACK_HOLE, "Local Anomalous Spacetime Dilation Singular Point")
|
||||
add(MBlocks.BLACK_HOLE_GENERATOR, "Matter Acceleration Power Generator")
|
||||
|
||||
add(MBlocks.FLYWHEEL_SHAFT, "Flywheel Shaft")
|
||||
add(MBlocks.FLYWHEEL_SHAFT, "desc", "Placed between bearings, safe for decoration")
|
||||
|
||||
add(MBlocks.FLYWHEEL_BEARING, "Flywheel Bearing")
|
||||
add(MBlocks.FLYWHEEL_BEARING, "desc", "Replaces center block of housing at bottom and top, safe for decoration")
|
||||
add(MBlocks.FLYWHEEL_BEARING, "desc", "Replaces top and bottom housing blocks in the center, safe for decoration")
|
||||
|
||||
add(MBlocks.FLYWHEEL_BATTERY, "Flywheel Controller")
|
||||
add(MBlocks.FLYWHEEL_BATTERY, "desc", "Multiblock controller, requires housing, bearing, shaft, generator and core material of choice")
|
||||
@ -570,7 +569,10 @@ private fun blocks(provider: MatteryLanguageProvider) {
|
||||
add(MBlocks.FLYWHEEL_HOUSING, "desc", "5xNx5 multiblock casing, safe for decoration")
|
||||
|
||||
add(MBlocks.GENERATOR_BLOCK, "Generator Block")
|
||||
add(MBlocks.GENERATOR_BLOCK, "desc", "Part of multiblock, safe for decoration")
|
||||
add(MBlocks.GENERATOR_BLOCK, "desc", "Part of a multiblock, safe for decoration")
|
||||
|
||||
add(MBlocks.MODULAR_FRAME, "Modular Frame")
|
||||
add(MBlocks.HEAVY_MODULAR_FRAME, "Heavy Modular Frame")
|
||||
|
||||
add(MBlocks.ENERGY_INPUT_INTERFACE, "Energy Input Interface")
|
||||
add(MBlocks.ENERGY_OUTPUT_INTERFACE, "Energy Output Interface")
|
||||
@ -582,6 +584,9 @@ private fun blocks(provider: MatteryLanguageProvider) {
|
||||
add(MBlocks.ITEM_OUTPUT_HATCH, "Item Output Hatch")
|
||||
add(MBlocks.MATTER_OUTPUT_HATCH, "Matter Output Hatch")
|
||||
|
||||
add(MBlocks.BLACK_HOLE_GENERATOR, "Matter Acceleration Power Generator")
|
||||
add(MBlocks.TRITANIUM_HULL, "Tritanium Hull")
|
||||
add(MBlocks.TRITANIUM_HULL, "desc", "A sturdy part of a multiblock, safe for decoration")
|
||||
add(MBlocks.MATTER_INJECTOR, "Matter Injector")
|
||||
add(MBlocks.ANTIMATTER_INJECTOR, "Antimatter Injector")
|
||||
add(MBlocks.HIGH_ENERGY_PARTICLE_COLLECTOR, "High Energy Particle Collector")
|
||||
@ -809,6 +814,8 @@ private fun items(provider: MatteryLanguageProvider) {
|
||||
add(MItems.MIRROR, "desc", "I can clearly see my own reflection in this mirror")
|
||||
add(MItems.REINFORCED_TRITANIUM_PLATE, "Reinforced Tritanium Plate")
|
||||
add(MItems.REINFORCED_TRITANIUM_PLATE, "desc", "An armor plate, reinforced to withstand great kinetic forces")
|
||||
add(MItems.REINFORCED_IRON_PLATE, "Reinforced Iron Plate")
|
||||
add(MItems.REINFORCED_IRON_PLATE, "desc", "A sturdier and more durable Iron Plate")
|
||||
add(MItems.ARMOR_ASSEMBLY, "Armor assembly")
|
||||
add(MItems.CARBON_MESH, "Carbon Mesh")
|
||||
|
||||
|
@ -555,13 +555,12 @@ private fun blocks(provider: MatteryLanguageProvider) {
|
||||
add(MBlocks.INFINITE_WATER_SOURCE, "desc", "Выталкивает воду в соседние блоки автоматически")
|
||||
|
||||
add(MBlocks.BLACK_HOLE, "Локализированная сингулярная точка аномального искажения пространства-времени")
|
||||
add(MBlocks.BLACK_HOLE_GENERATOR, "Генератор энергии ускорением материи")
|
||||
|
||||
add(MBlocks.FLYWHEEL_SHAFT, "Маховый вал")
|
||||
add(MBlocks.FLYWHEEL_SHAFT, "desc", "Устанавливается между подшипников")
|
||||
|
||||
add(MBlocks.FLYWHEEL_BEARING, "Маховый подшипник")
|
||||
add(MBlocks.FLYWHEEL_BEARING, "desc", "Заменяет центральный блок корпуса снизу и сверху")
|
||||
add(MBlocks.FLYWHEEL_BEARING, "desc", "Заменяет центральный блок корпуса сверху и снизу")
|
||||
|
||||
add(MBlocks.FLYWHEEL_BATTERY, "Блок управления маховым хранилищем энергии")
|
||||
add(MBlocks.FLYWHEEL_BATTERY, "desc", "Мультиблок, который требует подшипники, корпус, вал, блоки генераторов и ядро из материала на ваше усмотрение")
|
||||
@ -575,8 +574,11 @@ private fun blocks(provider: MatteryLanguageProvider) {
|
||||
add(MBlocks.FLYWHEEL_HOUSING, "Корпус махового хранилища энергии")
|
||||
add(MBlocks.FLYWHEEL_HOUSING, "desc", "Мультиблок структура с размерностью 5xNx5")
|
||||
|
||||
add(MBlocks.GENERATOR_BLOCK, "Generator Block")
|
||||
add(MBlocks.GENERATOR_BLOCK, "desc", "Part of multiblock, safe for decoration")
|
||||
add(MBlocks.GENERATOR_BLOCK, "Генераторный блок")
|
||||
add(MBlocks.GENERATOR_BLOCK, "desc", "Часть мультиблока, безопасна в качестве декорации")
|
||||
|
||||
add(MBlocks.MODULAR_FRAME, "Модульный каркас")
|
||||
add(MBlocks.HEAVY_MODULAR_FRAME, "Тяжёлый модульный каркас")
|
||||
|
||||
add(MBlocks.ENERGY_INPUT_INTERFACE, "Входной энергетический интерфейс")
|
||||
add(MBlocks.ENERGY_OUTPUT_INTERFACE, "Выходной энергетический интерфейс")
|
||||
@ -588,6 +590,9 @@ private fun blocks(provider: MatteryLanguageProvider) {
|
||||
add(MBlocks.ITEM_OUTPUT_HATCH, "Выходной предметный клапан")
|
||||
add(MBlocks.MATTER_OUTPUT_HATCH, "Выходной клапан материи")
|
||||
|
||||
add(MBlocks.BLACK_HOLE_GENERATOR, "Генератор энергии ускорением материи")
|
||||
add(MBlocks.TRITANIUM_HULL, "Тритановый корпус")
|
||||
add(MBlocks.TRITANIUM_HULL, "desc", "Прочная часть мультиблока, безопасна в качестве декорации")
|
||||
add(MBlocks.MATTER_INJECTOR, "Инжектор материи")
|
||||
add(MBlocks.ANTIMATTER_INJECTOR, "Инжектор анти-материи")
|
||||
add(MBlocks.HIGH_ENERGY_PARTICLE_COLLECTOR, "Коллектор высокоэнергичных частиц")
|
||||
@ -802,6 +807,8 @@ private fun items(provider: MatteryLanguageProvider) {
|
||||
add(MItems.MIRROR, "desc", "Я могу очень отчётливо видеть своё отражение в этом зеркале")
|
||||
add(MItems.REINFORCED_TRITANIUM_PLATE, "Укреплённая тритановая пластина")
|
||||
add(MItems.REINFORCED_TRITANIUM_PLATE, "desc", "Бронированная пластина, усиленная чтобы выдержать большие кинетические силы")
|
||||
add(MItems.REINFORCED_IRON_PLATE, "Укреплённая железная пластина")
|
||||
add(MItems.REINFORCED_IRON_PLATE, "desc", "Более надёжная и прочная железная пластина")
|
||||
add(MItems.ARMOR_ASSEMBLY, "Стройка брони")
|
||||
add(MItems.CARBON_MESH, "Углеродная сетка")
|
||||
|
||||
|
@ -35,6 +35,8 @@ fun addDecorativeLoot(lootTables: LootTables) {
|
||||
lootTables.dropsSelf(MBlocks.METAL_MESH) { condition(ExplosionCondition.survivesExplosion()) }
|
||||
lootTables.dropsSelf(MBlocks.METAL_RAILING) { condition(ExplosionCondition.survivesExplosion()) }
|
||||
|
||||
lootTables.dropsSelf(MBlocks.METAL_JUNK) { condition(ExplosionCondition.survivesExplosion()) }
|
||||
|
||||
lootTables.dropsSelf(MBlocks.TRITANIUM_RAW_BLOCK) { condition(ExplosionCondition.survivesExplosion()) }
|
||||
lootTables.dropsSelf(MBlocks.TRITANIUM_STRIPED_BLOCK.values) { condition(ExplosionCondition.survivesExplosion()) }
|
||||
lootTables.dropsSelf(MBlocks.TRITANIUM_STRIPED_WALL.values) { condition(ExplosionCondition.survivesExplosion()) }
|
||||
@ -48,7 +50,12 @@ fun addDecorativeLoot(lootTables: LootTables) {
|
||||
lootTables.dropsSelf(MBlocks.TRITANIUM_INGOT_BLOCK) { condition(ExplosionCondition.survivesExplosion()) }
|
||||
lootTables.dropsSelf(MBlocks.TRITANIUM_BARS) { condition(ExplosionCondition.survivesExplosion()) }
|
||||
|
||||
lootTables.dropsSelf(MBlocks.TRITANIUM_HULL) { condition(ExplosionCondition.survivesExplosion()) }
|
||||
|
||||
lootTables.dropsSelf(MBlocks.GENERATOR_BLOCK) { condition(ExplosionCondition.survivesExplosion()) }
|
||||
lootTables.dropsSelf(MBlocks.MODULAR_FRAME) { condition(ExplosionCondition.survivesExplosion()) }
|
||||
lootTables.dropsSelf(MBlocks.HEAVY_MODULAR_FRAME) { condition(ExplosionCondition.survivesExplosion()) }
|
||||
|
||||
lootTables.dropsSelf(MBlocks.FLYWHEEL_SHAFT) { condition(ExplosionCondition.survivesExplosion()) }
|
||||
lootTables.dropsSelf(MBlocks.FLYWHEEL_HOUSING) { condition(ExplosionCondition.survivesExplosion()) }
|
||||
lootTables.dropsSelf(MBlocks.FLYWHEEL_BEARING) { condition(ExplosionCondition.survivesExplosion()) }
|
||||
|
@ -59,6 +59,7 @@ fun addMachineLoot(lootTables: LootTables) {
|
||||
lootTables.tile(MBlocks.MATTER_BOTTLER.values)
|
||||
|
||||
lootTables.tile(MBlocks.BLACK_HOLE_GENERATOR)
|
||||
|
||||
lootTables.tile(MBlocks.FLYWHEEL_BATTERY)
|
||||
|
||||
lootTables.dropsSelf(listOf(
|
||||
@ -69,10 +70,13 @@ fun addMachineLoot(lootTables: LootTables) {
|
||||
|
||||
lootTables.tile(MBlocks.ITEM_INPUT_HATCH)
|
||||
lootTables.tile(MBlocks.ITEM_OUTPUT_HATCH)
|
||||
|
||||
lootTables.tile(MBlocks.ENERGY_INPUT_HATCH)
|
||||
lootTables.tile(MBlocks.ENERGY_OUTPUT_HATCH)
|
||||
|
||||
lootTables.tile(MBlocks.MATTER_INPUT_HATCH)
|
||||
lootTables.tile(MBlocks.MATTER_OUTPUT_HATCH)
|
||||
|
||||
lootTables.tile(MBlocks.ENERGY_INPUT_INTERFACE)
|
||||
lootTables.tile(MBlocks.ENERGY_OUTPUT_INTERFACE)
|
||||
}
|
||||
|
@ -34,6 +34,22 @@ class MatteryBlockModelProvider(event: GatherDataEvent) : BlockModelProvider(eve
|
||||
}
|
||||
}
|
||||
|
||||
fun cubeAllCutout(vararg blocks: Block) {
|
||||
for (block in blocks) {
|
||||
exec {
|
||||
cubeAll(block.registryName!!.path, modLocation("block/${block.registryName!!.path}")).renderType("cutout_mipped")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun cubeAllFramed(modelName: String, textureName: String) {
|
||||
exec {
|
||||
withExistingParent(modelName, modLocation("block/frame_block"))
|
||||
.texture("texture", textureName)
|
||||
.renderType("cutout_mipped")
|
||||
}
|
||||
}
|
||||
|
||||
fun decorativeGlassAll(blocks: Collection<Block>) {
|
||||
for (block in blocks) {
|
||||
exec {
|
||||
@ -58,6 +74,14 @@ class MatteryBlockModelProvider(event: GatherDataEvent) : BlockModelProvider(eve
|
||||
}
|
||||
}
|
||||
|
||||
fun decorativeCubeAllCutout(vararg blocks: Block) {
|
||||
for (block in blocks) {
|
||||
exec {
|
||||
cubeAll(block.registryName!!.path, modLocation("block/decorative/${block.registryName!!.path}")).renderType("cutout_mipped")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun decorativeCubeAll(subdir: String, vararg blocks: Block) {
|
||||
for (block in blocks) {
|
||||
exec {
|
||||
|
@ -262,11 +262,19 @@ fun addCraftingTableRecipes(consumer: RecipeOutput) {
|
||||
.build(consumer)
|
||||
|
||||
MatteryRecipe(MItems.REINFORCED_TRITANIUM_PLATE, category = RecipeCategory.MISC)
|
||||
.rowB(MItemTags.CARBON_PLATES)
|
||||
.row(MItemTags.CARBON_PLATES, MItemTags.TRITANIUM_PLATES, MItemTags.CARBON_PLATES)
|
||||
.rowB(MItemTags.CARBON_PLATES)
|
||||
.unlockedBy(MItemTags.TRITANIUM_PLATES)
|
||||
.build(consumer)
|
||||
.rowB(MItemTags.CARBON_PLATES)
|
||||
.row(MItemTags.CARBON_PLATES, MItemTags.TRITANIUM_PLATES, MItemTags.CARBON_PLATES)
|
||||
.rowB(MItemTags.CARBON_PLATES)
|
||||
.unlockedBy(MItemTags.TRITANIUM_PLATES)
|
||||
.build(consumer)
|
||||
|
||||
MatteryRecipe(MItems.REINFORCED_IRON_PLATE, category = RecipeCategory.MISC)
|
||||
.rowB(MItemTags.CARBON_PLATES)
|
||||
.row(MItemTags.CARBON_PLATES, MItemTags.IRON_PLATES, MItemTags.CARBON_PLATES)
|
||||
.rowB(MItemTags.CARBON_PLATES)
|
||||
.unlockedBy(MItemTags.IRON_PLATES)
|
||||
.build(consumer)
|
||||
|
||||
MatteryRecipe(MItems.ARMOR_ASSEMBLY, category = RecipeCategory.MISC)
|
||||
.row(MItemTags.CARBON_PLATES, MItemTags.IRON_PLATES, MItemTags.CARBON_PLATES)
|
||||
.row(MItemTags.IRON_PLATES, Items.DIAMOND, MItemTags.IRON_PLATES)
|
||||
|
@ -116,6 +116,18 @@ fun addMultiblockRecipes(consumer: RecipeOutput) {
|
||||
.row(MItems.ELECTRIC_PARTS, MItems.ELECTROMOTOR, MItems.ELECTRIC_PARTS)
|
||||
.build(consumer)
|
||||
|
||||
MatteryRecipe(MItems.MODULAR_FRAME, count = 4, category = machinesCategory)
|
||||
.row(MItemTags.IRON_PLATES, Tags.Items.INGOTS_IRON, MItemTags.IRON_PLATES)
|
||||
.rowAC(Tags.Items.INGOTS_IRON, Tags.Items.INGOTS_IRON)
|
||||
.row(MItemTags.IRON_PLATES, Tags.Items.INGOTS_IRON, MItemTags.IRON_PLATES)
|
||||
.build(consumer)
|
||||
|
||||
MatteryRecipe(MItems.HEAVY_MODULAR_FRAME, count = 2, category = machinesCategory)
|
||||
.rowB(MItems.REINFORCED_IRON_PLATE)
|
||||
.row(MItems.REINFORCED_IRON_PLATE, MItems.MODULAR_FRAME, MItems.REINFORCED_IRON_PLATE)
|
||||
.rowB(MItems.REINFORCED_IRON_PLATE)
|
||||
.build(consumer)
|
||||
|
||||
// blackhole generator
|
||||
MatteryRecipe(MItems.BLACK_HOLE_GENERATOR, category = machinesCategory)
|
||||
.row(MItemTags.ADVANCED_CIRCUIT, MItems.BLACK_HOLE_SCANNER, MItemTags.ADVANCED_CIRCUIT)
|
||||
@ -123,6 +135,12 @@ fun addMultiblockRecipes(consumer: RecipeOutput) {
|
||||
.row(MItems.MATTER_CAPACITOR_PARTS, Tags.Items.GEMS_DIAMOND, MItems.MATTER_CAPACITOR_PARTS)
|
||||
.build(consumer)
|
||||
|
||||
MatteryRecipe(MItems.TRITANIUM_HULL, count = 4, category = machinesCategory)
|
||||
.row(MItemTags.TRITANIUM_PLATES, MItemTags.IRON_PLATES, MItemTags.TRITANIUM_PLATES)
|
||||
.row(MItemTags.IRON_PLATES, MItems.MODULAR_FRAME, MItemTags.IRON_PLATES)
|
||||
.row(MItemTags.TRITANIUM_PLATES, MItemTags.IRON_PLATES, MItemTags.TRITANIUM_PLATES)
|
||||
.build(consumer)
|
||||
|
||||
MatteryRecipe(MItems.MATTER_INJECTOR, category = machinesCategory)
|
||||
.row(MItemTags.ADVANCED_CIRCUIT, MItems.MATTER_TRANSFORM_MATRIX, MItemTags.ADVANCED_CIRCUIT)
|
||||
.row(MItemTags.DILITHIUM_GEMS, MItems.MACHINE_FRAME, MItemTags.DILITHIUM_GEMS)
|
||||
|
@ -64,10 +64,12 @@ fun addMineableTags(tagsProvider: TagsProvider) {
|
||||
MBlocks.FLUID_TANK,
|
||||
*MBlocks.ANDROID_CHARGER.values.toTypedArray(),
|
||||
|
||||
MBlocks.TRITANIUM_HULL,
|
||||
MBlocks.BLACK_HOLE_GENERATOR,
|
||||
MBlocks.MATTER_INJECTOR,
|
||||
MBlocks.ANTIMATTER_INJECTOR,
|
||||
MBlocks.HIGH_ENERGY_PARTICLE_COLLECTOR,
|
||||
|
||||
MBlocks.ITEM_INPUT_HATCH,
|
||||
MBlocks.ITEM_OUTPUT_HATCH,
|
||||
MBlocks.ENERGY_INPUT_HATCH,
|
||||
@ -81,7 +83,10 @@ fun addMineableTags(tagsProvider: TagsProvider) {
|
||||
MBlocks.FLYWHEEL_BEARING,
|
||||
MBlocks.FLYWHEEL_HOUSING,
|
||||
MBlocks.FLYWHEEL_BATTERY,
|
||||
|
||||
MBlocks.GENERATOR_BLOCK,
|
||||
MBlocks.MODULAR_FRAME,
|
||||
MBlocks.HEAVY_MODULAR_FRAME,
|
||||
|
||||
MBlocks.REINFORCED_REDSTONE_LAMP,
|
||||
MBlocks.REINFORCED_REDSTONE_LAMP_INVERTED,
|
||||
|
@ -99,16 +99,6 @@ public class BlockShapes {
|
||||
public static final BlockShape MATTER_REPLICATOR = new BlockShape(
|
||||
new SimpleCuboid(0.9375d, 0d, 0d, 1d, 0.6875d, 1d),
|
||||
new SimpleCuboid(0d, 0d, 0d, 0.0625d, 0.6875d, 1d),
|
||||
new SimpleCuboid(0d, 0.6875d, 0.0625d, 0.5d, 1d, 0.375d),
|
||||
new SimpleCuboid(0.5d, 0.6875d, 0d, 1d, 1d, 0.375d),
|
||||
new SimpleCuboid(0.1875d, 0.6875d, 0.6875d, 0.9375d, 0.9375d, 0.9375d),
|
||||
new SimpleCuboid(0.1875d, 0.6875d, 0.375d, 0.9375d, 0.9375d, 0.625d),
|
||||
new SimpleCuboid(0.0625d, 0.6875d, 0.4375d, 0.1875d, 0.875d, 0.5625d),
|
||||
new SimpleCuboid(0.0625d, 0.6875d, 0.75d, 0.1875d, 0.875d, 0.875d),
|
||||
new SimpleCuboid(0d, 0.6875d, 0.9375d, 0.03125d, 1d, 1d),
|
||||
new SimpleCuboid(0.96875d, 0.6875d, 0.9375d, 1d, 1d, 1d),
|
||||
new SimpleCuboid(0.96875d, 0.9375d, 0.375d, 1d, 1d, 0.9375d),
|
||||
new SimpleCuboid(0d, 0.9375d, 0.375d, 0.03125d, 1d, 0.9375d),
|
||||
new SimpleCuboid(0.0625d, 0d, 0d, 0.9375d, 0.0625d, 1d),
|
||||
new SimpleCuboid(0.5d, 0.4375d, 0d, 0.9375d, 0.6875d, 0.0625d),
|
||||
new SimpleCuboid(0.0625d, 0.5625d, 0d, 0.5d, 0.6875d, 0.0625d),
|
||||
@ -117,7 +107,36 @@ public class BlockShapes {
|
||||
new SimpleCuboid(0.125d, 0.0625d, 0d, 0.875d, 0.125d, 0.0625d),
|
||||
new SimpleCuboid(0.0625d, 0.625d, 0.0625d, 0.9375d, 0.6875d, 0.9375d),
|
||||
new SimpleCuboid(0.0625d, 0.0625d, 0.9375d, 0.9375d, 0.6875d, 1d),
|
||||
new SimpleCuboid(0.1875d, 0.0625d, 0.1875d, 0.8125d, 0.125d, 0.8125d)
|
||||
new SimpleCuboid(0.15625d, 0.0625d, 0.15625d, 0.84375d, 0.125d, 0.84375d),
|
||||
new SimpleCuboid(0.15625d, 0.5625d, 0.15625d, 0.84375d, 0.625d, 0.84375d),
|
||||
new SimpleCuboid(0.5d, 0.6875d, 0d, 1d, 1d, 0.375d),
|
||||
new SimpleCuboid(0d, 0.6875d, 0.0625d, 0.5d, 1d, 0.375d),
|
||||
new SimpleCuboid(0d, 0.6875d, 0.375d, 1d, 1d, 1d),
|
||||
new SimpleCuboid(0.5625d, 0.5d, -0.00625d, 0.9375d, 0.8125d, -0.00625d),
|
||||
new SimpleCuboid(0.1875d, 0.25d, 1.00625d, 0.8125d, 0.3125d, 1.00625d),
|
||||
new SimpleCuboid(0.71875d, 0.128125d, 0.21875d, 0.78125d, 0.128125d, 0.28125d),
|
||||
new SimpleCuboid(0.21875d, 0.128125d, 0.21875d, 0.28125d, 0.128125d, 0.28125d),
|
||||
new SimpleCuboid(0.21875d, 0.128125d, 0.71875d, 0.28125d, 0.128125d, 0.78125d),
|
||||
new SimpleCuboid(0.71875d, 0.128125d, 0.71875d, 0.78125d, 0.128125d, 0.78125d),
|
||||
new SimpleCuboid(0.1875d, 0.375d, 1.00625d, 0.8125d, 0.4375d, 1.00625d)
|
||||
);
|
||||
|
||||
public static final BlockShape MATTER_ENTANGLER = new BlockShape(
|
||||
new SimpleCuboid(0d, 0d, 0d, 1d, 0.3125d, 0.875d),
|
||||
new SimpleCuboid(0d, 0d, 0.875d, 0.125d, 0.3125d, 1d),
|
||||
new SimpleCuboid(0.875d, 0d, 0.875d, 1d, 0.3125d, 1d),
|
||||
new SimpleCuboid(0.1875d, 0.375d, 0.1875d, 0.8125d, 1d, 0.8125d),
|
||||
new SimpleCuboid(0d, 0.4375d, 0.25d, 0.125d, 0.9375d, 0.75d),
|
||||
new SimpleCuboid(0.125d, 0.5d, 0.3125d, 0.1875d, 0.875d, 0.6875d),
|
||||
new SimpleCuboid(0.8125d, 0.5d, 0.3125d, 0.875d, 0.875d, 0.6875d),
|
||||
new SimpleCuboid(0.875d, 0.4375d, 0.25d, 1d, 0.9375d, 0.75d),
|
||||
new SimpleCuboid(0d, 0.3125d, 0.875d, 1d, 0.4375d, 1d),
|
||||
new SimpleCuboid(0d, 0.3125d, 0d, 1d, 0.4375d, 0.125d),
|
||||
new SimpleCuboid(0d, 0.3125d, 0.125d, 0.125d, 0.4375d, 0.875d),
|
||||
new SimpleCuboid(0.875d, 0.3125d, 0.125d, 1d, 0.4375d, 0.875d),
|
||||
new SimpleCuboid(0.125d, 0.0625d, 0.84375d, 0.1875d, 0.25d, 0.96875d),
|
||||
new SimpleCuboid(0.8125d, 0.0625d, 0.84375d, 0.875d, 0.25d, 0.96875d),
|
||||
new SimpleCuboid(0.1875d, 0.0625d, 0.84375d, 0.8125d, 0.25d, 0.96875d)
|
||||
);
|
||||
|
||||
public static final BlockShape MATTER_DECOMPOSER = new BlockShape(
|
||||
|
@ -1,14 +1,23 @@
|
||||
package ru.dbotthepony.mc.otm.block.matter
|
||||
|
||||
import net.minecraft.core.BlockPos
|
||||
import net.minecraft.world.level.BlockGetter
|
||||
import net.minecraft.world.level.Level
|
||||
import net.minecraft.world.level.block.Block
|
||||
import net.minecraft.world.level.block.EntityBlock
|
||||
import net.minecraft.world.level.block.entity.BlockEntity
|
||||
import net.minecraft.world.level.block.entity.BlockEntityTicker
|
||||
import net.minecraft.world.level.block.entity.BlockEntityType
|
||||
import net.minecraft.world.level.block.state.BlockState
|
||||
import net.minecraft.world.level.block.state.StateDefinition
|
||||
import net.minecraft.world.phys.shapes.CollisionContext
|
||||
import net.minecraft.world.phys.shapes.VoxelShape
|
||||
import ru.dbotthepony.mc.otm.block.RotatableMatteryBlock
|
||||
import ru.dbotthepony.mc.otm.block.entity.WorkerState
|
||||
import ru.dbotthepony.mc.otm.block.entity.matter.MatterEntanglerBlockEntity
|
||||
import ru.dbotthepony.mc.otm.block.getShapeForEachState
|
||||
import ru.dbotthepony.mc.otm.core.get
|
||||
import ru.dbotthepony.mc.otm.shapes.BlockShapes
|
||||
|
||||
class MatterEntanglerBlock : RotatableMatteryBlock(DEFAULT_MACHINE_PROPERTIES), EntityBlock {
|
||||
init {
|
||||
@ -20,8 +29,25 @@ class MatterEntanglerBlock : RotatableMatteryBlock(DEFAULT_MACHINE_PROPERTIES),
|
||||
return MatterEntanglerBlockEntity(blockPos, blockState)
|
||||
}
|
||||
|
||||
override fun createBlockStateDefinition(builder: StateDefinition.Builder<Block, BlockState>) {
|
||||
super.createBlockStateDefinition(builder)
|
||||
builder.add(WorkerState.WORKER_STATE)
|
||||
}
|
||||
|
||||
override fun <T : BlockEntity?> getTicker(p_153212_: Level, p_153213_: BlockState, p_153214_: BlockEntityType<T>): BlockEntityTicker<T>? {
|
||||
if (p_153212_.isClientSide) return null
|
||||
return BlockEntityTicker { _, _, _, tile -> if (tile is MatterEntanglerBlockEntity) tile.tick() }
|
||||
}
|
||||
|
||||
private val shapes = getShapeForEachState(rotationProperty) { BlockShapes.MATTER_ENTANGLER.rotateFromNorth(it[rotationProperty]).computeShape() }
|
||||
|
||||
@Suppress("override_deprecation")
|
||||
override fun getShape(
|
||||
state: BlockState,
|
||||
blockGetter: BlockGetter,
|
||||
pos: BlockPos,
|
||||
context: CollisionContext
|
||||
): VoxelShape {
|
||||
return shapes[state]!!
|
||||
}
|
||||
}
|
||||
|
@ -5,6 +5,7 @@ import net.minecraft.core.SectionPos
|
||||
import net.minecraft.world.item.context.BlockPlaceContext
|
||||
import net.minecraft.world.level.Level
|
||||
import net.minecraft.world.level.block.EntityBlock
|
||||
import net.minecraft.world.level.block.SoundType
|
||||
import net.minecraft.world.level.block.entity.BlockEntity
|
||||
import net.minecraft.world.level.block.entity.BlockEntityTicker
|
||||
import net.minecraft.world.level.block.entity.BlockEntityType
|
||||
@ -17,7 +18,7 @@ import ru.dbotthepony.mc.otm.core.math.BlockRotationFreedom
|
||||
import ru.dbotthepony.mc.otm.core.math.plus
|
||||
import ru.dbotthepony.mc.otm.core.math.times
|
||||
|
||||
class BlackHoleGeneratorBlock : RotatableMatteryBlock(Properties.of().mapColor(MapColor.METAL).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(160.0f)), EntityBlock {
|
||||
class BlackHoleGeneratorBlock : RotatableMatteryBlock(Properties.of().mapColor(MapColor.METAL).sound(SoundType.NETHERITE_BLOCK).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(160.0f)), EntityBlock {
|
||||
override fun newBlockEntity(blockPos: BlockPos, blockState: BlockState): BlockEntity {
|
||||
return BlackHoleGeneratorBlockEntity(blockPos, blockState)
|
||||
}
|
||||
|
@ -5,6 +5,7 @@ import net.minecraft.core.BlockPos
|
||||
import net.minecraft.world.item.context.BlockPlaceContext
|
||||
import net.minecraft.world.level.Level
|
||||
import net.minecraft.world.level.block.EntityBlock
|
||||
import net.minecraft.world.level.block.SoundType
|
||||
import net.minecraft.world.level.block.entity.BlockEntity
|
||||
import net.minecraft.world.level.block.entity.BlockEntityTicker
|
||||
import net.minecraft.world.level.block.entity.BlockEntityType
|
||||
@ -14,7 +15,8 @@ import ru.dbotthepony.mc.otm.block.RotatableMatteryBlock
|
||||
import ru.dbotthepony.mc.otm.block.entity.MatteryBlockEntity
|
||||
import ru.dbotthepony.mc.otm.core.TranslatableComponent
|
||||
|
||||
class HatchBlock(val factory: BlockEntityType.BlockEntitySupplier<out MatteryBlockEntity>, val needsTicking: Boolean = false) : RotatableMatteryBlock(Properties.of().mapColor(MapColor.METAL).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(80.0f)), EntityBlock {
|
||||
class HatchBlock(val factory: BlockEntityType.BlockEntitySupplier<out MatteryBlockEntity>, val needsTicking: Boolean = false) : RotatableMatteryBlock(Properties.of().mapColor(MapColor.METAL).sound(
|
||||
SoundType.VAULT).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(80.0f)), EntityBlock {
|
||||
override fun newBlockEntity(blockPos: BlockPos, blockState: BlockState): BlockEntity {
|
||||
return factory.create(blockPos, blockState)
|
||||
}
|
||||
|
@ -32,6 +32,7 @@ object MNames {
|
||||
const val MATTER_OUTPUT_HATCH = "matter_output_hatch"
|
||||
const val PAINTER = "painter"
|
||||
const val MATTER_ENTANGLER = "matter_entangler"
|
||||
const val TRITANIUM_HULL = "tritanium_hull"
|
||||
|
||||
// blocks
|
||||
const val ANDROID_STATION = "android_station"
|
||||
@ -65,7 +66,10 @@ object MNames {
|
||||
const val FLYWHEEL_BEARING = "flywheel_bearing"
|
||||
const val FLYWHEEL_SHAFT = "flywheel_shaft"
|
||||
const val FLYWHEEL_HOUSING = "flywheel_housing"
|
||||
|
||||
const val GENERATOR_BLOCK = "generator_block"
|
||||
const val MODULAR_FRAME = "modular_frame"
|
||||
const val HEAVY_MODULAR_FRAME = "heavy_modular_frame"
|
||||
|
||||
const val STORAGE_CABLE = "storage_cable" // нужен рецепт
|
||||
const val STORAGE_POWER_SUPPLIER = "storage_power_supplier" // нужен рецепт
|
||||
@ -200,6 +204,7 @@ object MNames {
|
||||
const val CARBON_MESH = "carbon_mesh"
|
||||
const val ARMOR_ASSEMBLY = "armor_assembly"
|
||||
const val REINFORCED_TRITANIUM_PLATE = "reinforced_tritanium_plate"
|
||||
const val REINFORCED_IRON_PLATE = "reinforced_iron_plate"
|
||||
|
||||
const val QUANTUM_TRANSCEIVER = "quantum_transceiver"
|
||||
const val ELECTROMAGNET = "electromagnet"
|
||||
|
@ -188,10 +188,17 @@ object MBlocks {
|
||||
MatteryBlock(BlockBehaviour.Properties.of().sound(SoundType.NETHERITE_BLOCK).explosionResistance(40f).mapColor(MapColor.COLOR_GRAY).destroyTime(2f).requiresCorrectToolForDrops())
|
||||
.addSimpleDescription()
|
||||
}
|
||||
|
||||
val GENERATOR_BLOCK by registry.register(MNames.GENERATOR_BLOCK) {
|
||||
MatteryBlock(BlockBehaviour.Properties.of().sound(SoundType.NETHERITE_BLOCK).explosionResistance(30f).mapColor(MapColor.COLOR_GRAY).destroyTime(2.5f).requiresCorrectToolForDrops())
|
||||
.addSimpleDescription()
|
||||
}
|
||||
val MODULAR_FRAME by registry.register(MNames.MODULAR_FRAME) { TransparentBlock(
|
||||
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_GRAY).noOcclusion().sound(SoundType.METAL).requiresCorrectToolForDrops().explosionResistance(30f).destroyTime(2f)
|
||||
)}
|
||||
val HEAVY_MODULAR_FRAME by registry.register(MNames.HEAVY_MODULAR_FRAME) { TransparentBlock(
|
||||
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_GRAY).noOcclusion().sound(SoundType.NETHERITE_BLOCK).requiresCorrectToolForDrops().explosionResistance(60f).destroyTime(2.5f)
|
||||
)}
|
||||
|
||||
val STORAGE_BUS: Block by registry.register(MNames.STORAGE_BUS, ::StorageBusBlock)
|
||||
val STORAGE_IMPORTER: Block by registry.register(MNames.STORAGE_IMPORTER, ::StorageImporterBlock)
|
||||
@ -214,9 +221,14 @@ object MBlocks {
|
||||
val DEV_CHEST: DevChestBlock by registry.register(MNames.DEV_CHEST) { DevChestBlock() }
|
||||
|
||||
val BLACK_HOLE_GENERATOR by registry.register(MNames.BLACK_HOLE_GENERATOR) { BlackHoleGeneratorBlock() }
|
||||
val MATTER_INJECTOR by registry.register(MNames.MATTER_INJECTOR) { RotatableMatteryBlock(BlockBehaviour.Properties.of().mapColor(MapColor.METAL).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(160.0f)) }
|
||||
val ANTIMATTER_INJECTOR by registry.register(MNames.ANTIMATTER_INJECTOR) { RotatableMatteryBlock(BlockBehaviour.Properties.of().mapColor(MapColor.METAL).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(160.0f)) }
|
||||
val HIGH_ENERGY_PARTICLE_COLLECTOR by registry.register(MNames.HIGH_ENERGY_PARTICLE_COLLECTOR) { RotatableMatteryBlock(BlockBehaviour.Properties.of().mapColor(MapColor.METAL).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(160.0f)) }
|
||||
val TRITANIUM_HULL by registry.register(MNames.TRITANIUM_HULL) {
|
||||
MatteryBlock(BlockBehaviour.Properties.of().sound(SoundType.VAULT).explosionResistance(80f).mapColor(MapColor.COLOR_LIGHT_BLUE).destroyTime(2.5f).requiresCorrectToolForDrops())
|
||||
.addSimpleDescription()
|
||||
}
|
||||
val MATTER_INJECTOR by registry.register(MNames.MATTER_INJECTOR) { RotatableMatteryBlock(BlockBehaviour.Properties.of().mapColor(MapColor.METAL).sound(SoundType.NETHERITE_BLOCK).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(160.0f)) }
|
||||
val ANTIMATTER_INJECTOR by registry.register(MNames.ANTIMATTER_INJECTOR) { RotatableMatteryBlock(BlockBehaviour.Properties.of().mapColor(MapColor.METAL).sound(SoundType.NETHERITE_BLOCK).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(160.0f)) }
|
||||
val HIGH_ENERGY_PARTICLE_COLLECTOR by registry.register(MNames.HIGH_ENERGY_PARTICLE_COLLECTOR) { RotatableMatteryBlock(BlockBehaviour.Properties.of().mapColor(MapColor.METAL).sound(SoundType.NETHERITE_BLOCK).requiresCorrectToolForDrops().destroyTime(2.5f).explosionResistance(160.0f)) }
|
||||
|
||||
val ITEM_INPUT_HATCH by registry.register(MNames.ITEM_INPUT_HATCH) { HatchBlock(ItemHatchBlockEntity::input) }
|
||||
val ITEM_OUTPUT_HATCH by registry.register(MNames.ITEM_OUTPUT_HATCH) { HatchBlock(ItemHatchBlockEntity::output) }
|
||||
val ENERGY_INPUT_HATCH by registry.register(MNames.ENERGY_INPUT_HATCH) { HatchBlock(EnergyHatchBlockEntity::input, true) }
|
||||
|
@ -184,7 +184,10 @@ private fun addMainCreativeTabItems(consumer: CreativeModeTab.Output) {
|
||||
accept(MItems.FLYWHEEL_BEARING)
|
||||
|
||||
accept(MItems.GENERATOR_BLOCK)
|
||||
accept(MItems.MODULAR_FRAME)
|
||||
accept(MItems.HEAVY_MODULAR_FRAME)
|
||||
|
||||
accept(MItems.TRITANIUM_HULL)
|
||||
accept(MItems.BLACK_HOLE_GENERATOR)
|
||||
accept(MItems.MATTER_INJECTOR)
|
||||
accept(MItems.ANTIMATTER_INJECTOR)
|
||||
|
@ -153,14 +153,18 @@ object MItems {
|
||||
val FLYWHEEL_HOUSING by registry.register(MNames.FLYWHEEL_HOUSING) { BlockItem(MBlocks.FLYWHEEL_HOUSING, DEFAULT_PROPERTIES) }
|
||||
|
||||
val GENERATOR_BLOCK by registry.register(MNames.GENERATOR_BLOCK) { BlockItem(MBlocks.GENERATOR_BLOCK, DEFAULT_PROPERTIES) }
|
||||
val MODULAR_FRAME by registry.register(MNames.MODULAR_FRAME) { BlockItem(MBlocks.MODULAR_FRAME, DEFAULT_PROPERTIES) }
|
||||
val HEAVY_MODULAR_FRAME by registry.register(MNames.HEAVY_MODULAR_FRAME) { BlockItem(MBlocks.HEAVY_MODULAR_FRAME, DEFAULT_PROPERTIES) }
|
||||
|
||||
val DEV_CHEST: BlockItem by registry.register(MNames.DEV_CHEST) { BlockItem(MBlocks.DEV_CHEST, DEFAULT_PROPERTIES) }
|
||||
val PAINTER: BlockItem by registry.register(MNames.PAINTER) { BlockItem(MBlocks.PAINTER, DEFAULT_PROPERTIES) }
|
||||
val MATTER_ENTANGLER: BlockItem by registry.register(MNames.MATTER_ENTANGLER) { BlockItem(MBlocks.MATTER_ENTANGLER, DEFAULT_PROPERTIES) }
|
||||
|
||||
val TRITANIUM_HULL by registry.register(MNames.TRITANIUM_HULL) { BlockItem(MBlocks.TRITANIUM_HULL, DEFAULT_PROPERTIES) }
|
||||
val BLACK_HOLE_GENERATOR by registry.register(MNames.BLACK_HOLE_GENERATOR) { BlockItem(MBlocks.BLACK_HOLE_GENERATOR, DEFAULT_PROPERTIES) }
|
||||
val MATTER_INJECTOR by registry.register(MNames.MATTER_INJECTOR) { BlockItem(MBlocks.MATTER_INJECTOR, DEFAULT_PROPERTIES) }
|
||||
val ANTIMATTER_INJECTOR by registry.register(MNames.ANTIMATTER_INJECTOR) { BlockItem(MBlocks.ANTIMATTER_INJECTOR, DEFAULT_PROPERTIES) }
|
||||
|
||||
val HIGH_ENERGY_PARTICLE_COLLECTOR by registry.register(MNames.HIGH_ENERGY_PARTICLE_COLLECTOR) { BlockItem(MBlocks.HIGH_ENERGY_PARTICLE_COLLECTOR, DEFAULT_PROPERTIES) }
|
||||
val ITEM_INPUT_HATCH by registry.register(MNames.ITEM_INPUT_HATCH) { BlockItem(MBlocks.ITEM_INPUT_HATCH, DEFAULT_PROPERTIES) }
|
||||
val ITEM_OUTPUT_HATCH by registry.register(MNames.ITEM_OUTPUT_HATCH) { BlockItem(MBlocks.ITEM_OUTPUT_HATCH, DEFAULT_PROPERTIES) }
|
||||
@ -535,6 +539,9 @@ object MItems {
|
||||
val REINFORCED_TRITANIUM_PLATE: Item by registry.register(MNames.REINFORCED_TRITANIUM_PLATE) { MatteryItem(
|
||||
DEFAULT_PROPERTIES
|
||||
).addSimpleDescription() }
|
||||
val REINFORCED_IRON_PLATE: Item by registry.register(MNames.REINFORCED_IRON_PLATE) { MatteryItem(
|
||||
DEFAULT_PROPERTIES
|
||||
).addSimpleDescription() }
|
||||
|
||||
val QUANTUM_TRANSCEIVER: Item by registry.register(MNames.QUANTUM_TRANSCEIVER) { Item(DEFAULT_PROPERTIES) }
|
||||
val ELECTROMAGNET: Item by registry.register(MNames.ELECTROMAGNET) { Item(DEFAULT_PROPERTIES) }
|
||||
@ -608,6 +615,7 @@ object MItems {
|
||||
MItems::CARBON_MESH,
|
||||
MItems::ARMOR_ASSEMBLY,
|
||||
MItems::REINFORCED_TRITANIUM_PLATE,
|
||||
MItems::REINFORCED_IRON_PLATE,
|
||||
)
|
||||
|
||||
val CARGO_CRATE_MINECARTS = registry.coloredWithBase(MNames.MINECART_CARGO_CRATE, ::MinecartCargoCrateItem)
|
||||
|
@ -0,0 +1,33 @@
|
||||
{
|
||||
"parent": "block/block",
|
||||
"textures": {
|
||||
"particle": "#texture"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"from": [0, 0, 0],
|
||||
"to": [16, 16, 16],
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "north"},
|
||||
"east": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "east"},
|
||||
"south": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "south"},
|
||||
"west": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "west"},
|
||||
"up": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "up"},
|
||||
"down": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "down"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [15.99995, 15.99995, 15.99995],
|
||||
"to": [0.00005, 0.00005, 0.00005],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [16, 16, 16]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "south"},
|
||||
"east": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "west"},
|
||||
"south": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "north"},
|
||||
"west": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "east"},
|
||||
"up": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "down"},
|
||||
"down": {"uv": [0, 0, 16, 16], "texture": "#texture", "cullface": "up"}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
@ -0,0 +1,453 @@
|
||||
{
|
||||
"credit": "Made with Blockbench",
|
||||
"parent": "block/block",
|
||||
"render_type": "cutout",
|
||||
"texture_size": [32, 32],
|
||||
"textures": {
|
||||
"0": "overdrive_that_matters:block/machine_base",
|
||||
"1": "overdrive_that_matters:block/matter_entangler",
|
||||
"2": "overdrive_that_matters:block/matter_entangler_details",
|
||||
"particle": "overdrive_that_matters:block/matter_entangler",
|
||||
"status": "overdrive_that_matters:block/screen_status_ok"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"name": "base",
|
||||
"from": [0, 0, 0],
|
||||
"to": [16, 5, 14],
|
||||
"faces": {
|
||||
"north": {"uv": [8, 9, 16, 11.5], "texture": "#1"},
|
||||
"east": {"uv": [1, 1, 8, 3.5], "texture": "#1"},
|
||||
"south": {"uv": [0, 8.5, 8, 11], "texture": "#1"},
|
||||
"west": {"uv": [0, 1, 7, 3.5], "texture": "#1"},
|
||||
"up": {"uv": [8, 0, 16, 8], "texture": "#1"},
|
||||
"down": {"uv": [0, 2, 16, 16], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "base",
|
||||
"from": [0, 0, 14],
|
||||
"to": [2, 5, 16],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [0, 0, 14]},
|
||||
"faces": {
|
||||
"east": {"uv": [0, 1, 1, 3.5], "texture": "#1"},
|
||||
"south": {"uv": [0, 8.5, 1, 11], "texture": "#1"},
|
||||
"west": {"uv": [7, 1, 8, 3.5], "texture": "#1"},
|
||||
"down": {"uv": [0, 0, 2, 2], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "base",
|
||||
"from": [14, 0, 14],
|
||||
"to": [16, 5, 16],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [14, 0, 14]},
|
||||
"faces": {
|
||||
"east": {"uv": [0, 1, 1, 3.5], "texture": "#1"},
|
||||
"south": {"uv": [0, 8.5, 1, 11], "texture": "#1"},
|
||||
"west": {"uv": [7, 1, 8, 3.5], "texture": "#1"},
|
||||
"down": {"uv": [14, 0, 16, 2], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "chamber",
|
||||
"from": [3, 6, 3],
|
||||
"to": [13, 16, 13],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [7, 6, 7]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 5, 5, 10], "texture": "#2"},
|
||||
"east": {"uv": [5, 5, 10, 10], "texture": "#2"},
|
||||
"south": {"uv": [5, 0, 10, 5], "texture": "#2"},
|
||||
"west": {"uv": [5, 5, 10, 10], "texture": "#2"},
|
||||
"up": {"uv": [0, 0, 5, 5], "rotation": 180, "texture": "#2"},
|
||||
"down": {"uv": [10, 0, 15, 5], "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "chamber",
|
||||
"from": [13, 6, 3],
|
||||
"to": [3, 16, 13],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [17, 6, 7]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 5, 5, 10], "texture": "#2"},
|
||||
"east": {"uv": [5, 5, 10, 10], "texture": "#2"},
|
||||
"south": {"uv": [5, 0, 10, 5], "texture": "#2"},
|
||||
"west": {"uv": [5, 5, 10, 10], "texture": "#2"},
|
||||
"up": {"uv": [0, 0, 5, 5], "rotation": 180, "texture": "#2"},
|
||||
"down": {"uv": [10, 0, 15, 5], "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "base",
|
||||
"from": [0, 7, 4],
|
||||
"to": [2, 15, 12],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [0, 5, 4]},
|
||||
"faces": {
|
||||
"north": {"uv": [4, 4.5, 8, 5.5], "rotation": 90, "texture": "#1"},
|
||||
"east": {"uv": [0, 3.5, 4, 7.5], "texture": "#1"},
|
||||
"south": {"uv": [4, 4.5, 8, 5.5], "rotation": 90, "texture": "#1"},
|
||||
"west": {"uv": [0, 3.5, 4, 7.5], "texture": "#1"},
|
||||
"up": {"uv": [4, 3.5, 8, 4.5], "rotation": 90, "texture": "#1"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [2, 8, 5],
|
||||
"to": [3, 14, 11],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [1, 5, 4]},
|
||||
"faces": {
|
||||
"north": {"uv": [0.5, 4, 1, 7], "texture": "#1"},
|
||||
"south": {"uv": [0.5, 4, 1, 7], "texture": "#1"},
|
||||
"up": {"uv": [0.5, 4, 1, 7], "texture": "#1"},
|
||||
"down": {"uv": [0.5, 4, 1, 7], "texture": "#1"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": [13, 8, 5],
|
||||
"to": [14, 14, 11],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [12, 4, 4]},
|
||||
"faces": {
|
||||
"north": {"uv": [0.5, 4, 1, 7], "texture": "#1"},
|
||||
"south": {"uv": [0.5, 4, 1, 7], "texture": "#1"},
|
||||
"up": {"uv": [0.5, 4, 1, 7], "texture": "#1"},
|
||||
"down": {"uv": [0.5, 4, 1, 7], "texture": "#1"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "base",
|
||||
"from": [14, 7, 4],
|
||||
"to": [16, 15, 12],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [14, 5, 4]},
|
||||
"faces": {
|
||||
"north": {"uv": [4, 4.5, 8, 5.5], "rotation": 90, "texture": "#1"},
|
||||
"east": {"uv": [0, 3.5, 4, 7.5], "texture": "#1"},
|
||||
"south": {"uv": [4, 4.5, 8, 5.5], "rotation": 90, "texture": "#1"},
|
||||
"west": {"uv": [0, 3.5, 4, 7.5], "texture": "#1"},
|
||||
"up": {"uv": [4, 3.5, 8, 4.5], "rotation": 90, "texture": "#1"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "base",
|
||||
"from": [0, 5, 14],
|
||||
"to": [16, 7, 16],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [0, 5, 14]},
|
||||
"faces": {
|
||||
"north": {"uv": [8, 7, 16, 8], "texture": "#1"},
|
||||
"east": {"uv": [0, 0, 1, 1], "texture": "#1"},
|
||||
"south": {"uv": [0, 7.5, 8, 8.5], "texture": "#1"},
|
||||
"west": {"uv": [7, 0, 8, 1], "texture": "#1"},
|
||||
"up": {"uv": [8, 7, 16, 8], "texture": "#1"},
|
||||
"down": {"uv": [0, 7.5, 8, 8.5], "rotation": 180, "texture": "#1"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "base",
|
||||
"from": [0, 5, 0],
|
||||
"to": [16, 7, 2],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [0, 5, 0]},
|
||||
"faces": {
|
||||
"north": {"uv": [8, 8, 16, 9], "texture": "#1"},
|
||||
"east": {"uv": [7, 0, 8, 1], "texture": "#1"},
|
||||
"south": {"uv": [8, 7, 16, 8], "texture": "#1"},
|
||||
"west": {"uv": [0, 0, 1, 1], "texture": "#1"},
|
||||
"up": {"uv": [8, 0, 16, 1], "texture": "#1"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "base",
|
||||
"from": [0, 5, 2],
|
||||
"to": [2, 7, 14],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [0, 5, 2]},
|
||||
"faces": {
|
||||
"east": {"uv": [9, 7, 15, 8], "texture": "#1"},
|
||||
"west": {"uv": [1, 0, 7, 1], "texture": "#1"},
|
||||
"up": {"uv": [8, 1, 9, 7], "texture": "#1"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "base",
|
||||
"from": [14, 5, 2],
|
||||
"to": [16, 7, 14],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [14, 5, 2]},
|
||||
"faces": {
|
||||
"east": {"uv": [1, 0, 7, 1], "texture": "#1"},
|
||||
"west": {"uv": [9, 7, 15, 8], "texture": "#1"},
|
||||
"up": {"uv": [15, 1, 16, 7], "texture": "#1"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "keyboard",
|
||||
"from": [2, 7, -1],
|
||||
"to": [10, 8, 2],
|
||||
"rotation": {"angle": -45, "axis": "x", "origin": [6, 7.5, 0.5]},
|
||||
"faces": {
|
||||
"north": {"uv": [5, 15.5, 9, 16], "texture": "#2"},
|
||||
"east": {"uv": [4.5, 14, 5, 15.5], "rotation": 90, "texture": "#2"},
|
||||
"south": {"uv": [5, 13.5, 9, 14], "texture": "#2"},
|
||||
"west": {"uv": [9, 14, 9.5, 15.5], "rotation": 90, "texture": "#2"},
|
||||
"up": {"uv": [5, 14, 9, 15.5], "rotation": 180, "texture": "#2"},
|
||||
"down": {"uv": [0, 14.5, 4, 16], "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "screen",
|
||||
"from": [11, 6, 0],
|
||||
"to": [15, 10, 1],
|
||||
"rotation": {"angle": 45, "axis": "x", "origin": [12.5, 7.5, 0.5]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 10, 2, 12], "rotation": 180, "texture": "#2"},
|
||||
"east": {"uv": [2, 12, 4, 12.5], "rotation": 90, "texture": "#2"},
|
||||
"south": {"uv": [2, 12.5, 4, 14.5], "texture": "#2"},
|
||||
"west": {"uv": [2, 12, 4, 12.5], "rotation": 270, "texture": "#2"},
|
||||
"up": {"uv": [2, 12, 4, 12.5], "texture": "#2"},
|
||||
"down": {"uv": [2, 12, 4, 12.5], "rotation": 180, "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "screen_glow",
|
||||
"from": [11, 6.05, -0.05],
|
||||
"to": [15, 10.05, -0.05],
|
||||
"rotation": {"angle": 45, "axis": "x", "origin": [12.5, 7.5, 0.5]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 16, 16], "texture": "#status", "neoforge_data": {"block_light": 15}}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "shield",
|
||||
"from": [0, 8, 12],
|
||||
"to": [16, 14, 14],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [0, 11, 12]},
|
||||
"faces": {
|
||||
"east": {"uv": [8, 11.5, 7, 14.5], "texture": "#1"},
|
||||
"south": {"uv": [8, 11.5, 16, 14.5], "texture": "#1"},
|
||||
"west": {"uv": [7, 11.5, 8, 14.5], "texture": "#1"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "shield",
|
||||
"from": [0, 14, 12],
|
||||
"to": [16, 8, 14],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [0, 17, 12]},
|
||||
"faces": {
|
||||
"east": {"uv": [8, 11.5, 7, 14.5], "texture": "#1"},
|
||||
"south": {"uv": [8, 11.5, 16, 14.5], "texture": "#1"},
|
||||
"west": {"uv": [7, 11.5, 8, 14.5], "texture": "#1"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "lower",
|
||||
"from": [6.91342, 11.3806, 9.3],
|
||||
"to": [8.91342, 15.3806, 10],
|
||||
"rotation": {"angle": 22.5, "axis": "z", "origin": [8, 12, 9.675]},
|
||||
"faces": {
|
||||
"north": {"uv": [13.5, 6.5, 15.5, 7.5], "rotation": 90, "texture": "#2"},
|
||||
"east": {"uv": [13.5, 7.5, 15.5, 8], "rotation": 270, "texture": "#2"},
|
||||
"south": {"uv": [13.5, 6.5, 15.5, 7.5], "rotation": 270, "texture": "#2"},
|
||||
"west": {"uv": [13.5, 6, 15.5, 6.5], "rotation": 270, "texture": "#2"},
|
||||
"up": {"uv": [13, 6.5, 13.5, 7.5], "rotation": 270, "texture": "#2"},
|
||||
"down": {"uv": [13, 6.5, 13.5, 7.5], "rotation": 270, "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "lower",
|
||||
"from": [6.24264, 8.58579, 5.9],
|
||||
"to": [10.24264, 10.58579, 6.6],
|
||||
"rotation": {"angle": -45, "axis": "z", "origin": [10, 9, 6.275]},
|
||||
"faces": {
|
||||
"north": {"uv": [13.5, 6.5, 15.5, 7.5], "texture": "#2"},
|
||||
"east": {"uv": [13, 6.5, 13.5, 7.5], "texture": "#2"},
|
||||
"south": {"uv": [13.5, 6.5, 15.5, 7.5], "texture": "#2"},
|
||||
"west": {"uv": [13, 6.5, 13.5, 7.5], "texture": "#2"},
|
||||
"up": {"uv": [13.5, 6, 15.5, 6.5], "texture": "#2"},
|
||||
"down": {"uv": [13.5, 7.5, 15.5, 8], "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "joint",
|
||||
"from": [2, 11, 8.7],
|
||||
"to": [4, 13, 10.7],
|
||||
"rotation": {"angle": -22.5, "axis": "z", "origin": [3, 12, 9.675]},
|
||||
"faces": {
|
||||
"north": {"uv": [11, 5, 12, 6], "texture": "#2"},
|
||||
"east": {"uv": [10, 5, 11, 6], "texture": "#2"},
|
||||
"south": {"uv": [11, 5, 12, 6], "texture": "#2"},
|
||||
"west": {"uv": [10, 5, 11, 6], "texture": "#2"},
|
||||
"up": {"uv": [10, 5, 11, 6], "texture": "#2"},
|
||||
"down": {"uv": [10, 5, 11, 6], "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "joint",
|
||||
"from": [12, 12, 5.3],
|
||||
"to": [14, 14, 7.3],
|
||||
"rotation": {"angle": 45, "axis": "z", "origin": [13, 13, 6.275]},
|
||||
"faces": {
|
||||
"north": {"uv": [11, 5, 12, 6], "texture": "#2"},
|
||||
"east": {"uv": [10, 5, 11, 6], "texture": "#2"},
|
||||
"south": {"uv": [11, 5, 12, 6], "texture": "#2"},
|
||||
"west": {"uv": [10, 5, 11, 6], "texture": "#2"},
|
||||
"up": {"uv": [10, 5, 11, 6], "texture": "#2"},
|
||||
"down": {"uv": [10, 5, 11, 6], "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "upper",
|
||||
"from": [3, 12, 9.2],
|
||||
"to": [8, 14, 10.2],
|
||||
"rotation": {"angle": -22.5, "axis": "z", "origin": [3, 12, 9.675]},
|
||||
"faces": {
|
||||
"north": {"uv": [10.5, 6.5, 13, 7.5], "texture": "#2"},
|
||||
"east": {"uv": [10, 6.5, 10.5, 7.5], "texture": "#2"},
|
||||
"south": {"uv": [10.5, 6.5, 13, 7.5], "texture": "#2"},
|
||||
"west": {"uv": [10, 6.5, 10.5, 7.5], "texture": "#2"},
|
||||
"up": {"uv": [10.5, 6, 13, 6.5], "texture": "#2"},
|
||||
"down": {"uv": [10.5, 7.5, 13, 8], "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "upper",
|
||||
"from": [11, 8, 5.8],
|
||||
"to": [13, 13, 6.8],
|
||||
"rotation": {"angle": -22.5, "axis": "z", "origin": [13, 13, 6.275]},
|
||||
"faces": {
|
||||
"north": {"uv": [10.5, 6.5, 13, 7.5], "rotation": 90, "texture": "#2"},
|
||||
"east": {"uv": [10.5, 7.5, 13, 8], "rotation": 270, "texture": "#2"},
|
||||
"south": {"uv": [10.5, 6.5, 13, 7.5], "rotation": 270, "texture": "#2"},
|
||||
"west": {"uv": [10.5, 6, 13, 6.5], "rotation": 270, "texture": "#2"},
|
||||
"up": {"uv": [10, 6.5, 10.5, 7.5], "rotation": 270, "texture": "#2"},
|
||||
"down": {"uv": [10, 6.5, 10.5, 7.5], "rotation": 270, "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "upper",
|
||||
"from": [6.77817, 6.87868, 5.8],
|
||||
"to": [8.77817, 11.87868, 6.8],
|
||||
"rotation": {"angle": -22.5, "axis": "z", "origin": [8, 12, 6.275]},
|
||||
"faces": {
|
||||
"north": {"uv": [10.5, 6.5, 13, 7.5], "rotation": 90, "texture": "#2"},
|
||||
"east": {"uv": [10.5, 7.5, 13, 8], "rotation": 270, "texture": "#2"},
|
||||
"south": {"uv": [10.5, 6.5, 13, 7.5], "rotation": 270, "texture": "#2"},
|
||||
"west": {"uv": [10.5, 6, 13, 6.5], "rotation": 270, "texture": "#2"},
|
||||
"up": {"uv": [10, 6.5, 10.5, 7.5], "rotation": 270, "texture": "#2"},
|
||||
"down": {"uv": [10, 6.5, 10.5, 7.5], "rotation": 270, "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "upper",
|
||||
"from": [6.68925, 14.22628, 9.2],
|
||||
"to": [11.68925, 16.22628, 10.2],
|
||||
"rotation": {"angle": -45, "axis": "z", "origin": [7, 15, 9.675]},
|
||||
"faces": {
|
||||
"north": {"uv": [10.5, 6.5, 13, 7.5], "texture": "#2"},
|
||||
"east": {"uv": [10, 6.5, 10.5, 7.5], "texture": "#2"},
|
||||
"south": {"uv": [10.5, 6.5, 13, 7.5], "texture": "#2"},
|
||||
"west": {"uv": [10, 6.5, 10.5, 7.5], "texture": "#2"},
|
||||
"up": {"uv": [10.5, 6, 13, 6.5], "texture": "#2"},
|
||||
"down": {"uv": [10.5, 7.5, 13, 8], "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "pointer",
|
||||
"from": [9.22628, 10.55339, 9.3],
|
||||
"to": [10.22628, 11.55339, 10.1],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [10, 12, 9.675]},
|
||||
"faces": {
|
||||
"north": {"uv": [10.5, 8.5, 11, 9], "texture": "#2"},
|
||||
"east": {"uv": [10, 8.5, 10.4, 9], "texture": "#2"},
|
||||
"south": {"uv": [10.5, 8.5, 11, 9], "texture": "#2"},
|
||||
"west": {"uv": [10, 8.5, 10.4, 9], "texture": "#2"},
|
||||
"up": {"uv": [10.5, 8, 11, 8.4], "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "pointer_glow",
|
||||
"from": [9.22628, 9.55339, 9.3],
|
||||
"to": [10.22628, 10.55339, 10.1],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [10, 12, 9.675]},
|
||||
"faces": {
|
||||
"north": {"uv": [10.5, 9, 11, 9.5], "texture": "#2", "neoforge_data": {"block_light": 15}},
|
||||
"east": {"uv": [10, 9, 10.4, 9.5], "texture": "#2", "neoforge_data": {"block_light": 15}},
|
||||
"south": {"uv": [10.5, 9, 11, 9.5], "texture": "#2", "neoforge_data": {"block_light": 15}},
|
||||
"west": {"uv": [10, 9, 10.4, 9.5], "texture": "#2", "neoforge_data": {"block_light": 15}},
|
||||
"down": {"uv": [10.5, 9.5, 11, 9.9], "texture": "#2", "neoforge_data": {"block_light": 15}}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "pointer",
|
||||
"from": [7.77817, 5.87868, 5.9],
|
||||
"to": [8.77817, 6.87868, 6.7],
|
||||
"rotation": {"angle": -22.5, "axis": "z", "origin": [8, 12, 6.275]},
|
||||
"faces": {
|
||||
"north": {"uv": [10.5, 8.5, 11, 9], "texture": "#2"},
|
||||
"east": {"uv": [10, 8.5, 10.4, 9], "texture": "#2"},
|
||||
"south": {"uv": [10.5, 8.5, 11, 9], "texture": "#2"},
|
||||
"west": {"uv": [10, 8.5, 10.4, 9], "texture": "#2"},
|
||||
"up": {"uv": [10.5, 8, 11, 8.4], "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "pointer_glow",
|
||||
"from": [7.77817, 4.87868, 5.9],
|
||||
"to": [8.77817, 5.87868, 6.7],
|
||||
"rotation": {"angle": -22.5, "axis": "z", "origin": [8, 12, 6.275]},
|
||||
"faces": {
|
||||
"north": {"uv": [10.5, 9, 11, 9.5], "texture": "#2", "neoforge_data": {"block_light": 15}},
|
||||
"east": {"uv": [10, 9, 10.4, 9.5], "texture": "#2", "neoforge_data": {"block_light": 15}},
|
||||
"south": {"uv": [10.5, 9, 11, 9.5], "texture": "#2", "neoforge_data": {"block_light": 15}},
|
||||
"west": {"uv": [10, 9, 10.4, 9.5], "texture": "#2", "neoforge_data": {"block_light": 15}},
|
||||
"down": {"uv": [10.5, 9.5, 11, 9.9], "texture": "#2", "neoforge_data": {"block_light": 15}}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "canister",
|
||||
"from": [2, 1, 13.5],
|
||||
"to": [3, 4, 15.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [2, 2, 13.5]},
|
||||
"faces": {
|
||||
"south": {"uv": [4.5, 12, 5, 13.5], "texture": "#2"},
|
||||
"up": {"uv": [4.5, 11, 5, 12], "texture": "#2"},
|
||||
"down": {"uv": [4.5, 12, 5, 11], "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "canister",
|
||||
"from": [13, 1, 13.5],
|
||||
"to": [14, 4, 15.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [13, 2, 13.5]},
|
||||
"faces": {
|
||||
"south": {"uv": [10, 12, 10.5, 13.5], "texture": "#2"},
|
||||
"up": {"uv": [10, 11, 10.5, 12], "texture": "#2"},
|
||||
"down": {"uv": [10, 12, 10.5, 11], "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "canister_glow",
|
||||
"from": [3, 1, 13.5],
|
||||
"to": [13, 4, 15.5],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [2, 2, 13.5]},
|
||||
"faces": {
|
||||
"south": {"uv": [5, 12, 10, 13.5], "texture": "#2", "neoforge_data": {"block_light": 15}},
|
||||
"up": {"uv": [5, 11, 10, 12], "texture": "#2", "neoforge_data": {"block_light": 15}},
|
||||
"down": {"uv": [5, 13.5, 10, 12.5], "texture": "#2", "neoforge_data": {"block_light": 15}}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "wires",
|
||||
"from": [15, 9, 11],
|
||||
"to": [15, 17, 17],
|
||||
"rotation": {"angle": 22.5, "axis": "y", "origin": [15, 13, 12]},
|
||||
"faces": {
|
||||
"east": {"uv": [10.5, 12, 13.5, 16], "texture": "#2"},
|
||||
"west": {"uv": [13.5, 12, 10.5, 16], "texture": "#2"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "wires",
|
||||
"from": [15, 10, 11],
|
||||
"to": [15, 18, 17],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [15, 14, 12]},
|
||||
"faces": {
|
||||
"east": {"uv": [11, 8, 14, 12], "texture": "#2"},
|
||||
"west": {"uv": [14, 8, 11, 12], "texture": "#2"}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
@ -0,0 +1,7 @@
|
||||
{
|
||||
"parent": "overdrive_that_matters:block/matter_entangler,
|
||||
"texture_size": [32, 32],
|
||||
"textures": {
|
||||
"status": "overdrive_that_matters:block/screen_status_error"
|
||||
}
|
||||
}
|
@ -0,0 +1,7 @@
|
||||
{
|
||||
"parent": "overdrive_that_matters:block/matter_entangler",
|
||||
"texture_size": [32, 32],
|
||||
"textures": {
|
||||
"status": "overdrive_that_matters:block/screen_status_offline"
|
||||
}
|
||||
}
|
@ -0,0 +1,7 @@
|
||||
{
|
||||
"parent": "overdrive_that_matters:block/matter_entangler",
|
||||
"texture_size": [32, 32],
|
||||
"textures": {
|
||||
"status": "overdrive_that_matters:block/screen_status_ok"
|
||||
}
|
||||
}
|
@ -292,9 +292,9 @@
|
||||
},
|
||||
{
|
||||
"name": "monitor",
|
||||
"from": [9, 8, 0],
|
||||
"to": [15, 13, 0],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [13, 11, -2]},
|
||||
"from": [9, 8, -0.1],
|
||||
"to": [15, 13, -0.1],
|
||||
"rotation": {"angle": 0, "axis": "y", "origin": [13, 11, -2.05]},
|
||||
"faces": {
|
||||
"north": {"uv": [0, 3.2, 9.56, 11.14], "texture": "#status", "neoforge_data": {"block_light": 15}}
|
||||
}
|
||||
|
@ -1,7 +0,0 @@
|
||||
{
|
||||
"parent": "minecraft:block/cube_all",
|
||||
"render_type": "cutout",
|
||||
"textures": {
|
||||
"all": "overdrive_that_matters:block/decorative/metal_mesh"
|
||||
}
|
||||
}
|
@ -0,0 +1,98 @@
|
||||
{
|
||||
"format_version": "1.8.0",
|
||||
"animations": {
|
||||
"idle": {
|
||||
"loop": true,
|
||||
"animation_length": 1.44,
|
||||
"bones": {
|
||||
"Body": {
|
||||
"rotation": {
|
||||
"0.0": [0, -2.5, 0],
|
||||
"0.72": [0, 3.33, 0],
|
||||
"1.44": [0, -2.5, 0]
|
||||
}
|
||||
},
|
||||
"Ljaw": {
|
||||
"rotation": {
|
||||
"0.0": [2.5, 0, 0],
|
||||
"0.72": [5, 0, 0],
|
||||
"1.44": [2.5, 0, 0]
|
||||
}
|
||||
},
|
||||
"UJaw": {
|
||||
"rotation": {
|
||||
"0.0": [-2.5, 0, 0],
|
||||
"0.72": [-5, 0, 0],
|
||||
"1.44": [-2.5, 0, 0]
|
||||
}
|
||||
},
|
||||
"tail": {
|
||||
"rotation": {
|
||||
"0.0": [0, 5, 0],
|
||||
"0.72": [0, -7.5, 0],
|
||||
"1.44": [0, 5, 0]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"move": {
|
||||
"loop": true,
|
||||
"animation_length": 1.44,
|
||||
"bones": {
|
||||
"root": {
|
||||
"position": {
|
||||
"0.0": [1, 0, 2],
|
||||
"0.12": [0, 5, -1],
|
||||
"0.24": [-1, 0, -1],
|
||||
"0.72": [-2, 0, 2],
|
||||
"0.84": [0, 5, -1],
|
||||
"0.96": [1, 0, -1],
|
||||
"1.44": [1, 0, 2]
|
||||
}
|
||||
},
|
||||
"Body": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.12": [7.52832, 4.95712, 0.65426],
|
||||
"0.2": [12.50944, 1.65237, 0.21809],
|
||||
"0.24": [0, 0, 0],
|
||||
"0.72": [0, 0, 0],
|
||||
"0.84": [7.52832, -4.95712, -0.65426],
|
||||
"0.92": [15.01888, -3.30474, -0.43618],
|
||||
"0.96": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"Ljaw": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.12": [25, 0, 0],
|
||||
"0.32": [0, 0, 0],
|
||||
"0.72": [0, 0, 0],
|
||||
"0.84": [25, 0, 0],
|
||||
"1.04": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"UJaw": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.12": [-25, 0, 0],
|
||||
"0.32": [0, 0, 0],
|
||||
"0.72": [0, 0, 0],
|
||||
"0.84": [-30, 0, 0],
|
||||
"1.04": [0, 0, 0]
|
||||
}
|
||||
},
|
||||
"tail": {
|
||||
"rotation": {
|
||||
"0.0": [0, 0, 0],
|
||||
"0.12": [-10.03742, -4.92385, 0.87038],
|
||||
"0.24": [0, 0, 0],
|
||||
"0.72": [0, 0, 0],
|
||||
"0.84": [-12.54624, 4.88119, -1.08482],
|
||||
"0.96": [0, 0, 0]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,49 @@
|
||||
// Made with Blockbench 4.12.3
|
||||
// Exported for Minecraft version 1.17 or later with Mojang mappings
|
||||
// Paste this class into your mod and generate all required imports
|
||||
|
||||
|
||||
public class bread_monster<T extends Entity> extends EntityModel<T> {
|
||||
// This layer location should be baked with EntityRendererProvider.Context in the entity renderer and passed into this model's constructor
|
||||
public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(new ResourceLocation("modid", "bread_monster"), "main");
|
||||
private final ModelPart root;
|
||||
private final ModelPart Body;
|
||||
private final ModelPart Ljaw;
|
||||
private final ModelPart UJaw;
|
||||
private final ModelPart tail;
|
||||
|
||||
public bread_monster(ModelPart root) {
|
||||
this.root = root.getChild("root");
|
||||
this.Body = this.root.getChild("Body");
|
||||
this.Ljaw = this.Body.getChild("Ljaw");
|
||||
this.UJaw = this.Body.getChild("UJaw");
|
||||
this.tail = this.Body.getChild("tail");
|
||||
}
|
||||
|
||||
public static LayerDefinition createBodyLayer() {
|
||||
MeshDefinition meshdefinition = new MeshDefinition();
|
||||
PartDefinition partdefinition = meshdefinition.getRoot();
|
||||
|
||||
PartDefinition root = partdefinition.addOrReplaceChild("root", CubeListBuilder.create(), PartPose.offset(0.0F, 24.0F, 0.0F));
|
||||
|
||||
PartDefinition Body = root.addOrReplaceChild("Body", CubeListBuilder.create().texOffs(0, 0).addBox(-4.0F, -3.0F, -5.0F, 8.0F, 6.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, -3.0F, 0.0F));
|
||||
|
||||
PartDefinition Ljaw = Body.addOrReplaceChild("Ljaw", CubeListBuilder.create().texOffs(26, 24).addBox(-4.0F, -2.0F, -4.0F, 8.0F, 3.0F, 4.0F, new CubeDeformation(0.1F)), PartPose.offset(0.0F, 2.0F, -3.0F));
|
||||
|
||||
PartDefinition UJaw = Body.addOrReplaceChild("UJaw", CubeListBuilder.create().texOffs(0, 24).addBox(-4.0F, -2.0F, -4.0F, 8.0F, 3.0F, 5.0F, new CubeDeformation(0.1F)), PartPose.offset(0.0F, -1.0F, -3.0F));
|
||||
|
||||
PartDefinition tail = Body.addOrReplaceChild("tail", CubeListBuilder.create().texOffs(0, 12).addBox(-4.0F, -3.0F, -0.1F, 8.0F, 6.0F, 6.0F, new CubeDeformation(-0.1F)), PartPose.offset(0.0F, 0.0F, 1.0F));
|
||||
|
||||
return LayerDefinition.create(meshdefinition, 64, 32);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setupAnim(Entity entity, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderToBuffer(PoseStack poseStack, VertexConsumer vertexConsumer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) {
|
||||
root.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha);
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 492 B After Width: | Height: | Size: 489 B |
Before Width: | Height: | Size: 499 B After Width: | Height: | Size: 496 B |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 484 B After Width: | Height: | Size: 492 B |
Before Width: | Height: | Size: 483 B After Width: | Height: | Size: 490 B |
After Width: | Height: | Size: 491 B |
After Width: | Height: | Size: 476 B |
After Width: | Height: | Size: 476 B |
After Width: | Height: | Size: 637 B |
After Width: | Height: | Size: 797 B |
Before Width: | Height: | Size: 492 B After Width: | Height: | Size: 489 B |
Before Width: | Height: | Size: 499 B After Width: | Height: | Size: 497 B |
Before Width: | Height: | Size: 750 B After Width: | Height: | Size: 980 B |
Before Width: | Height: | Size: 739 B After Width: | Height: | Size: 743 B |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 476 B |
After Width: | Height: | Size: 370 B |
After Width: | Height: | Size: 350 B |
After Width: | Height: | Size: 372 B |
Before Width: | Height: | Size: 460 B After Width: | Height: | Size: 462 B |
After Width: | Height: | Size: 500 B |
Before Width: | Height: | Size: 277 B After Width: | Height: | Size: 507 B |