Skip to content

Instantly share code, notes, and snippets.

@cFerg
Last active February 26, 2016 08:22
Show Gist options
  • Select an option

  • Save cFerg/850b90edb77e3f17d5ff to your computer and use it in GitHub Desktop.

Select an option

Save cFerg/850b90edb77e3f17d5ff to your computer and use it in GitHub Desktop.

Material | Quantity | Byte/Short

ItemStack inkSack = new ItemStack(Material.INK_SACK);

ItemStack greenDye = new ItemStack(Material.INK_SACK, 1, (short) 10);

ItemStack redWool = new ItemStack(Material.WOOL, 1, (byte) 14);

To add Item Meta (Display name and Lore)

ItemMeta greenDye_Meta = greenDye.getItemMeta();
ArrayList<String> greenDye_Lore = new ArrayList<>();

greenDye_Lore.clear();
greenDye_Lore.add(null);
greenDye_Lore.add(ChatColor.WHITE + "Right-Click to Toggle");

greenDye_Meta.setLore(greenDye_Lore);

greenDye_Meta.setDisplayName(ChatColor.WHITE + "Player Visibility: " + ChatColor.GREEN + "Enabled");

greenDye.setItemMeta(greenDye_Meta);

If you are setting a player head:

For the ItemStack:

ItemStack playerHead = new ItemStack(Material.SKULL_ITEM, 1, (byte) 3);

For the Meta - use SkullMeta:

SkullMeta playerHead_Meta = (SkullMeta) playerHead.getItemMeta();

The lore, and meta will be accessed the exact same, but you can now also set the owner:

playerHead_Meta.setOwner(player.getName());

Usage of itemStacks:

public class ItemStackTest implements Listener{

	private ItemStack NetherStar = new ItemStack(Material.NETHER_STAR);

	@EventHandler
	public void onPlayerInteract(PlayerInteractEvent e){
		Action a = e.getAction();
		ItemStack is = e.getItem();
	
		if (a.equals(Action.PHYSICAL) || is == null || is.getType().equals(Material.AIR)){
			return;
		}
	
		Player p = e.getPlayer();
		
		if (is.equals(NetherStar)){
			p.sendMessage("You clicked a star.");
		}
	}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment