package net.shadowfacts.extrahoppers.init import net.minecraft.block.Block import net.minecraft.block.entity.BlockEntity import net.minecraft.block.entity.BlockEntityType import net.minecraft.util.Identifier import net.minecraft.util.registry.Registry import net.shadowfacts.extrahoppers.block.wood.WoodHopperBlock import net.shadowfacts.extrahoppers.block.wood.WoodHopperBlockEntity object EHBlockEntities { val WOOD_HOPPER = create(::WoodHopperBlockEntity, EHBlocks.WOOD_HOPPER) fun init() { register(WoodHopperBlock.ID, WOOD_HOPPER) } private fun create(builder: () -> T, block: Block): BlockEntityType { return BlockEntityType.Builder.create(builder, arrayOf(block)).build(null) } fun register(id: Identifier, type: BlockEntityType<*>) { Registry.register(Registry.BLOCK_ENTITY_TYPE, id, type) } }