Advertisement
Guest User

Scroll

a guest
Feb 22nd, 2016
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.53 KB | None | 0 0
  1. public class Scroll {
  2.    
  3.     public static final Material SCROLL_MATERIAL = Material.EMPTY_MAP;
  4.    
  5.     public static ItemStack createScroll(HorseEnchantment enchantment, int level) {
  6.         ItemStack stack = new ItemStack(Scroll.SCROLL_MATERIAL, 1);
  7.        
  8.         ScrollData data = new ScrollData(enchantment, level);
  9.         ItemMeta meta = stack.getItemMeta();
  10.         meta.setDisplayName(data.getDisplayName());
  11.         meta.setLore(data.getLore());
  12.         stack.setItemMeta(meta);
  13.        
  14.         stack = NBTTagCompoundUtil.setItemStackNBTTag(stack, "he_name", NBTTagType.STRING, enchantment.getName());
  15.         stack = NBTTagCompoundUtil.setItemStackNBTTag(stack, "he_level", NBTTagType.INT, level);
  16.         // stack = NBTTagCompoundUtil.setEnchantmentGlow(stack);
  17.        
  18.         return stack;
  19.     }
  20.    
  21.     public static boolean isScroll(ItemStack stack) {
  22.         return Scroll.getScrollData(stack) != null;
  23.     }
  24.    
  25.     public static ScrollData getScrollData(ItemStack stack) {
  26.         ScrollData data = null;
  27.         if (stack != null && stack.getType() == Scroll.SCROLL_MATERIAL) {
  28.             if (NBTTagCompoundUtil.itemStackHasNBTTags(stack, "he_name", "he_level")) {
  29.                 String name = (String) NBTTagCompoundUtil.getItemStackNBTTagValue(stack, "he_name", NBTTagType.STRING);
  30.                 int level = (int) NBTTagCompoundUtil.getItemStackNBTTagValue(stack, "he_level", NBTTagType.INT);
  31.                
  32.                 boolean flag = false;
  33.                 for (HorseEnchantment ench : HorseEnchantment.values()) {
  34.                     if (!flag) {
  35.                         if (ench.getName().equalsIgnoreCase(name)) {
  36.                             data = new ScrollData(ench, level);
  37.                         }
  38.                     }
  39.                 }
  40.             }
  41.         }
  42.        
  43.         return data;
  44.     }
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement