
net.chestmc.block.ContainerBlockController.kt Maven / Gradle / Ivy
package net.chestmc.block
import net.minecraft.server.NBTTagCompound
import org.bukkit.Bukkit
import org.bukkit.block.Block
import org.bukkit.block.BlockFace
import org.bukkit.entity.Player
import org.bukkit.inventory.Inventory
/**
* A block controller that contains a container inside it, this is, a inventory.
*/
abstract class ContainerBlockController(block: Block) : BlockControllerBase(block) {
lateinit var inventory: Inventory
override fun startup() {
inventory = Bukkit.createInventory(null, 27, "Container")
}
override fun onInteract(player: Player, face: BlockFace): Boolean {
player.openInventory(inventory)
return true
}
override fun load(tag: NBTTagCompound) {
inventory = tag.getInventory("Container")
}
override fun save(tag: NBTTagCompound) {
tag.setInventory("Container", inventory)
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy