diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/advancements/MachineAdvancementsData.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/advancements/MachineAdvancementsData.kt index 7b2d4d3b7..942edb0de 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/advancements/MachineAdvancementsData.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/advancements/MachineAdvancementsData.kt @@ -106,7 +106,7 @@ fun addMachineAdvancements(serializer: Consumer, lang: Matter russianName = "Сканируем вещи которые материальны") val decomposer = CraftEntry(MItems.MATTER_DECOMPOSER.values, "Decaying the Atoms", "Keep your limbs outside of the working chamber at all times", russianName = "Разлагаем атомы", russianSuffix = "Во всех ситуациях держите свои конечности вне рабочей камеры") - val panel = CraftEntry(MItems.MATTER_PANEL, "Indexing the Library", + val panel = CraftEntry(MItems.MATTER_PANEL.values, "Indexing the Library", russianName = "Индексируем библиотеку") val replicator = CraftEntry(MItems.MATTER_REPLICATOR.values, "Cook with (Im)Perfection", "Now let's bake some perfect bread", russianName = "Повар с (не) идеальностями", russianSuffix = "А теперь давайте выпечем немного идеального хлеба") @@ -182,7 +182,7 @@ fun addMachineAdvancements(serializer: Consumer, lang: Matter russianSuffix = "Только пользоваться этим устройством могут вёдра с болтами", englishSuffix = "Except only buckets of bolts can use this thing") - val charger = CraftEntry(MItems.ANDROID_CHARGER, "Android Home Router", + val charger = CraftEntry(MItems.ANDROID_CHARGER.values, "Android Home Router", russianName = "Домашняя страница андроидов") station.make(serializer, press, translation).also { diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockModels.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockModels.kt index 56051f317..70c9388cb 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockModels.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockModels.kt @@ -18,6 +18,15 @@ fun addBlockModels(provider: MatteryBlockModelProvider) { colored("matter_capacitor_bank", listOf("1", "particle"), "mattercapacitorbank_frame") colored("battery_bank", listOf("1", "particle"), "batterybank_frame") + colored("android_charger", "_base", listOf("0", "particle")) + colored("android_charger", "_middle", listOf("0", "particle")) + colored("android_charger", "_top", listOf("0", "particle")) + + colored("storage_power_supplier", listOf("0", "particle")) + colored("matter_panel", listOf("texture", "particle")) + colored("drive_viewer", "_idle", listOf("texture", "particle")) + colored("drive_viewer", "_working", listOf("texture", "particle")) + coloredMachineCombined("plate_press", "plate_press2", listOf("0", "particle")) coloredMachineCombined("twin_plate_press", "plate_press2", listOf("0", "particle")) diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockStates.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockStates.kt index 5d1e53aca..70bacd72d 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockStates.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockStates.kt @@ -46,15 +46,17 @@ fun addBlockStates(provider: MatteryBlockStateProvider) { } } - with(provider.getMultipartBuilder(MBlocks.ANDROID_CHARGER)) { - for (dir in BlockRotationFreedom.HORIZONTAL.possibleValues) { - for (part in AndroidChargerBlock.PART.possibleValues) { - part().modelFile(provider.models().getExistingFile(modLocation("block/${MNames.ANDROID_CHARGER}_${part.serializedName}"))) - .rotationY(dir.front.yRotationBlockstateNorth()) - .addModel() - .condition(AndroidChargerBlock.PART, part) - .condition(BlockRotationFreedom.HORIZONTAL.property, dir) - .end() + for (block in MBlocks.ANDROID_CHARGER.values) { + with(provider.getMultipartBuilder(block)) { + for (dir in BlockRotationFreedom.HORIZONTAL.possibleValues) { + for (part in AndroidChargerBlock.PART.possibleValues) { + part().modelFile(provider.models().getExistingFile(modLocation("block/${block.registryName!!.path}_${part.serializedName}"))) + .rotationY(dir.front.yRotationBlockstateNorth()) + .addModel() + .condition(AndroidChargerBlock.PART, part) + .condition(BlockRotationFreedom.HORIZONTAL.property, dir) + .end() + } } } } @@ -104,7 +106,8 @@ fun addBlockStates(provider: MatteryBlockStateProvider) { provider.block(MBlocks.POWERED_FURNACE.values) provider.block(MBlocks.POWERED_SMOKER.values) - provider.block(MBlocks.STORAGE_POWER_SUPPLIER) + provider.block(MBlocks.STORAGE_POWER_SUPPLIER.values) + provider.block(MBlocks.MATTER_PANEL.values) provider.block(MBlocks.MATTER_RECYCLER.values) provider.block(MBlocks.MATTER_RECONSTRUCTOR.values) provider.block(MBlocks.ENERGY_SERVO) diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/ComplexBlockStates.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/ComplexBlockStates.kt index dbadd096c..730923d29 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/ComplexBlockStates.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/ComplexBlockStates.kt @@ -11,22 +11,24 @@ import ru.dbotthepony.mc.otm.datagen.modLocation import ru.dbotthepony.mc.otm.registry.MBlocks fun addComplexBlockStates(provider: MatteryBlockStateProvider) { - with(provider.getMultipartBuilder(MBlocks.DRIVE_VIEWER)) { - for (facing in BlockRotationFreedom.HORIZONTAL.possibleValues) { - part() - .modelFile(provider.models().getExistingFile(modLocation("block/drive_viewer_drive_part"))) - .rotationY(facing.front.yRotationBlockstateNorth()) - .addModel() - .condition(BlockRotationFreedom.HORIZONTAL.property, facing) - .condition(DriveViewerBlock.DRIVE_PRESENT, true) - - for (workState in WorkerState.SEMI_WORKER_STATE.possibleValues) { + for (block in MBlocks.DRIVE_VIEWER.values) { + with(provider.getMultipartBuilder(block)) { + for (facing in BlockRotationFreedom.HORIZONTAL.possibleValues) { part() - .modelFile(provider.models().getExistingFile(modLocation("block/drive_viewer_${workState.name.lowercase()}"))) + .modelFile(provider.models().getExistingFile(modLocation("block/drive_viewer_drive_part"))) .rotationY(facing.front.yRotationBlockstateNorth()) .addModel() - .condition(WorkerState.SEMI_WORKER_STATE, workState) .condition(BlockRotationFreedom.HORIZONTAL.property, facing) + .condition(DriveViewerBlock.DRIVE_PRESENT, true) + + for (workState in WorkerState.SEMI_WORKER_STATE.possibleValues) { + part() + .modelFile(provider.models().getExistingFile(modLocation("block/drive_viewer_${workState.name.lowercase()}"))) + .rotationY(facing.front.yRotationBlockstateNorth()) + .addModel() + .condition(WorkerState.SEMI_WORKER_STATE, workState) + .condition(BlockRotationFreedom.HORIZONTAL.property, facing) + } } } } diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/items/ItemModels.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/items/ItemModels.kt index 24c4e1784..cd6b384e7 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/items/ItemModels.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/items/ItemModels.kt @@ -183,10 +183,17 @@ fun addItemModels(provider: MatteryItemModelProvider) { provider.coloredWithBaseBlock(MItems.PLATE_PRESS, "plate_press", "_idle") provider.coloredWithBaseBlock(MItems.TWIN_PLATE_PRESS, "twin_plate_press", "_idle") - provider.block(MItems.STORAGE_POWER_SUPPLIER, "storage_power_supplier") + provider.coloredWithBaseBlock(MItems.STORAGE_POWER_SUPPLIER, "storage_power_supplier") provider.coloredWithBaseBlock(MItems.MATTER_RECYCLER, "matter_recycler", "_idle") provider.coloredWithBaseBlock(MItems.COBBLESTONE_GENERATOR, "cobblestone_generator") + for (dye in DyeColor.entries) { + provider.exec { + provider.withExistingParent("android_charger_${dye.name.lowercase()}", modLocation("item/android_charger")).texture("0", modLocation("block/android_charger/${dye.name.lowercase()}")) + provider.withExistingParent("matter_panel_${dye.name.lowercase()}", modLocation("item/matter_panel")).texture("texture", modLocation("block/matter_panel/${dye.name.lowercase()}")) + } + } + provider.block(MItems.STORAGE_BUS) provider.block(MItems.STORAGE_IMPORTER) provider.block(MItems.STORAGE_EXPORTER) diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/English.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/English.kt index 912698d02..927636f6f 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/English.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/English.kt @@ -417,18 +417,18 @@ private fun death(provider: MatteryLanguageProvider) { private fun blocks(provider: MatteryLanguageProvider) { with(provider.english) { addBlock(MBlocks.ANDROID_STATION.values, "Android Station") - add(MBlocks.ANDROID_CHARGER, "Wireless Charger") - add(MBlocks.ANDROID_CHARGER, "desc", "Charges nearby androids and exopacks") + addBlock(MBlocks.ANDROID_CHARGER.values, "Wireless Charger") + addBlock(MBlocks.ANDROID_CHARGER.values, "desc", "Charges nearby androids and exopacks") addBlock(MBlocks.BATTERY_BANK.values, "Battery Bank") addBlock(MBlocks.MATTER_DECOMPOSER.values, "Matter Decomposer") addBlock(MBlocks.MATTER_CAPACITOR_BANK.values, "Matter Capacitor Bank") add(MBlocks.MATTER_CABLE, "Matter Network Cable") add(MBlocks.PATTERN_STORAGE, "Pattern Storage") addBlock(MBlocks.MATTER_SCANNER.values, "Matter Scanner") - add(MBlocks.MATTER_PANEL, "Pattern Monitor") + addBlock(MBlocks.MATTER_PANEL.values, "Pattern Monitor") addBlock(MBlocks.MATTER_REPLICATOR.values, "Matter Replicator") addBlock(MBlocks.MATTER_BOTTLER.values, "Matter Bottler") - add(MBlocks.DRIVE_VIEWER, "Drive Viewer") + addBlock(MBlocks.DRIVE_VIEWER.values, "Drive Viewer") add(MBlocks.BLACK_HOLE, "Local Anomalous Spacetime Dilation Singular Point") addBlock(MBlocks.COBBLESTONE_GENERATOR.values, "Cobblestone Generator") add(MBlocks.INFINITE_WATER_SOURCE, "Infinite Water Source") @@ -486,7 +486,7 @@ private fun blocks(provider: MatteryLanguageProvider) { add(MBlocks.TRITANIUM_RAW_BLOCK, "Raw Tritanium Block") add(MBlocks.STORAGE_CABLE, "Storage Cable") - add(MBlocks.STORAGE_POWER_SUPPLIER, "Storage Power Supplier") + addBlock(MBlocks.STORAGE_POWER_SUPPLIER.values, "Storage Power Supplier") add(MBlocks.STORAGE_BUS, "Storage Bus") add(MBlocks.STORAGE_IMPORTER, "Storage Importer") add(MBlocks.STORAGE_EXPORTER, "Storage Exporter") diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/Russian.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/Russian.kt index 33373595b..3dc3f7820 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/Russian.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/Russian.kt @@ -419,18 +419,18 @@ private fun death(provider: MatteryLanguageProvider) { private fun blocks(provider: MatteryLanguageProvider) { with(provider.russian) { addBlock(MBlocks.ANDROID_STATION.values, "Станция андроидов") - add(MBlocks.ANDROID_CHARGER, "Беспроводной зарядник") - add(MBlocks.ANDROID_CHARGER, "desc", "Заряжает ближайших андроидов и экзопаки") + addBlock(MBlocks.ANDROID_CHARGER.values, "Беспроводной зарядник") + addBlock(MBlocks.ANDROID_CHARGER.values, "desc", "Заряжает ближайших андроидов и экзопаки") addBlock(MBlocks.BATTERY_BANK.values, "Банк аккумуляторов") addBlock(MBlocks.MATTER_DECOMPOSER.values, "Декомпозитор материи") addBlock(MBlocks.MATTER_CAPACITOR_BANK.values, "Банк накопителей материи") add(MBlocks.MATTER_CABLE, "Кабель сети материи") add(MBlocks.PATTERN_STORAGE, "Хранилище шаблонов") addBlock(MBlocks.MATTER_SCANNER.values, "Сканер материи") - add(MBlocks.MATTER_PANEL, "Монитор шаблонов") + addBlock(MBlocks.MATTER_PANEL.values, "Монитор шаблонов") addBlock(MBlocks.MATTER_REPLICATOR.values, "Репликатор материи") addBlock(MBlocks.MATTER_BOTTLER.values, "Бутилировщик материи") - add(MBlocks.DRIVE_VIEWER, "Просмотрщик дисков конденсации") + addBlock(MBlocks.DRIVE_VIEWER.values, "Просмотрщик дисков конденсации") add(MBlocks.BLACK_HOLE, "Локализированная сингулярная точка аномального искажения пространства-времени") addBlock(MBlocks.COBBLESTONE_GENERATOR.values, "Генератор булыжника") add(MBlocks.INFINITE_WATER_SOURCE, "Неиссякаемый источник воды") @@ -488,7 +488,7 @@ private fun blocks(provider: MatteryLanguageProvider) { add(MBlocks.TRITANIUM_RAW_BLOCK, "Блок рудного тритана") add(MBlocks.STORAGE_CABLE, "Кабель хранилища") - add(MBlocks.STORAGE_POWER_SUPPLIER, "Подстанция сети хранилища") + addBlock(MBlocks.STORAGE_POWER_SUPPLIER.values, "Подстанция сети хранилища") add(MBlocks.STORAGE_BUS, "Шина хранилища") add(MBlocks.STORAGE_IMPORTER, "Импортер хранилища") add(MBlocks.STORAGE_EXPORTER, "Экспортер хранилища") diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/loot/LootTablesData.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/loot/LootTablesData.kt index ae5ead785..c6d6db337 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/loot/LootTablesData.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/loot/LootTablesData.kt @@ -144,14 +144,14 @@ fun addLootTables(lootTables: LootTables) { lootTables.tile(MBlocks.HOLO_SIGN, "isLocked") lootTables.tile(MBlocks.STORAGE_CABLE) lootTables.tile(MBlocks.ANDROID_STATION.values) - lootTables.tile(MBlocks.ANDROID_CHARGER) + lootTables.tile(MBlocks.ANDROID_CHARGER.values) lootTables.tile(MBlocks.BATTERY_BANK.values) - lootTables.tile(MBlocks.DRIVE_VIEWER) + lootTables.tile(MBlocks.DRIVE_VIEWER.values) lootTables.tile(MBlocks.STORAGE_BUS) lootTables.tile(MBlocks.STORAGE_IMPORTER) lootTables.tile(MBlocks.STORAGE_EXPORTER) - lootTables.tile(MBlocks.STORAGE_POWER_SUPPLIER) + lootTables.tile(MBlocks.STORAGE_POWER_SUPPLIER.values) lootTables.tile(MBlocks.DRIVE_RACK) lootTables.tile(MBlocks.MATTER_DECOMPOSER.values) @@ -165,7 +165,7 @@ fun addLootTables(lootTables: LootTables) { lootTables.tile(MBlocks.POWERED_SMOKER.values) lootTables.tile(MBlocks.POWERED_BLAST_FURNACE.values) - lootTables.tile(MBlocks.MATTER_PANEL) + lootTables.tile(MBlocks.MATTER_PANEL.values) lootTables.tile(MBlocks.PATTERN_STORAGE) lootTables.tile(MBlocks.MATTER_CAPACITOR_BANK.values) lootTables.tile(MBlocks.MATTER_BOTTLER.values) diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/models/MatteryModelProvider.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/models/MatteryModelProvider.kt index 0075aa79c..6384439fb 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/models/MatteryModelProvider.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/models/MatteryModelProvider.kt @@ -127,6 +127,10 @@ class MatteryBlockModelProvider(event: GatherDataEvent) : BlockModelProvider(eve return colored(modelName, "", textureKeys.associateWith { modelName }) } + fun colored(modelName: String, suffix: String, textureKeys: Collection) { + return colored(modelName, suffix, textureKeys.associateWith { modelName }) + } + fun coloredMachineCombined(modelName: String, textureName: String, textureKeys: Collection) { for (state in listOf("_idle", "_error", "_working")) { colored(modelName, state, textureKeys.associateWith { textureName }) diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/CraftingTableRecipes.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/CraftingTableRecipes.kt index 179217e2f..1b13af09d 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/CraftingTableRecipes.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/CraftingTableRecipes.kt @@ -328,7 +328,7 @@ fun addCraftingTableRecipes(consumer: RecipeOutput) { .build(consumer) // беспроводной зарядник андроидов - MatteryRecipe(MItems.ANDROID_CHARGER, category = machinesCategory) + MatteryRecipe(MItems.ANDROID_CHARGER[null]!!, category = machinesCategory) .row(MItems.ELECTRIC_PARTS, MItems.QUANTUM_TRANSCEIVER, MItems.ELECTRIC_PARTS) .row(MItemTags.TRITANIUM_PLATES, MItems.MACHINE_FRAME, MItemTags.TRITANIUM_PLATES) .row(MItemTags.TRITANIUM_PLATES, MItems.MACHINE_FRAME, MItemTags.TRITANIUM_PLATES) diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/PainterRecipes.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/PainterRecipes.kt index 88e9b0fd9..268946d80 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/PainterRecipes.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/PainterRecipes.kt @@ -289,6 +289,10 @@ fun addPainterRecipes(consumer: RecipeOutput) { MItems.POWERED_BLAST_FURNACE, MItems.MATTER_RECYCLER, MItems.ANDROID_STATION, + MItems.STORAGE_POWER_SUPPLIER, + MItems.DRIVE_VIEWER, + MItems.ANDROID_CHARGER, + MItems.MATTER_PANEL, ) for (list in blocks) { diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/tags/Tags.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/tags/Tags.kt index 5042d8d1c..6a05f734b 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/tags/Tags.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/tags/Tags.kt @@ -186,7 +186,7 @@ fun addTags(tagsProvider: TagsProvider) { *MBlocks.MATTER_CAPACITOR_BANK.values.toTypedArray(), MBlocks.PATTERN_STORAGE, *MBlocks.MATTER_SCANNER.values.toTypedArray(), - MBlocks.MATTER_PANEL, + *MBlocks.MATTER_PANEL.values.toTypedArray(), *MBlocks.MATTER_REPLICATOR.values.toTypedArray(), *MBlocks.MATTER_BOTTLER.values.toTypedArray(), MBlocks.ENERGY_COUNTER, @@ -204,10 +204,10 @@ fun addTags(tagsProvider: TagsProvider) { MBlocks.STORAGE_IMPORTER, MBlocks.STORAGE_EXPORTER, - MBlocks.DRIVE_VIEWER, + *MBlocks.DRIVE_VIEWER.values.toTypedArray(), MBlocks.DRIVE_RACK, *MBlocks.ITEM_MONITOR.values.toTypedArray(), - MBlocks.STORAGE_POWER_SUPPLIER, + *MBlocks.STORAGE_POWER_SUPPLIER.values.toTypedArray(), MBlocks.PHANTOM_ATTRACTOR, MBlocks.ENERGY_SERVO, @@ -223,7 +223,7 @@ fun addTags(tagsProvider: TagsProvider) { *MBlocks.ESSENCE_STORAGE.values.toTypedArray(), *MBlocks.MATTER_RECONSTRUCTOR.values.toTypedArray(), MBlocks.FLUID_TANK, - MBlocks.ANDROID_CHARGER, + *MBlocks.ANDROID_CHARGER.values.toTypedArray(), ), Tiers.IRON) tagsProvider.requiresPickaxe(MBlocks.TRITANIUM_ANVIL, Tiers.IRON) diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/block/matter/MatterPanelBlock.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/block/matter/MatterPanelBlock.kt index fbabb31e2..f8534819a 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/block/matter/MatterPanelBlock.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/block/matter/MatterPanelBlock.kt @@ -4,6 +4,7 @@ import com.google.common.collect.ImmutableMap import net.minecraft.world.level.block.EntityBlock import net.minecraft.core.BlockPos import net.minecraft.core.Direction +import net.minecraft.world.item.DyeColor import net.minecraft.world.level.block.state.BlockState import net.minecraft.world.level.block.entity.BlockEntity import ru.dbotthepony.mc.otm.block.entity.matter.MatterPanelBlockEntity @@ -17,7 +18,7 @@ import ru.dbotthepony.mc.otm.core.get import ru.dbotthepony.mc.otm.core.math.BlockRotation import ru.dbotthepony.mc.otm.core.math.BlockRotationFreedom -class MatterPanelBlock : RotatableMatteryBlock(DEFAULT_MACHINE_PROPERTIES), EntityBlock { +class MatterPanelBlock(val color: DyeColor?) : RotatableMatteryBlock(DEFAULT_MACHINE_PROPERTIES), EntityBlock { override fun newBlockEntity(blockPos: BlockPos, blockState: BlockState): BlockEntity { return MatterPanelBlockEntity(blockPos, blockState) } diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/block/storage/DriveViewerBlock.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/block/storage/DriveViewerBlock.kt index f0c35ec79..7dd657190 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/block/storage/DriveViewerBlock.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/block/storage/DriveViewerBlock.kt @@ -2,6 +2,7 @@ package ru.dbotthepony.mc.otm.block.storage import net.minecraft.core.BlockPos import net.minecraft.network.chat.Component +import net.minecraft.world.item.DyeColor import net.minecraft.world.item.ItemStack import net.minecraft.world.item.TooltipFlag import net.minecraft.world.item.context.BlockPlaceContext @@ -27,7 +28,7 @@ import ru.dbotthepony.mc.otm.core.get import ru.dbotthepony.mc.otm.registry.MBlockEntities import ru.dbotthepony.mc.otm.shapes.BlockShapes -class DriveViewerBlock : RotatableMatteryBlock(DEFAULT_MACHINE_PROPERTIES), EntityBlock { +class DriveViewerBlock(val color: DyeColor?) : RotatableMatteryBlock(DEFAULT_MACHINE_PROPERTIES), EntityBlock { override fun newBlockEntity(blockPos: BlockPos, blockState: BlockState): BlockEntity { return DriveViewerBlockEntity(blockPos, blockState) } diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/block/storage/StoragePowerSupplierBlock.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/block/storage/StoragePowerSupplierBlock.kt index 18562a541..90ab90cdb 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/block/storage/StoragePowerSupplierBlock.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/block/storage/StoragePowerSupplierBlock.kt @@ -2,6 +2,7 @@ package ru.dbotthepony.mc.otm.block.storage import net.minecraft.core.BlockPos import net.minecraft.network.chat.Component +import net.minecraft.world.item.DyeColor import net.minecraft.world.item.ItemStack import net.minecraft.world.item.TooltipFlag import net.minecraft.world.level.BlockGetter @@ -22,7 +23,7 @@ import ru.dbotthepony.mc.otm.core.get import ru.dbotthepony.mc.otm.registry.MBlockEntities import ru.dbotthepony.mc.otm.shapes.BlockShapes -class StoragePowerSupplierBlock : RotatableMatteryBlock(DEFAULT_MACHINE_PROPERTIES), EntityBlock { +class StoragePowerSupplierBlock(val color: DyeColor?) : RotatableMatteryBlock(DEFAULT_MACHINE_PROPERTIES), EntityBlock { override fun newBlockEntity(p_153215_: BlockPos, p_153216_: BlockState): BlockEntity { return StoragePowerSupplierBlockEntity(p_153215_, p_153216_) } diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/block/tech/AndroidChargerBlock.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/block/tech/AndroidChargerBlock.kt index 432923221..d26a2b541 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/block/tech/AndroidChargerBlock.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/block/tech/AndroidChargerBlock.kt @@ -6,6 +6,7 @@ import net.minecraft.network.chat.Component import net.minecraft.util.StringRepresentable import net.minecraft.world.entity.LivingEntity import net.minecraft.world.entity.player.Player +import net.minecraft.world.item.DyeColor import net.minecraft.world.item.ItemStack import net.minecraft.world.item.TooltipFlag import net.minecraft.world.item.context.BlockPlaceContext @@ -37,7 +38,7 @@ import ru.dbotthepony.mc.otm.core.math.plus import ru.dbotthepony.mc.otm.oncePre import ru.dbotthepony.mc.otm.shapes.BlockShapes -class AndroidChargerBlock : RotatableMatteryBlock(Properties.of().destroyTime(2.5f).explosionResistance(40f).pushReaction(PushReaction.BLOCK).requiresCorrectToolForDrops()), EntityBlock { +class AndroidChargerBlock(val color: DyeColor?) : RotatableMatteryBlock(Properties.of().destroyTime(2.5f).explosionResistance(40f).pushReaction(PushReaction.BLOCK).requiresCorrectToolForDrops()), EntityBlock { enum class Type : StringRepresentable { BASE, MIDDLE, diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/Ext.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/Ext.kt index 9b3ff14b8..c6bddbba5 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/Ext.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/Ext.kt @@ -11,15 +11,15 @@ operator fun RegistryObject.getValue(thisRef: Any, property: KPrope return get() } -internal fun DeferredRegister.colored(prefix: String, factory: (color: DyeColor, name: String) -> R): Map { - return SupplierMap(MRegistry.DYE_ORDER.map { it to register(prefix + "_" + it.name.lowercase()) { factory.invoke(it, prefix + "_" + it.name.lowercase()) } }) +internal fun DeferredRegister.colored(prefix: String, factory: (color: DyeColor) -> R): Map { + return SupplierMap(MRegistry.DYE_ORDER.map { it to register(prefix + "_" + it.name.lowercase()) { factory.invoke(it) } }) } -internal fun DeferredRegister.coloredWithBase(prefix: String, factory: (color: DyeColor?, name: String) -> R): Map { +internal fun DeferredRegister.coloredWithBase(prefix: String, factory: (color: DyeColor?) -> R): Map { val values = ArrayList>>() - values.add(null to register(prefix) { factory.invoke(null, prefix) }) - MRegistry.DYE_ORDER.forEach { values.add(it to register(prefix + "_" + it.name.lowercase()) { factory.invoke(it, prefix + "_" + it.name.lowercase()) }) } + values.add(null to register(prefix) { factory.invoke(null) }) + MRegistry.DYE_ORDER.forEach { values.add(it to register(prefix + "_" + it.name.lowercase()) { factory.invoke(it) }) } return SupplierMap(values) } diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MBlockEntities.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MBlockEntities.kt index d79c1d9a9..4795cabdc 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MBlockEntities.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MBlockEntities.kt @@ -44,44 +44,48 @@ object MBlockEntities { return registry.register(name) { BlockEntityType.Builder.of(factory, *blocks.map { it.get() }.toTypedArray()).build(null) } } - val ANDROID_STATION by register(MNames.ANDROID_STATION, ::AndroidStationBlockEntity, *MBlocks.ANDROID_STATION.asSupplierArray()) - val BATTERY_BANK by register(MNames.BATTERY_BANK, ::BatteryBankBlockEntity, *MBlocks.BATTERY_BANK.asSupplierArray()) - val MATTER_DECOMPOSER by register(MNames.MATTER_DECOMPOSER, ::MatterDecomposerBlockEntity, *MBlocks.MATTER_DECOMPOSER.asSupplierArray()) - val MATTER_CAPACITOR_BANK by register(MNames.MATTER_CAPACITOR_BANK, ::MatterCapacitorBankBlockEntity, *MBlocks.MATTER_CAPACITOR_BANK.asSupplierArray()) + private fun register(name: String, factory: BlockEntityType.BlockEntitySupplier, blocks: Map<*, Block>): RegistryObject> { + return registry.register(name) { BlockEntityType.Builder.of(factory, *blocks.values.toTypedArray()).build(null) } + } + + val ANDROID_STATION by register(MNames.ANDROID_STATION, ::AndroidStationBlockEntity, MBlocks.ANDROID_STATION) + val BATTERY_BANK by register(MNames.BATTERY_BANK, ::BatteryBankBlockEntity, MBlocks.BATTERY_BANK) + val MATTER_DECOMPOSER by register(MNames.MATTER_DECOMPOSER, ::MatterDecomposerBlockEntity, MBlocks.MATTER_DECOMPOSER) + val MATTER_CAPACITOR_BANK by register(MNames.MATTER_CAPACITOR_BANK, ::MatterCapacitorBankBlockEntity, MBlocks.MATTER_CAPACITOR_BANK) val MATTER_CABLE by register(MNames.MATTER_CABLE, ::MatterCableBlockEntity, MBlocks::MATTER_CABLE) val STORAGE_CABLE by register(MNames.STORAGE_CABLE, ::StorageCableBlockEntity, MBlocks::STORAGE_CABLE) val PATTERN_STORAGE by register(MNames.PATTERN_STORAGE, ::PatternStorageBlockEntity, MBlocks::PATTERN_STORAGE) - val MATTER_SCANNER by register(MNames.MATTER_SCANNER, ::MatterScannerBlockEntity, *MBlocks.MATTER_SCANNER.asSupplierArray()) - val MATTER_PANEL by register(MNames.MATTER_PANEL, ::MatterPanelBlockEntity, MBlocks::MATTER_PANEL) - val MATTER_REPLICATOR by register(MNames.MATTER_REPLICATOR, ::MatterReplicatorBlockEntity, *MBlocks.MATTER_REPLICATOR.asSupplierArray()) - val MATTER_BOTTLER by register(MNames.MATTER_BOTTLER, ::MatterBottlerBlockEntity, *MBlocks.MATTER_BOTTLER.asSupplierArray()) - val DRIVE_VIEWER by register(MNames.DRIVE_VIEWER, ::DriveViewerBlockEntity, MBlocks::DRIVE_VIEWER) + val MATTER_SCANNER by register(MNames.MATTER_SCANNER, ::MatterScannerBlockEntity, MBlocks.MATTER_SCANNER) + val MATTER_PANEL by register(MNames.MATTER_PANEL, ::MatterPanelBlockEntity, MBlocks.MATTER_PANEL) + val MATTER_REPLICATOR by register(MNames.MATTER_REPLICATOR, ::MatterReplicatorBlockEntity, MBlocks.MATTER_REPLICATOR) + val MATTER_BOTTLER by register(MNames.MATTER_BOTTLER, ::MatterBottlerBlockEntity, MBlocks.MATTER_BOTTLER) + val DRIVE_VIEWER by register(MNames.DRIVE_VIEWER, ::DriveViewerBlockEntity, MBlocks.DRIVE_VIEWER) val BLACK_HOLE by register(MNames.BLACK_HOLE, ::BlackHoleBlockEntity, MBlocks::BLACK_HOLE) - val CARGO_CRATE by register(MNames.CARGO_CRATE, ::CargoCrateBlockEntity, *MRegistry.CARGO_CRATES.blocks.asSupplierArray()) + val CARGO_CRATE by register(MNames.CARGO_CRATE, ::CargoCrateBlockEntity, MRegistry.CARGO_CRATES.blocks) val DRIVE_RACK by register(MNames.DRIVE_RACK, ::DriveRackBlockEntity, MBlocks::DRIVE_RACK) - val ITEM_MONITOR by register(MNames.ITEM_MONITOR, ::ItemMonitorBlockEntity, *MBlocks.ITEM_MONITOR.asSupplierArray()) + val ITEM_MONITOR by register(MNames.ITEM_MONITOR, ::ItemMonitorBlockEntity, MBlocks.ITEM_MONITOR) val ENERGY_COUNTER by register(MNames.ENERGY_COUNTER, ::EnergyCounterBlockEntity, MBlocks::ENERGY_COUNTER) val CHEMICAL_GENERATOR by register(MNames.CHEMICAL_GENERATOR, ::ChemicalGeneratorBlockEntity, MBlocks::CHEMICAL_GENERATOR) - val PLATE_PRESS by register(MNames.PLATE_PRESS, ::PlatePressBlockEntity, *MBlocks.PLATE_PRESS.asSupplierArray()) - val TWIN_PLATE_PRESS by register(MNames.TWIN_PLATE_PRESS, { a, b -> PlatePressBlockEntity(a, b, true) }, *MBlocks.TWIN_PLATE_PRESS.asSupplierArray()) + val PLATE_PRESS by register(MNames.PLATE_PRESS, ::PlatePressBlockEntity, MBlocks.PLATE_PRESS) + val TWIN_PLATE_PRESS by register(MNames.TWIN_PLATE_PRESS, { a, b -> PlatePressBlockEntity(a, b, true) }, MBlocks.TWIN_PLATE_PRESS) val GRAVITATION_STABILIZER by register(MNames.GRAVITATION_STABILIZER, ::GravitationStabilizerBlockEntity, MBlocks::GRAVITATION_STABILIZER) - val MATTER_RECYCLER by register(MNames.MATTER_RECYCLER, ::MatterRecyclerBlockEntity, *MBlocks.MATTER_RECYCLER.asSupplierArray()) + val MATTER_RECYCLER by register(MNames.MATTER_RECYCLER, ::MatterRecyclerBlockEntity, MBlocks.MATTER_RECYCLER) val ENERGY_SERVO by register(MNames.ENERGY_SERVO, ::EnergyServoBlockEntity, MBlocks::ENERGY_SERVO) - val COBBLESTONE_GENERATOR by register(MNames.COBBLESTONE_GENERATOR, ::CobblerBlockEntity, *MBlocks.COBBLESTONE_GENERATOR.asSupplierArray()) - val ESSENCE_STORAGE by register(MNames.ESSENCE_STORAGE, ::EssenceStorageBlockEntity, *MBlocks.ESSENCE_STORAGE.asSupplierArray()) - val MATTER_RECONSTRUCTOR by register(MNames.MATTER_RECONSTRUCTOR, ::MatterReconstructorBlockEntity, *MBlocks.MATTER_RECONSTRUCTOR.asSupplierArray()) + val COBBLESTONE_GENERATOR by register(MNames.COBBLESTONE_GENERATOR, ::CobblerBlockEntity, MBlocks.COBBLESTONE_GENERATOR) + val ESSENCE_STORAGE by register(MNames.ESSENCE_STORAGE, ::EssenceStorageBlockEntity, MBlocks.ESSENCE_STORAGE) + val MATTER_RECONSTRUCTOR by register(MNames.MATTER_RECONSTRUCTOR, ::MatterReconstructorBlockEntity, MBlocks.MATTER_RECONSTRUCTOR) val FLUID_TANK by register(MNames.FLUID_TANK, ::FluidTankBlockEntity, MBlocks::FLUID_TANK) - val ANDROID_CHARGER by register(MNames.ANDROID_CHARGER, ::AndroidChargerBlockEntity, MBlocks::ANDROID_CHARGER) - val ANDROID_CHARGER_MIDDLE by register(MNames.ANDROID_CHARGER + "_middle", ::AndroidChargerMiddleBlockEntity, MBlocks::ANDROID_CHARGER) - val ANDROID_CHARGER_TOP by register(MNames.ANDROID_CHARGER + "_top", ::AndroidChargerTopBlockEntity, MBlocks::ANDROID_CHARGER) + val ANDROID_CHARGER by register(MNames.ANDROID_CHARGER, ::AndroidChargerBlockEntity, MBlocks.ANDROID_CHARGER) + val ANDROID_CHARGER_MIDDLE by register(MNames.ANDROID_CHARGER + "_middle", ::AndroidChargerMiddleBlockEntity, MBlocks.ANDROID_CHARGER) + val ANDROID_CHARGER_TOP by register(MNames.ANDROID_CHARGER + "_top", ::AndroidChargerTopBlockEntity, MBlocks.ANDROID_CHARGER) val INFINITE_WATER_SOURCE by register(MNames.INFINITE_WATER_SOURCE, ::InfiniteWaterSourceBlockEntity, MBlocks::INFINITE_WATER_SOURCE) val DEV_CHEST by register(MNames.DEV_CHEST, ::DevChestBlockEntity, MBlocks::DEV_CHEST) val PAINTER by register(MNames.PAINTER, ::PainterBlockEntity, MBlocks::PAINTER) val MATTER_ENTANGLER by register(MNames.MATTER_ENTANGLER, ::MatterEntanglerBlockEntity, MBlocks::MATTER_ENTANGLER) - val POWERED_FURNACE by register(MNames.POWERED_FURNACE, ::PoweredFurnaceBlockEntity, *MBlocks.POWERED_FURNACE.asSupplierArray()) - val POWERED_BLAST_FURNACE by register(MNames.POWERED_BLAST_FURNACE, ::PoweredBlastFurnaceBlockEntity, *MBlocks.POWERED_BLAST_FURNACE.asSupplierArray()) - val POWERED_SMOKER by register(MNames.POWERED_SMOKER, ::PoweredSmokerBlockEntity, *MBlocks.POWERED_SMOKER.asSupplierArray()) + val POWERED_FURNACE by register(MNames.POWERED_FURNACE, ::PoweredFurnaceBlockEntity, MBlocks.POWERED_FURNACE) + val POWERED_BLAST_FURNACE by register(MNames.POWERED_BLAST_FURNACE, ::PoweredBlastFurnaceBlockEntity, MBlocks.POWERED_BLAST_FURNACE) + val POWERED_SMOKER by register(MNames.POWERED_SMOKER, ::PoweredSmokerBlockEntity, MBlocks.POWERED_SMOKER) val ENERGY_CABLES: Map> = SupplierMap(CablesConfig.E.entries.map { conf -> var selfFeed: Supplier> = Supplier { TODO() } @@ -89,10 +93,10 @@ object MBlockEntities { conf to selfFeed }) - val STORAGE_BUS: BlockEntityType by registry.register(MNames.STORAGE_BUS) { BlockEntityType.Builder.of(::StorageBusBlockEntity, MBlocks.STORAGE_BUS).build(null) } - val STORAGE_IMPORTER: BlockEntityType by registry.register(MNames.STORAGE_IMPORTER) { BlockEntityType.Builder.of(::StorageImporterBlockEntity, MBlocks.STORAGE_IMPORTER).build(null) } - val STORAGE_EXPORTER: BlockEntityType by registry.register(MNames.STORAGE_EXPORTER) { BlockEntityType.Builder.of(::StorageExporterBlockEntity, MBlocks.STORAGE_EXPORTER).build(null) } - val STORAGE_POWER_SUPPLIER: BlockEntityType by registry.register(MNames.STORAGE_POWER_SUPPLIER) { BlockEntityType.Builder.of(::StoragePowerSupplierBlockEntity, MBlocks.STORAGE_POWER_SUPPLIER).build(null) } + val STORAGE_BUS by register(MNames.STORAGE_BUS, ::StorageBusBlockEntity, MBlocks::STORAGE_BUS) + val STORAGE_IMPORTER by register(MNames.STORAGE_IMPORTER, ::StorageImporterBlockEntity, MBlocks::STORAGE_IMPORTER) + val STORAGE_EXPORTER by register(MNames.STORAGE_EXPORTER, ::StorageExporterBlockEntity, MBlocks::STORAGE_EXPORTER) + val STORAGE_POWER_SUPPLIER by register(MNames.STORAGE_POWER_SUPPLIER, ::StoragePowerSupplierBlockEntity, MBlocks.STORAGE_POWER_SUPPLIER) val HOLO_SIGN: BlockEntityType by registry.register(MNames.HOLO_SIGN) { BlockEntityType.Builder.of(::HoloSignBlockEntity, MBlocks.HOLO_SIGN).build(null) } diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MBlocks.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MBlocks.kt index 828c32f80..47b5931b3 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MBlocks.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MBlocks.kt @@ -86,46 +86,46 @@ object MBlocks { registry.register(bus) } - val ANDROID_STATION = registry.coloredWithBase(MNames.ANDROID_STATION) { color, _ -> AndroidStationBlock(color) } - val ANDROID_CHARGER: Block by registry.register(MNames.ANDROID_CHARGER) { AndroidChargerBlock() } - val BATTERY_BANK = registry.coloredWithBase(MNames.BATTERY_BANK) { color, _ -> BatteryBankBlock(color) } - val MATTER_DECOMPOSER = registry.coloredWithBase(MNames.MATTER_DECOMPOSER) { color, _ -> MatterDecomposerBlock(color) } - val MATTER_CAPACITOR_BANK = registry.coloredWithBase(MNames.MATTER_CAPACITOR_BANK) { color, _ -> MatterCapacitorBankBlock(color) } - val MATTER_CABLE: Block by registry.register(MNames.MATTER_CABLE) { MatterCableBlock() } - val PATTERN_STORAGE: Block by registry.register(MNames.PATTERN_STORAGE) { PatternStorageBlock() } - val MATTER_SCANNER = registry.coloredWithBase(MNames.MATTER_SCANNER) { color, _ -> MatterScannerBlock(color) } - val MATTER_PANEL: Block by registry.register(MNames.MATTER_PANEL) { MatterPanelBlock() } - val MATTER_REPLICATOR = registry.coloredWithBase(MNames.MATTER_REPLICATOR) { color, _ -> MatterReplicatorBlock(color) } - val MATTER_BOTTLER = registry.coloredWithBase(MNames.MATTER_BOTTLER) { color, _ -> MatterBottlerBlock(color) } - val ENERGY_COUNTER: Block by registry.register(MNames.ENERGY_COUNTER) { EnergyCounterBlock() } - val CHEMICAL_GENERATOR: Block by registry.register(MNames.CHEMICAL_GENERATOR) { ChemicalGeneratorBlock() } - val PLATE_PRESS = registry.coloredWithBase(MNames.PLATE_PRESS) { color, _ -> PlatePressBlock(color) } - val TWIN_PLATE_PRESS = registry.coloredWithBase(MNames.TWIN_PLATE_PRESS) { color, _ -> PlatePressBlock(color, isTwin = true) } - val POWERED_FURNACE = registry.coloredWithBase(MNames.POWERED_FURNACE) { color, _ -> PoweredFurnaceBlock(color) } - val POWERED_BLAST_FURNACE = registry.coloredWithBase(MNames.POWERED_BLAST_FURNACE) { color, _ -> PoweredBlastFurnaceBlock(color) } - val POWERED_SMOKER = registry.coloredWithBase(MNames.POWERED_SMOKER) { color, _ -> PoweredSmokerBlock(color) } - val MATTER_RECYCLER = registry.coloredWithBase(MNames.MATTER_RECYCLER) { color, _ -> MatterRecyclerBlock(color) } - val ENERGY_SERVO: Block by registry.register(MNames.ENERGY_SERVO) { EnergyServoBlock() } - val COBBLESTONE_GENERATOR = registry.coloredWithBase(MNames.COBBLESTONE_GENERATOR) { color, _ -> CobblerBlock(color) } - val INFINITE_WATER_SOURCE: Block by registry.register(MNames.INFINITE_WATER_SOURCE) { InfiniteWaterSourceBlock() } - val ESSENCE_STORAGE = registry.coloredWithBase(MNames.ESSENCE_STORAGE) { color, _ -> EssenceStorageBlock(color) } - val MATTER_RECONSTRUCTOR = registry.coloredWithBase(MNames.MATTER_RECONSTRUCTOR) { color, _ -> MatterReconstructorBlock(color) } - val PAINTER: PainterBlock by registry.register(MNames.PAINTER) { PainterBlock() } + val ANDROID_STATION = registry.coloredWithBase(MNames.ANDROID_STATION, ::AndroidStationBlock) + val ANDROID_CHARGER = registry.coloredWithBase(MNames.ANDROID_CHARGER, ::AndroidChargerBlock) + val BATTERY_BANK = registry.coloredWithBase(MNames.BATTERY_BANK, ::BatteryBankBlock) + val MATTER_DECOMPOSER = registry.coloredWithBase(MNames.MATTER_DECOMPOSER, ::MatterDecomposerBlock) + val MATTER_CAPACITOR_BANK = registry.coloredWithBase(MNames.MATTER_CAPACITOR_BANK, ::MatterCapacitorBankBlock) + val MATTER_CABLE by registry.register(MNames.MATTER_CABLE, ::MatterCableBlock) + val PATTERN_STORAGE by registry.register(MNames.PATTERN_STORAGE, ::PatternStorageBlock) + val MATTER_SCANNER = registry.coloredWithBase(MNames.MATTER_SCANNER, ::MatterScannerBlock) + val MATTER_PANEL = registry.coloredWithBase(MNames.MATTER_PANEL, ::MatterPanelBlock) + val MATTER_REPLICATOR = registry.coloredWithBase(MNames.MATTER_REPLICATOR, ::MatterReplicatorBlock) + val MATTER_BOTTLER = registry.coloredWithBase(MNames.MATTER_BOTTLER, ::MatterBottlerBlock) + val ENERGY_COUNTER by registry.register(MNames.ENERGY_COUNTER, ::EnergyCounterBlock) + val CHEMICAL_GENERATOR by registry.register(MNames.CHEMICAL_GENERATOR, ::ChemicalGeneratorBlock) + val PLATE_PRESS = registry.coloredWithBase(MNames.PLATE_PRESS, ::PlatePressBlock) + val TWIN_PLATE_PRESS = registry.coloredWithBase(MNames.TWIN_PLATE_PRESS) { color -> PlatePressBlock(color, isTwin = true) } + val POWERED_FURNACE = registry.coloredWithBase(MNames.POWERED_FURNACE, ::PoweredFurnaceBlock) + val POWERED_BLAST_FURNACE = registry.coloredWithBase(MNames.POWERED_BLAST_FURNACE, ::PoweredBlastFurnaceBlock) + val POWERED_SMOKER = registry.coloredWithBase(MNames.POWERED_SMOKER, ::PoweredSmokerBlock) + val MATTER_RECYCLER = registry.coloredWithBase(MNames.MATTER_RECYCLER, ::MatterRecyclerBlock) + val ENERGY_SERVO by registry.register(MNames.ENERGY_SERVO, ::EnergyServoBlock) + val COBBLESTONE_GENERATOR = registry.coloredWithBase(MNames.COBBLESTONE_GENERATOR, ::CobblerBlock) + val INFINITE_WATER_SOURCE by registry.register(MNames.INFINITE_WATER_SOURCE) { InfiniteWaterSourceBlock() } + val ESSENCE_STORAGE = registry.coloredWithBase(MNames.ESSENCE_STORAGE, ::EssenceStorageBlock) + val MATTER_RECONSTRUCTOR = registry.coloredWithBase(MNames.MATTER_RECONSTRUCTOR, ::MatterReconstructorBlock) + val PAINTER by registry.register(MNames.PAINTER, ::PainterBlock) val MATTER_ENTANGLER: MatterEntanglerBlock by registry.register(MNames.MATTER_ENTANGLER) { MatterEntanglerBlock() } val ENERGY_CABLES: Map = SupplierMap(CablesConfig.E.entries.map { conf -> conf to registry.register("${conf.name.lowercase()}_energy_cable") { EnergyCableBlock { a, b -> MBlockEntities.ENERGY_CABLES[conf]!!.create(a, b)!! } } }) - val STORAGE_BUS: Block by registry.register(MNames.STORAGE_BUS) { StorageBusBlock() } - val STORAGE_IMPORTER: Block by registry.register(MNames.STORAGE_IMPORTER) { StorageImporterBlock() } - val STORAGE_EXPORTER: Block by registry.register(MNames.STORAGE_EXPORTER) { StorageExporterBlock() } + val STORAGE_BUS: Block by registry.register(MNames.STORAGE_BUS, ::StorageBusBlock) + val STORAGE_IMPORTER: Block by registry.register(MNames.STORAGE_IMPORTER, ::StorageImporterBlock) + val STORAGE_EXPORTER: Block by registry.register(MNames.STORAGE_EXPORTER, ::StorageExporterBlock) - val DRIVE_VIEWER: Block by registry.register(MNames.DRIVE_VIEWER) { DriveViewerBlock() } - val DRIVE_RACK: Block by registry.register(MNames.DRIVE_RACK) { DriveRackBlock() } - val ITEM_MONITOR = registry.coloredWithBase(MNames.ITEM_MONITOR) { color, _ -> ItemMonitorBlock(color) } - val STORAGE_CABLE: Block by registry.register(MNames.STORAGE_CABLE) { StorageCableBlock() } - val STORAGE_POWER_SUPPLIER: Block by registry.register(MNames.STORAGE_POWER_SUPPLIER) { StoragePowerSupplierBlock() } + val DRIVE_VIEWER = registry.coloredWithBase(MNames.DRIVE_VIEWER, ::DriveViewerBlock) + val DRIVE_RACK: Block by registry.register(MNames.DRIVE_RACK, ::DriveRackBlock) + val ITEM_MONITOR = registry.coloredWithBase(MNames.ITEM_MONITOR, ::ItemMonitorBlock) + val STORAGE_CABLE: Block by registry.register(MNames.STORAGE_CABLE, ::StorageCableBlock) + val STORAGE_POWER_SUPPLIER = registry.coloredWithBase(MNames.STORAGE_POWER_SUPPLIER, ::StoragePowerSupplierBlock) val DEBUG_EXPLOSION_SMALL: Block by registry.register(MNames.DEBUG_EXPLOSION_SMALL) { BlockExplosionDebugger() } val DEBUG_SPHERE_POINTS: Block by registry.register(MNames.DEBUG_SPHERE_POINTS) { BlockSphereDebugger() } @@ -218,11 +218,9 @@ object MBlocks { TRITANIUM_ANVIL = SupplierList(anvils) } - val TRITANIUM_DOOR: Map = registry.coloredWithBase(MNames.TRITANIUM_DOOR) { color, _ -> - TritaniumDoorBlock(color) } + val TRITANIUM_DOOR = registry.coloredWithBase(MNames.TRITANIUM_DOOR, ::TritaniumDoorBlock) - val TRITANIUM_TRAPDOOR: Map = registry.coloredWithBase(MNames.TRITANIUM_TRAPDOOR) { color, _ -> - TritaniumTrapdoorBlock(color) } + val TRITANIUM_TRAPDOOR = registry.coloredWithBase(MNames.TRITANIUM_TRAPDOOR, ::TritaniumTrapdoorBlock) val TRITANIUM_STRIPED_BLOCK: Block by registry.register(MNames.TRITANIUM_STRIPED_BLOCK) { Block( BlockBehaviour.Properties.of() diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MEntityTypes.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MEntityTypes.kt index 47cad1f74..dcdb9d758 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MEntityTypes.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MEntityTypes.kt @@ -23,8 +23,8 @@ object MEntityTypes { EntityType.Builder.of({ _, level -> PlasmaProjectile(level) }, MobCategory.MISC).sized(0.4f, 0.4f).build(MNames.PLASMA) } - val CARGO_CRATE_MINECARTS = registry.coloredWithBase(MNames.MINECART_CARGO_CRATE) { color, name -> - EntityType.Builder.of({ it, level -> MinecartCargoCrate(it, color, level)}, MobCategory.MISC).sized(0.98F, 0.7F).clientTrackingRange(8).build(name) + val CARGO_CRATE_MINECARTS = registry.coloredWithBase(MNames.MINECART_CARGO_CRATE) { color -> + EntityType.Builder.of({ it, level -> MinecartCargoCrate(it, color, level)}, MobCategory.MISC).sized(0.98F, 0.7F).clientTrackingRange(8).build("dfu doesn't works ✅") } internal fun register(bus: IEventBus) { diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MItems.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MItems.kt index edbe1b5a5..087c24a1b 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MItems.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MItems.kt @@ -6,13 +6,16 @@ import net.minecraft.network.chat.Component import net.minecraft.resources.ResourceLocation import net.minecraft.world.food.FoodProperties import net.minecraft.world.item.* +import net.minecraft.world.item.Item.Properties import net.minecraft.world.item.crafting.Ingredient import net.minecraft.world.level.Level +import net.minecraft.world.level.block.Block import net.minecraftforge.common.ForgeTier import net.minecraftforge.common.TierSortingRegistry import net.minecraftforge.eventbus.api.IEventBus import net.minecraftforge.registries.DeferredRegister import net.minecraftforge.registries.ForgeRegistries +import net.minecraftforge.registries.RegistryObject import ru.dbotthepony.mc.otm.OverdriveThatMatters import ru.dbotthepony.mc.otm.capability.ITieredUpgradeSet import ru.dbotthepony.mc.otm.capability.MatteryPlayerCapability @@ -44,9 +47,13 @@ import ru.dbotthepony.mc.otm.item.weapon.PlasmaRifleItem import java.util.function.Supplier object MItems { - private val DEFAULT_PROPERTIES = Item.Properties() + private val DEFAULT_PROPERTIES = Properties() private val registry: DeferredRegister = DeferredRegister.create(ForgeRegistries.ITEMS, OverdriveThatMatters.MOD_ID) + private fun register(name: String, blocks: Map, properties: Properties = DEFAULT_PROPERTIES): Map { + return registry.coloredWithBase(name) { color -> BlockItem(blocks[color]!!, properties) } + } + internal fun register(bus: IEventBus) { registry.register(bus) } @@ -55,49 +62,49 @@ object MItems { conf to registry.register("${conf.name.lowercase()}_energy_cable") { BlockItem(MBlocks.ENERGY_CABLES[conf]!!, DEFAULT_PROPERTIES) } }) - val ANDROID_STATION = registry.coloredWithBase(MNames.ANDROID_STATION) { color, _ -> BlockItem(MBlocks.ANDROID_STATION[color]!!, DEFAULT_PROPERTIES) } - val ANDROID_CHARGER: BlockItem by registry.register(MNames.ANDROID_CHARGER) { BlockItem(MBlocks.ANDROID_CHARGER, DEFAULT_PROPERTIES) } - val BATTERY_BANK = registry.coloredWithBase(MNames.BATTERY_BANK) { color, _ -> BlockItem(MBlocks.BATTERY_BANK[color]!!, DEFAULT_PROPERTIES) } - val MATTER_DECOMPOSER = registry.coloredWithBase(MNames.MATTER_DECOMPOSER) { color, _ -> BlockItem(MBlocks.MATTER_DECOMPOSER[color]!!, DEFAULT_PROPERTIES) } - val MATTER_CAPACITOR_BANK = registry.coloredWithBase(MNames.MATTER_CAPACITOR_BANK) { color, _ -> BlockItem(MBlocks.MATTER_CAPACITOR_BANK[color]!!, DEFAULT_PROPERTIES) } + val ANDROID_STATION = register(MNames.ANDROID_STATION, MBlocks.ANDROID_STATION) + val ANDROID_CHARGER = register(MNames.ANDROID_CHARGER, MBlocks.ANDROID_CHARGER) + val BATTERY_BANK = register(MNames.BATTERY_BANK, MBlocks.BATTERY_BANK) + val MATTER_DECOMPOSER = register(MNames.MATTER_DECOMPOSER, MBlocks.MATTER_DECOMPOSER) + val MATTER_CAPACITOR_BANK = register(MNames.MATTER_CAPACITOR_BANK, MBlocks.MATTER_CAPACITOR_BANK) val MATTER_CABLE: BlockItem by registry.register(MNames.MATTER_CABLE) { BlockItem(MBlocks.MATTER_CABLE, DEFAULT_PROPERTIES) } val PATTERN_STORAGE: BlockItem by registry.register(MNames.PATTERN_STORAGE) { BlockItem(MBlocks.PATTERN_STORAGE, DEFAULT_PROPERTIES) } - val MATTER_SCANNER = registry.coloredWithBase(MNames.MATTER_SCANNER) { color, _ -> BlockItem(MBlocks.MATTER_SCANNER[color]!!, DEFAULT_PROPERTIES) } - val MATTER_PANEL: BlockItem by registry.register(MNames.MATTER_PANEL) { BlockItem(MBlocks.MATTER_PANEL, DEFAULT_PROPERTIES) } - val MATTER_REPLICATOR = registry.coloredWithBase(MNames.MATTER_REPLICATOR) { color, _ -> BlockItem(MBlocks.MATTER_REPLICATOR[color]!!, DEFAULT_PROPERTIES) } - val MATTER_BOTTLER = registry.coloredWithBase(MNames.MATTER_BOTTLER) { color, _ -> BlockItem(MBlocks.MATTER_BOTTLER[color]!!, DEFAULT_PROPERTIES) } + val MATTER_SCANNER = register(MNames.MATTER_SCANNER, MBlocks.MATTER_SCANNER) + val MATTER_PANEL = register(MNames.MATTER_PANEL, MBlocks.MATTER_PANEL) + val MATTER_REPLICATOR = register(MNames.MATTER_REPLICATOR, MBlocks.MATTER_REPLICATOR) + val MATTER_BOTTLER = register(MNames.MATTER_BOTTLER, MBlocks.MATTER_BOTTLER) val TRITANIUM_ORE: BlockItem by registry.register(MNames.TRITANIUM_ORE) { BlockItem(MBlocks.TRITANIUM_ORE, DEFAULT_PROPERTIES) } val DEEPSLATE_TRITANIUM_ORE: BlockItem by registry.register(MNames.DEEPSLATE_TRITANIUM_ORE) { BlockItem(MBlocks.DEEPSLATE_TRITANIUM_ORE, DEFAULT_PROPERTIES) } val TRITANIUM_RAW_BLOCK: BlockItem by registry.register(MNames.TRITANIUM_RAW_BLOCK) { BlockItem(MBlocks.TRITANIUM_RAW_BLOCK, DEFAULT_PROPERTIES) } val ENERGY_COUNTER: BlockItem by registry.register(MNames.ENERGY_COUNTER) { BlockItem(MBlocks.ENERGY_COUNTER, DEFAULT_PROPERTIES) } val CHEMICAL_GENERATOR: BlockItem by registry.register(MNames.CHEMICAL_GENERATOR) { BlockItem(MBlocks.CHEMICAL_GENERATOR, DEFAULT_PROPERTIES) } - val PLATE_PRESS = registry.coloredWithBase(MNames.PLATE_PRESS) { color, _ -> BlockItem(MBlocks.PLATE_PRESS[color]!!, DEFAULT_PROPERTIES) } - val TWIN_PLATE_PRESS = registry.coloredWithBase(MNames.TWIN_PLATE_PRESS) { color, _ -> BlockItem(MBlocks.TWIN_PLATE_PRESS[color]!!, DEFAULT_PROPERTIES) } - val MATTER_RECYCLER = registry.coloredWithBase(MNames.MATTER_RECYCLER) { color, _ -> BlockItem(MBlocks.MATTER_RECYCLER[color]!!, DEFAULT_PROPERTIES) } + val PLATE_PRESS = register(MNames.PLATE_PRESS, MBlocks.PLATE_PRESS) + val TWIN_PLATE_PRESS = register(MNames.TWIN_PLATE_PRESS, MBlocks.TWIN_PLATE_PRESS) + val MATTER_RECYCLER = register(MNames.MATTER_RECYCLER, MBlocks.MATTER_RECYCLER) - val POWERED_FURNACE = registry.coloredWithBase(MNames.POWERED_FURNACE) { color, _ -> BlockItem(MBlocks.POWERED_FURNACE[color]!!, DEFAULT_PROPERTIES) } - val POWERED_BLAST_FURNACE = registry.coloredWithBase(MNames.POWERED_BLAST_FURNACE) { color, _ -> BlockItem(MBlocks.POWERED_BLAST_FURNACE[color]!!, DEFAULT_PROPERTIES) } - val POWERED_SMOKER = registry.coloredWithBase(MNames.POWERED_SMOKER) { color, _ -> BlockItem(MBlocks.POWERED_SMOKER[color]!!, DEFAULT_PROPERTIES) } + val POWERED_FURNACE = register(MNames.POWERED_FURNACE, MBlocks.POWERED_FURNACE) + val POWERED_BLAST_FURNACE = register(MNames.POWERED_BLAST_FURNACE, MBlocks.POWERED_BLAST_FURNACE) + val POWERED_SMOKER = register(MNames.POWERED_SMOKER, MBlocks.POWERED_SMOKER) val STORAGE_BUS: BlockItem by registry.register(MNames.STORAGE_BUS) { BlockItem(MBlocks.STORAGE_BUS, DEFAULT_PROPERTIES) } val STORAGE_IMPORTER: BlockItem by registry.register(MNames.STORAGE_IMPORTER) { BlockItem(MBlocks.STORAGE_IMPORTER, DEFAULT_PROPERTIES) } val STORAGE_EXPORTER: BlockItem by registry.register(MNames.STORAGE_EXPORTER) { BlockItem(MBlocks.STORAGE_EXPORTER, DEFAULT_PROPERTIES) } - val DRIVE_VIEWER: BlockItem by registry.register(MNames.DRIVE_VIEWER) { BlockItem(MBlocks.DRIVE_VIEWER, DEFAULT_PROPERTIES) } + val DRIVE_VIEWER = register(MNames.DRIVE_VIEWER, MBlocks.DRIVE_VIEWER) val DRIVE_RACK: BlockItem by registry.register(MNames.DRIVE_RACK) { BlockItem(MBlocks.DRIVE_RACK, DEFAULT_PROPERTIES) } - val ITEM_MONITOR = registry.coloredWithBase(MNames.ITEM_MONITOR) { color, _ -> BlockItem(MBlocks.ITEM_MONITOR[color]!!, DEFAULT_PROPERTIES) } + val ITEM_MONITOR = register(MNames.ITEM_MONITOR, MBlocks.ITEM_MONITOR) val STORAGE_CABLE: BlockItem by registry.register(MNames.STORAGE_CABLE) { BlockItem(MBlocks.STORAGE_CABLE, DEFAULT_PROPERTIES) } - val STORAGE_POWER_SUPPLIER: BlockItem by registry.register(MNames.STORAGE_POWER_SUPPLIER) { BlockItem(MBlocks.STORAGE_POWER_SUPPLIER, DEFAULT_PROPERTIES) } + val STORAGE_POWER_SUPPLIER = register(MNames.STORAGE_POWER_SUPPLIER, MBlocks.STORAGE_POWER_SUPPLIER) val GRAVITATION_STABILIZER: BlockItem by registry.register(MNames.GRAVITATION_STABILIZER) { BlockItem(MBlocks.GRAVITATION_STABILIZER, DEFAULT_PROPERTIES) } val PHANTOM_ATTRACTOR: DoubleHighBlockItem by registry.register(MNames.PHANTOM_ATTRACTOR) { DoubleHighBlockItem(MBlocks.PHANTOM_ATTRACTOR, DEFAULT_PROPERTIES) } val ENERGY_SERVO: BlockItem by registry.register(MNames.ENERGY_SERVO) { BlockItem(MBlocks.ENERGY_SERVO, DEFAULT_PROPERTIES) } - val COBBLESTONE_GENERATOR: Map = registry.coloredWithBase(MNames.COBBLESTONE_GENERATOR) { color, _ -> BlockItem(MBlocks.COBBLESTONE_GENERATOR[color]!!, DEFAULT_PROPERTIES) } + val COBBLESTONE_GENERATOR = register(MNames.COBBLESTONE_GENERATOR, MBlocks.COBBLESTONE_GENERATOR) val INFINITE_WATER_SOURCE: BlockItem by registry.register(MNames.INFINITE_WATER_SOURCE) { BlockItem(MBlocks.INFINITE_WATER_SOURCE, DEFAULT_PROPERTIES) } - val ESSENCE_STORAGE: Map = registry.coloredWithBase(MNames.ESSENCE_STORAGE) { color, _ -> BlockItem(MBlocks.ESSENCE_STORAGE[color]!!, DEFAULT_PROPERTIES) } - val MATTER_RECONSTRUCTOR = registry.coloredWithBase(MNames.MATTER_RECONSTRUCTOR) { color, _ -> BlockItem(MBlocks.MATTER_RECONSTRUCTOR[color]!!, DEFAULT_PROPERTIES) } + val ESSENCE_STORAGE = register(MNames.ESSENCE_STORAGE, MBlocks.ESSENCE_STORAGE) + val MATTER_RECONSTRUCTOR = register(MNames.MATTER_RECONSTRUCTOR, MBlocks.MATTER_RECONSTRUCTOR) 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) } @@ -115,7 +122,7 @@ object MItems { machines.addAll(POWERED_SMOKER.asSupplierArray()) machines.addAll(ANDROID_STATION.asSupplierArray().iterator()) - machines.add(::ANDROID_CHARGER) + machines.addAll(ANDROID_CHARGER.asSupplierArray().iterator()) machines.addAll(BATTERY_BANK.asSupplierArray().iterator()) machines.add(::ENERGY_COUNTER) machines.add(::CHEMICAL_GENERATOR) @@ -130,7 +137,7 @@ object MItems { machines.add(::MATTER_CABLE) machines.add(::PATTERN_STORAGE) machines.addAll(MATTER_SCANNER.asSupplierArray().iterator()) - machines.add(::MATTER_PANEL) + machines.addAll(MATTER_PANEL.asSupplierArray().iterator()) machines.addAll(MATTER_REPLICATOR.asSupplierArray().iterator()) machines.addAll(MATTER_BOTTLER.asSupplierArray().iterator()) machines.add(::MATTER_ENTANGLER) @@ -139,11 +146,11 @@ object MItems { machines.add(::STORAGE_BUS) machines.add(::STORAGE_IMPORTER) machines.add(::STORAGE_EXPORTER) - machines.add(::DRIVE_VIEWER) + machines.addAll(DRIVE_VIEWER.asSupplierArray().iterator()) machines.add(::DRIVE_RACK) machines.addAll(ITEM_MONITOR.asSupplierArray().iterator()) machines.add(::STORAGE_CABLE) - machines.add(::STORAGE_POWER_SUPPLIER) + machines.addAll(STORAGE_POWER_SUPPLIER.asSupplierArray().iterator()) MACHINES = SupplierList(machines) } @@ -438,8 +445,8 @@ object MItems { val ENGINE: Item by registry.register(MNames.ENGINE) { BlockItem(MBlocks.ENGINE, DEFAULT_PROPERTIES) } val HOLO_SIGN: Item by registry.register(MNames.HOLO_SIGN) { BlockItem(MBlocks.HOLO_SIGN, DEFAULT_PROPERTIES) } - val TRITANIUM_DOOR = registry.coloredWithBase(MNames.TRITANIUM_DOOR) { color, _ -> DoubleHighBlockItem(MBlocks.TRITANIUM_DOOR[color]!!, DEFAULT_PROPERTIES) } - val TRITANIUM_TRAPDOOR = registry.coloredWithBase(MNames.TRITANIUM_TRAPDOOR) { color, _ -> BlockItem(MBlocks.TRITANIUM_TRAPDOOR[color]!!, DEFAULT_PROPERTIES) } + val TRITANIUM_DOOR = register(MNames.TRITANIUM_DOOR, MBlocks.TRITANIUM_DOOR) + val TRITANIUM_TRAPDOOR = register(MNames.TRITANIUM_TRAPDOOR, MBlocks.TRITANIUM_TRAPDOOR) // components val MATTER_IO_PORT: Item by registry.register(MNames.MATTER_IO_PORT) { Item(DEFAULT_PROPERTIES) } @@ -529,7 +536,7 @@ object MItems { ::REINFORCED_TRITANIUM_PLATE, ) - val CARGO_CRATE_MINECARTS = registry.coloredWithBase(MNames.MINECART_CARGO_CRATE) { color, _ -> MinecartCargoCrateItem(color) } + val CARGO_CRATE_MINECARTS = registry.coloredWithBase(MNames.MINECART_CARGO_CRATE, ::MinecartCargoCrateItem) val EXOPACK_PROBE: Item by registry.register(MNames.EXOPACK_PROBE, ::ExopackProbeItem) diff --git a/src/main/resources/assets/overdrive_that_matters/blockstates/matter_panel.json b/src/main/resources/assets/overdrive_that_matters/blockstates/matter_panel.json deleted file mode 100644 index 781d76141..000000000 --- a/src/main/resources/assets/overdrive_that_matters/blockstates/matter_panel.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "variants": { - "facing=south": { - "model": "overdrive_that_matters:block/matter_panel" - }, - "facing=up": { - "model": "overdrive_that_matters:block/matter_panel", - "x": 90 - }, - "facing=down": { - "model": "overdrive_that_matters:block/matter_panel", - "x": 270 - }, - "facing=west": { - "model": "overdrive_that_matters:block/matter_panel", - "y": 90 - }, - "facing=north": { - "model": "overdrive_that_matters:block/matter_panel", - "y": 180 - }, - "facing=east": { - "model": "overdrive_that_matters:block/matter_panel", - "y": 270 - } - } -} diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/black.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/black.png new file mode 100644 index 000000000..ad3614c24 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/black.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/blue.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/blue.png new file mode 100644 index 000000000..efcd42bf7 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/blue.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/brown.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/brown.png new file mode 100644 index 000000000..c068ece71 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/brown.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/cyan.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/cyan.png new file mode 100644 index 000000000..266c7332e Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/cyan.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/gray.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/gray.png new file mode 100644 index 000000000..673860086 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/gray.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/green.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/green.png new file mode 100644 index 000000000..0a6710ef2 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/green.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/light_blue.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/light_blue.png new file mode 100644 index 000000000..452a44a35 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/light_blue.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/light_gray.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/light_gray.png new file mode 100644 index 000000000..28fc028fc Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/light_gray.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/lime.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/lime.png new file mode 100644 index 000000000..5e7e01e8a Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/lime.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/magenta.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/magenta.png new file mode 100644 index 000000000..de244e9a8 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/magenta.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/orange.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/orange.png new file mode 100644 index 000000000..87155d47e Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/orange.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/pink.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/pink.png new file mode 100644 index 000000000..39fbde8d3 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/pink.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/purple.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/purple.png new file mode 100644 index 000000000..ada4c8ef6 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/purple.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/red.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/red.png new file mode 100644 index 000000000..ae7103072 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/red.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/white.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/white.png new file mode 100644 index 000000000..2d787766f Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/white.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/yellow.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/yellow.png new file mode 100644 index 000000000..8ef177804 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger/yellow.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger_mask.png b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger_mask.png new file mode 100644 index 000000000..de67ffc42 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/android_charger_mask.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/black.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/black.png new file mode 100644 index 000000000..4809d12d9 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/black.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/blue.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/blue.png new file mode 100644 index 000000000..9f37ea37c Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/blue.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/brown.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/brown.png new file mode 100644 index 000000000..8c2e5bd76 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/brown.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/cyan.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/cyan.png new file mode 100644 index 000000000..b427647f0 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/cyan.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/gray.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/gray.png new file mode 100644 index 000000000..e400ab1ed Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/gray.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/green.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/green.png new file mode 100644 index 000000000..5fae921aa Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/green.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/light_blue.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/light_blue.png new file mode 100644 index 000000000..5a00915f1 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/light_blue.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/light_gray.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/light_gray.png new file mode 100644 index 000000000..39b2653da Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/light_gray.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/lime.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/lime.png new file mode 100644 index 000000000..521fbba8a Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/lime.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/magenta.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/magenta.png new file mode 100644 index 000000000..8cdbb6e79 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/magenta.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/orange.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/orange.png new file mode 100644 index 000000000..019b10c93 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/orange.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/pink.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/pink.png new file mode 100644 index 000000000..4b21f662c Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/pink.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/purple.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/purple.png new file mode 100644 index 000000000..d46ac1bb4 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/purple.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/red.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/red.png new file mode 100644 index 000000000..df58e67b0 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/red.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/white.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/white.png new file mode 100644 index 000000000..55e0f3c58 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/white.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/yellow.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/yellow.png new file mode 100644 index 000000000..15fe6c0bb Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer/yellow.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer_mask.png b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer_mask.png new file mode 100644 index 000000000..306715ad1 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/drive_viewer_mask.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/black.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/black.png index a43dd7d92..8ed5fa865 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/black.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/black.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/blue.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/blue.png index c0046cb50..edddb6a75 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/blue.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/blue.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/brown.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/brown.png index a88e41fa3..b6ff96d34 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/brown.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/brown.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/cyan.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/cyan.png index fe247efcc..5fdcc4afc 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/cyan.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/cyan.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/gray.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/gray.png index 4c89b2e33..ac62beaea 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/gray.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/gray.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/green.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/green.png index 9b92965b5..8c9dddc4b 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/green.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/green.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/light_blue.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/light_blue.png index 5d0eddf84..a577ec153 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/light_blue.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/light_blue.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/light_gray.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/light_gray.png index d9f07c0bc..3113ab93e 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/light_gray.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/light_gray.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/lime.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/lime.png index 0ddc8f23b..837d4aa9a 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/lime.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/lime.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/magenta.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/magenta.png index 921bc1938..51e4abe72 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/magenta.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/magenta.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/orange.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/orange.png index 40eb3fd83..59640f7a1 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/orange.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/orange.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/pink.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/pink.png index 23da7f9ff..dab0e2083 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/pink.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/pink.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/purple.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/purple.png index 48b69e966..c2e94fc65 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/purple.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/purple.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/red.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/red.png index 2b2972bd6..e2121aaaf 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/red.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/red.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/white.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/white.png index 5c18d9805..bbed3c6c7 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/white.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/white.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/yellow.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/yellow.png index 4c42c8fee..2f6557adc 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/yellow.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor/yellow.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor_mask.png b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor_mask.png index 0bf1c567f..f599b3a28 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor_mask.png and b/src/main/resources/assets/overdrive_that_matters/textures/block/item_monitor_mask.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/black.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/black.png new file mode 100644 index 000000000..1862c9e8f Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/black.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/blue.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/blue.png new file mode 100644 index 000000000..71ce394fa Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/blue.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/brown.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/brown.png new file mode 100644 index 000000000..2ba0602cc Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/brown.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/cyan.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/cyan.png new file mode 100644 index 000000000..8d9460d2b Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/cyan.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/gray.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/gray.png new file mode 100644 index 000000000..ccae696b7 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/gray.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/green.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/green.png new file mode 100644 index 000000000..294737609 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/green.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/light_blue.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/light_blue.png new file mode 100644 index 000000000..9d9fd8497 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/light_blue.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/light_gray.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/light_gray.png new file mode 100644 index 000000000..57f69fc22 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/light_gray.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/lime.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/lime.png new file mode 100644 index 000000000..b02024d37 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/lime.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/magenta.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/magenta.png new file mode 100644 index 000000000..db330135c Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/magenta.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/orange.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/orange.png new file mode 100644 index 000000000..a880c1989 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/orange.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/pink.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/pink.png new file mode 100644 index 000000000..876bf206b Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/pink.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/purple.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/purple.png new file mode 100644 index 000000000..f7be420f2 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/purple.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/red.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/red.png new file mode 100644 index 000000000..7cef740f6 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/red.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/white.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/white.png new file mode 100644 index 000000000..d73ecd511 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/white.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/yellow.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/yellow.png new file mode 100644 index 000000000..0d8cabfd5 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel/yellow.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel_mask.png b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel_mask.png new file mode 100644 index 000000000..476fde21a Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/matter_panel_mask.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/black.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/black.png new file mode 100644 index 000000000..535c74237 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/black.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/blue.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/blue.png new file mode 100644 index 000000000..82a8fd287 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/blue.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/brown.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/brown.png new file mode 100644 index 000000000..bacf95324 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/brown.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/cyan.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/cyan.png new file mode 100644 index 000000000..1c2078f64 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/cyan.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/gray.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/gray.png new file mode 100644 index 000000000..d0a0f6b5e Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/gray.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/green.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/green.png new file mode 100644 index 000000000..5e684acc3 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/green.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/light_blue.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/light_blue.png new file mode 100644 index 000000000..2e65ce25e Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/light_blue.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/light_gray.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/light_gray.png new file mode 100644 index 000000000..f1b3ea6f9 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/light_gray.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/lime.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/lime.png new file mode 100644 index 000000000..20c5281a2 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/lime.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/magenta.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/magenta.png new file mode 100644 index 000000000..893bc4907 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/magenta.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/orange.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/orange.png new file mode 100644 index 000000000..99f66b2b9 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/orange.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/pink.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/pink.png new file mode 100644 index 000000000..69bf27583 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/pink.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/purple.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/purple.png new file mode 100644 index 000000000..db3cbab89 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/purple.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/red.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/red.png new file mode 100644 index 000000000..dfecc550d Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/red.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/white.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/white.png new file mode 100644 index 000000000..bf00c8adc Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/white.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/yellow.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/yellow.png new file mode 100644 index 000000000..1a1588e09 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier/yellow.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier_mask.png b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier_mask.png new file mode 100644 index 000000000..717854576 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/block/storage_power_supplier_mask.png differ