package net.shadowfacts.phycon.init import net.minecraft.block.Block import net.minecraft.util.DyeColor import net.minecraft.util.Identifier import net.minecraft.util.registry.Registry import net.shadowfacts.phycon.PhysicalConnectivity import net.shadowfacts.phycon.block.cable.CableBlock import net.shadowfacts.phycon.block.extractor.ExtractorBlock import net.shadowfacts.phycon.block.inserter.InserterBlock import net.shadowfacts.phycon.block.miner.MinerBlock import net.shadowfacts.phycon.block.netinterface.InterfaceBlock import net.shadowfacts.phycon.block.netswitch.SwitchBlock import net.shadowfacts.phycon.block.redstone_controller.RedstoneControllerBlock import net.shadowfacts.phycon.block.redstone_emitter.RedstoneEmitterBlock import net.shadowfacts.phycon.block.terminal.TerminalBlock /** * @author shadowfacts */ object PhyBlocks { val CABLES = DyeColor.values().map { it to CableBlock(it) }.toMap() val INTERFACE = InterfaceBlock() val TERMINAL = TerminalBlock() val SWITCH = SwitchBlock() val EXTRACTOR = ExtractorBlock() val INSERTER = InserterBlock() val MINER = MinerBlock() val REDSTONE_CONTROLLER = RedstoneControllerBlock() val REDSTONE_EMITTER = RedstoneEmitterBlock() fun init() { for ((color, block) in CABLES) { register(Identifier(PhysicalConnectivity.MODID, "cable_${color.getName()}"), block) } register(InterfaceBlock.ID, INTERFACE) register(TerminalBlock.ID, TERMINAL) register(SwitchBlock.ID, SWITCH) register(ExtractorBlock.ID, EXTRACTOR) register(InserterBlock.ID, INSERTER) register(MinerBlock.ID, MINER) register(RedstoneControllerBlock.ID, REDSTONE_CONTROLLER) register(RedstoneEmitterBlock.ID, REDSTONE_EMITTER) } private fun register(id: Identifier, block: Block) { Registry.register(Registry.BLOCK, id, block) } }