All Downloads are FREE. Search and download functionalities are using the official Maven repository.

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