Advertisement
Guest User

Untitled

a guest
Aug 14th, 2019
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.75 KB | None | 0 0
  1. package de.blablubbabc.test2;
  2.  
  3. import org.bukkit.Material;
  4. import org.bukkit.block.Block;
  5. import org.bukkit.block.Chest;
  6. import org.bukkit.craftbukkit.v1_14_R1.inventory.CraftItemStack;
  7. import org.bukkit.entity.Player;
  8. import org.bukkit.event.EventHandler;
  9. import org.bukkit.event.Listener;
  10. import org.bukkit.event.player.PlayerInteractEvent;
  11. import org.bukkit.inventory.EquipmentSlot;
  12. import org.bukkit.inventory.Inventory;
  13. import org.bukkit.inventory.ItemStack;
  14.  
  15. public class CompareCraftItems implements Listener {
  16.  
  17. @EventHandler
  18. public void onPlayerInteract(PlayerInteractEvent event) {
  19. if (event.getHand() != EquipmentSlot.HAND) return;
  20. Block clickedBlock = event.getClickedBlock();
  21. if (clickedBlock == null) return;
  22. if (clickedBlock.getType() != Material.CHEST) return;
  23. Chest chest = (Chest) clickedBlock.getState();
  24. Inventory chestInventory = chest.getInventory();
  25. ItemStack slot0 = chestInventory.getItem(0);
  26. ItemStack slot1 = chestInventory.getItem(1);
  27. Player player = event.getPlayer();
  28. if (slot0 == null || slot1 == null) {
  29. player.sendMessage("No items to compare.");
  30. } else {
  31. player.sendMessage("Slot0 tag: " + CraftItemStack.asNMSCopy(slot0).getTag());
  32. player.sendMessage("Slot1 tag: " + CraftItemStack.asNMSCopy(slot1).getTag());
  33.  
  34. player.sendMessage("CraftItemStacks similar?: " + (slot0.isSimilar(slot1)));
  35.  
  36. // copy meta data from CraftItemStack to new bukkit ItemStacks:
  37. ItemStack bukkitSlot0 = new ItemStack(slot0.getType());
  38. bukkitSlot0.setItemMeta(slot0.getItemMeta());
  39. ItemStack bukkitSlot1 = new ItemStack(slot1.getType());
  40. bukkitSlot1.setItemMeta(slot1.getItemMeta());
  41.  
  42. player.sendMessage("Bukkit ItemStacks similar?: " + (bukkitSlot0.isSimilar(bukkitSlot1)));
  43. }
  44. }
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement