Hull
@ -23,16 +23,23 @@ 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")
|
||||
|
||||
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)
|
||||
|
@ -338,14 +338,20 @@ fun addBlockStates(provider: MatteryBlockStateProvider) {
|
||||
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.ENERGY_INPUT_INTERFACE)
|
||||
provider.block(MBlocks.ENERGY_OUTPUT_INTERFACE)
|
||||
|
||||
provider.block(MBlocks.TRITANIUM_HULL)
|
||||
|
||||
provider.block(MBlocks.ENERGY_INPUT_HATCH)
|
||||
provider.block(MBlocks.ENERGY_OUTPUT_HATCH)
|
||||
|
||||
provider.block(MBlocks.MATTER_INPUT_HATCH)
|
||||
provider.block(MBlocks.MATTER_OUTPUT_HATCH)
|
||||
|
||||
provider.block(MBlocks.ITEM_INPUT_HATCH)
|
||||
provider.block(MBlocks.ITEM_OUTPUT_HATCH)
|
||||
}
|
||||
|
@ -237,6 +237,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 +251,9 @@ 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)
|
||||
|
||||
MItems.TRITANIUM_ANVIL.values.forEach { provider.blocks(it) }
|
||||
|
||||
for ((color, item) in MItems.CARGO_CRATE_MINECARTS) {
|
||||
|
@ -550,6 +550,7 @@ private fun blocks(provider: MatteryLanguageProvider) {
|
||||
|
||||
add(MBlocks.BLACK_HOLE, "Local Anomalous Spacetime Dilation Singular Point")
|
||||
add(MBlocks.BLACK_HOLE_GENERATOR, "Matter Acceleration Power Generator")
|
||||
add(MBlocks.TRITANIUM_HULL, "Tritanium Hull")
|
||||
|
||||
add(MBlocks.FLYWHEEL_SHAFT, "Flywheel Shaft")
|
||||
add(MBlocks.FLYWHEEL_SHAFT, "desc", "Placed between bearings, safe for decoration")
|
||||
|
@ -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()) }
|
||||
|
@ -58,6 +58,7 @@ fun addMachineLoot(lootTables: LootTables) {
|
||||
lootTables.tile(MBlocks.MATTER_CAPACITOR_BANK.values)
|
||||
lootTables.tile(MBlocks.MATTER_BOTTLER.values)
|
||||
|
||||
lootTables.tile(MBlocks.TRITANIUM_HULL)
|
||||
lootTables.tile(MBlocks.BLACK_HOLE_GENERATOR)
|
||||
lootTables.tile(MBlocks.FLYWHEEL_BATTERY)
|
||||
|
||||
|
@ -64,6 +64,7 @@ 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,
|
||||
|
@ -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"
|
||||
|
@ -214,9 +214,18 @@ 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) { Block(
|
||||
BlockBehaviour.Properties.of()
|
||||
.mapColor(MapColor.COLOR_LIGHT_BLUE)
|
||||
.sound(SoundType.VAULT)
|
||||
.requiresCorrectToolForDrops()
|
||||
.explosionResistance(80f)
|
||||
.destroyTime(2.5f)
|
||||
) }
|
||||
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) }
|
||||
|
@ -185,6 +185,7 @@ private fun addMainCreativeTabItems(consumer: CreativeModeTab.Output) {
|
||||
|
||||
accept(MItems.GENERATOR_BLOCK)
|
||||
|
||||
accept(MItems.TRITANIUM_HULL)
|
||||
accept(MItems.BLACK_HOLE_GENERATOR)
|
||||
accept(MItems.MATTER_INJECTOR)
|
||||
accept(MItems.ANTIMATTER_INJECTOR)
|
||||
|
@ -158,6 +158,7 @@ object MItems {
|
||||
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) }
|
||||
|
Before Width: | Height: | Size: 492 B After Width: | Height: | Size: 489 B |
Before Width: | Height: | Size: 499 B After Width: | Height: | Size: 496 B |
After Width: | Height: | Size: 476 B |
After Width: | Height: | Size: 476 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: 460 B After Width: | Height: | Size: 462 B |
After Width: | Height: | Size: 585 B |