
org.bukkit.inventory.meta.BlockStateMeta Maven / Gradle / Ivy
package org.bukkit.inventory.meta;
import net.minecraft.server.NBTTagCompound;
import org.bukkit.block.BlockState;
public interface BlockStateMeta extends ItemMeta {
/**
* Returns the persistent tag of this block state meta.
*/
NBTTagCompound getTag();
/**
* Sets the new persistent tag of this block state meta.
*/
void setTag(NBTTagCompound tag);
/**
* Returns if this block state meta has any tag.
*/
boolean hasTag();
/**
* Returns whether the item has a block state currently
* attached to it.
*
* @return whether a block state is already attached
*/
boolean hasBlockState();
/**
* Returns the currently attached block state for this
* item or creates a new one if one doesn't exist.
*
* The state is a copy, it must be set back (or to another
* item) with {@link #setBlockState(BlockState)}
*
* @return the attached state or a new state
*/
BlockState getBlockState();
/**
* Attaches a copy of the passed block state to the item.
*
* @param blockState the block state to attach to the block.
* @throws IllegalArgumentException if the blockState is null
* or invalid for this item.
*/
void setBlockState(BlockState blockState);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy