Package org.bukkit.inventory

Examples of org.bukkit.inventory.ItemStack


   * @param lore
   *            Lore to give to the ItemStack
   * @return lored ItemStack
   */
  public ItemStack setLore(final ItemStack itemStack, final List<String> lore) {
    ItemStack ret = itemStack;
    ItemMeta itemMeta;
    if (ret.hasItemMeta()) {
      itemMeta = ret.getItemMeta();
    } else {
      itemMeta = Bukkit.getItemFactory().getItemMeta(ret.getType());
    }
    itemMeta.setLore(lore);
    ret.setItemMeta(itemMeta);
    return ret;
  }
View Full Code Here


   * @param lore
   *            Lore to give to the ItemStack
   * @return lored ItemStack
   */
  public ItemStack setLore(final ItemStack itemStack, final String... lore) {
    ItemStack ret = itemStack;
    ItemMeta itemMeta;
    if (ret.hasItemMeta()) {
      itemMeta = ret.getItemMeta();
    } else {
      itemMeta = Bukkit.getItemFactory().getItemMeta(ret.getType());
    }
    itemMeta.setLore(Arrays.asList(lore));
    ret.setItemMeta(itemMeta);
    return ret;
  }
View Full Code Here

   * @param name
   *            Name to give to the ItemStack
   * @return named ItemStack
   */
  public ItemStack setName(final ItemStack itemStack, final String name) {
    ItemStack ret = itemStack;
    ItemMeta itemMeta;
    if (ret.hasItemMeta()) {
      itemMeta = ret.getItemMeta();
    } else {
      itemMeta = Bukkit.getItemFactory().getItemMeta(ret.getType());
    }
    itemMeta.setDisplayName(name);
    ret.setItemMeta(itemMeta);
    return ret;
  }
View Full Code Here

    if ((entity instanceof Monster)
        && (plugin.getConfig().getInt("Percentages.ChancePerSpawn", 3) >= ese
            .getChance())) {
      List<ItemStack> items = new ArrayList<ItemStack>();
      for (int i = 0; i < (plugin.getSingleRandom().nextInt(5) + 1); i++) {
        ItemStack ci = plugin.getDropAPI().getItem();
        while (ci == null) {
          ci = plugin.getDropAPI().getItem();
        }
        if (plugin.getConfig().getBoolean("Custom.Only", false)
            && plugin.getConfig()
View Full Code Here

        return;
      Chest chestB = ((Chest) block.getState());
      Inventory chest = chestB.getBlockInventory();
      for (int i = 0; i < plugin.getSingleRandom().nextInt(
          chest.getSize()); i++) {
        ItemStack cis = getItem();
        while (cis == null) {
          cis = getItem();
        }
        chest.setItem(i, cis);
      }
View Full Code Here

      if (!(block.getState() instanceof Chest))
        return;
      Chest chestB = ((Chest) block.getState());
      Inventory chest = chestB.getBlockInventory();
      for (int i = 0; i < size; i++) {
        ItemStack cis = getItem();
        while (cis == null) {
          cis = getItem();
        }
        chest.setItem(i, cis);
      }
View Full Code Here

  public ItemStack getIdItem(Material mat, final String name) {
    while (mat == null) {
      mat = dropPicker();
    }
    Material material = mat;
    ItemStack ci = null;
    Tier tier = getTier();
    while (tier == null) {
      tier = getTier();
    }
    if ((tier.getMaterials().size() > 0)
        && !tier.getMaterials().contains(material)) {
      material = tier.getMaterials().get(
          plugin.getSingleRandom()
              .nextInt(tier.getMaterials().size()));
    }
    int e = tier.getAmount();
    int l = tier.getLevels();
    short damage = 0;
    if (plugin.getConfig().getBoolean("DropFix.Damage", true)) {
      damage = damageItemStack(mat);
    }
    if (plugin.getConfig().getBoolean("Display.TierName", true)
        && !tier.getColor().equals(ChatColor.MAGIC)) {
      ci = new Drop(material, tier.getColor(),
          ChatColor.stripColor(name(mat)), damage, tier.getColor()
              + "Tier: " + tier.getDisplayName());
    } else if (plugin.getConfig().getBoolean("Display.TierName", true)
        && tier.getColor().equals(ChatColor.MAGIC)) {
      ci = new Drop(material, tier.getColor(),
          ChatColor.stripColor(name(mat)), damage, ChatColor.WHITE
              + "Tier: " + tier.getDisplayName());
    } else {
      ci = new Drop(material, tier.getColor(),
          ChatColor.stripColor(name(mat)), damage);
    }
    if (tier.getColor().equals(ChatColor.MAGIC))
      return ci;
    List<Enchantment> eStack = Arrays.asList(Enchantment.values());
    boolean safe = plugin.getConfig().getBoolean("SafeEnchant.Enabled",
        true);
    if (safe) {
      eStack = getEnchantStack(ci);
    }
    for (; e > 0; e--) {
      int lvl = plugin.getSingleRandom().nextInt(l + 1);
      int size = eStack.size();
      if (size < 1) {
        continue;
      }
      Enchantment ench = eStack.get(plugin.getSingleRandom()
          .nextInt(size));
      if (!ci.containsEnchantment(ench))
        if ((lvl != 0) && (ench != null)
            && !tier.getColor().equals(ChatColor.MAGIC))
          if (safe) {
            if ((lvl >= ench.getStartLevel())
                && (lvl <= ench.getMaxLevel())) {
              try {
                ci.addEnchantment(ench, lvl);
              } catch (Exception e1) {
                if (plugin.getDebug()) {
                  plugin.log.warning(e1.getMessage());
                }
                e++;
              }
            }
          } else {
            ci.addUnsafeEnchantment(ench, lvl);
          }
    }
    ItemMeta tool;
    if (ci.hasItemMeta())
      tool = ci.getItemMeta();
    else
      tool = Bukkit.getItemFactory().getItemMeta(ci.getType());
    tool.setLore(tier.getLore());
    List<String> list = new ArrayList<String>();
    if (plugin.getConfig().getBoolean("Lore.Enabled", true)
        && (plugin.getSingleRandom().nextInt(10000) <= plugin
            .getSettings().getLoreChance())) {
      for (int i = 0; i < plugin.getConfig().getInt("Lore.EnhanceAmount",
          2); i++)
        if (plugin.getItemAPI().isArmor(mat)) {
          list.add(plugin.defenselore.get(plugin.getSingleRandom()
              .nextInt(plugin.defenselore.size())));

        } else if (plugin.getItemAPI().isTool(mat)) {
          list.add(plugin.offenselore.get(plugin.getSingleRandom()
              .nextInt(plugin.offenselore.size())));
        }
    }
    tool.setLore(list);
    ci.setItemMeta(tool);
    return ci;
  }
View Full Code Here

   * @param oldTool
   *            ItemStack to turn into a DiabloDrops item
   * @return brand new tool
   */
  public ItemStack getItem(final ItemStack oldTool) {
    ItemStack tool = oldTool;
    short oldDam = tool.getDurability();
    tool = new ItemStack(tool.getType());
    tool.setDurability(oldDam);
    Tier tier = getTier();
    while ((tier == null) || tier.getColor().equals(ChatColor.MAGIC)) {
      tier = getTier();
    }
    int e = tier.getAmount();
    int l = tier.getLevels();
    List<String> list = new ArrayList<String>();
    if (plugin.getSettings().isColorBlindCompat()) {
      list.add("Material: " + getPrettyMaterialName(tool.getType()));
    }
    if (plugin.getConfig().getBoolean("Display.TierName", true)) {
      list.add(tier.getColor() + "Tier: " + tier.getDisplayName());
    }
    for (String s : tier.getLore())
      if (s != null) {
        list.add(s);
      }
    List<Enchantment> eStack = Arrays.asList(Enchantment.values());
    boolean safe = plugin.getConfig().getBoolean("SafeEnchant.Enabled",
        true);
    if (safe) {
      eStack = getEnchantStack(tool);
    }
    for (; e > 0; e--) {
      int lvl = plugin.getSingleRandom().nextInt(l + 1);
      int size = eStack.size();
      if (size < 1) {
        continue;
      }
      Enchantment ench = eStack.get(plugin.getSingleRandom()
          .nextInt(size));
      if (!tool.containsEnchantment(ench))
        if ((lvl != 0) && (ench != null)
            && !tier.getColor().equals(ChatColor.MAGIC))
          if (safe) {
            if ((lvl >= ench.getStartLevel())
                && (lvl <= ench.getMaxLevel())) {
              try {
                tool.addEnchantment(ench, lvl);
              } catch (Exception e1) {
                if (plugin.getDebug()) {
                  plugin.log.warning(e1.getMessage());
                }
                e++;
              }
            }
          } else {
            tool.addUnsafeEnchantment(ench, lvl);
          }
    }
    ItemMeta meta;
    if (tool.hasItemMeta())
      meta = tool.getItemMeta();
    else
      meta = Bukkit.getItemFactory().getItemMeta(tool.getType());
    meta.setDisplayName(tier.getColor() + name(tool.getType()));
    if (plugin.getConfig().getBoolean("Lore.Enabled", true)
        && (plugin.getSingleRandom().nextInt(100) <= plugin
            .getSettings().getLoreChance())
        && !tier.getColor().equals(ChatColor.MAGIC)) {
      for (int i = 0; i < plugin.getConfig().getInt("Lore.EnhanceAmount",
          2); i++)
        if (plugin.getItemAPI().isArmor(tool.getType())) {
          list.add(colorPicker()
              + plugin.defenselore.get(plugin.getSingleRandom()
                  .nextInt(plugin.defenselore.size())));

        } else if (plugin.getItemAPI().isTool(tool.getType())) {
          list.add(colorPicker()
              + plugin.offenselore.get(plugin.getSingleRandom()
                  .nextInt(plugin.offenselore.size())));
        }
    }
    meta.setLore(list);
    tool.setItemMeta(meta);
    return tool;
  }
View Full Code Here

  }

  @EventHandler
  public void burnGem(final FurnaceBurnEvent event) {
    Furnace furn = (Furnace) event.getBlock().getState();
    ItemStack tis = furn.getInventory().getSmelting();
    if (plugin.getItemAPI().isArmor(tis.getType())
        || plugin.getItemAPI().isTool(tis.getType())) {
      for (String name : plugin.getConfig().getStringList(
          "SocketItem.Items"))
        if (event.getFuel().getType()
            .equals(Material.matchMaterial(name))) {
          ItemStack fuel = event.getFuel();
          if (fuel == null)
            continue;
          ItemMeta meta;
          if (fuel.hasItemMeta())
            meta = fuel.getItemMeta();
          else
            meta = Bukkit.getItemFactory().getItemMeta(
                fuel.getType());
          if (meta.hasDisplayName()) {
            ItemMeta tismeta;
            if (tis.hasItemMeta())
              tismeta = tis.getItemMeta();
            else
              tismeta = plugin.getServer().getItemFactory()
                  .getItemMeta(tis.getType());
            if (tismeta.hasLore())
              for (String t : tismeta.getLore()) {
                if (t == null)
                  continue;
                if (!ChatColor.stripColor(t).equals("(Socket)"))
                  continue;
                if ((meta.getDisplayName().contains("Socket") || fuel
                    .getType().equals(Material.SKULL_ITEM))) {
                  ChatColor socketColor = findColor(t);
                  ChatColor fuelColor = findColor(meta
                      .getDisplayName());
                  if ((fuelColor == socketColor)
View Full Code Here

   */
  public ItemStack getItem(Material mat) {
    while (mat == null) {
      mat = dropPicker();
    }
    ItemStack ci = null;
    Tier tier = getTier();
    while (tier == null) {
      tier = getTier();
    }
    if ((tier.getMaterials().size() > 0)
        && !tier.getMaterials().contains(mat)) {
      mat = tier.getMaterials().get(
          plugin.getSingleRandom()
              .nextInt(tier.getMaterials().size()));
    }
    int e = tier.getAmount();
    int l = tier.getLevels();
    short damage = 0;
    if (plugin.getConfig().getBoolean("DropFix.Damage", true)) {
      damage = damageItemStack(mat);
    }
    List<String> startList = new ArrayList<String>();
    if (plugin.getSettings().isColorBlindCompat()) {
      startList.add("Material: " + getPrettyMaterialName(mat));
    }
    if (plugin.getConfig().getBoolean("Display.TierName", true)
        && !tier.getColor().equals(ChatColor.MAGIC)) {
      startList.add(tier.getColor() + "Tier: " + tier.getDisplayName());
    } else if (plugin.getConfig().getBoolean("Display.TierName", true)
        && tier.getColor().equals(ChatColor.MAGIC)) {
      startList.add(ChatColor.WHITE + "Tier: " + tier.getDisplayName());
    }
    ci = new Drop(mat, tier.getColor(), ChatColor.stripColor(name(mat)),
        damage, startList.toArray(new String[0]));
    if (tier.getColor().equals(ChatColor.MAGIC))
      return ci;
    ItemStack tool = new ItemStack(ci);
    List<Enchantment> eStack = Arrays.asList(Enchantment.values());
    List<String> list = new ArrayList<String>();
    for (String s : tier.getLore())
      if (s != null) {
        list.add(s);
      }

    boolean safe = plugin.getConfig().getBoolean("SafeEnchant.Enabled",
        true);
    if (safe) {
      eStack = getEnchantStack(tool);
    }
    for (; e > 0; e--) {
      int lvl = plugin.getSingleRandom().nextInt(l + 1);
      int size = eStack.size();
      if (size < 1) {
        continue;
      }
      Enchantment ench = eStack.get(plugin.getSingleRandom()
          .nextInt(size));
      if (!tool.containsEnchantment(ench))
        if ((lvl != 0) && (ench != null)
            && !tier.getColor().equals(ChatColor.MAGIC))
          if (safe) {
            if ((lvl >= ench.getStartLevel())
                && (lvl <= ench.getMaxLevel())) {
              try {
                tool.addEnchantment(ench, lvl);
              } catch (Exception e1) {
                if (plugin.getDebug()) {
                  plugin.log.warning(e1.getMessage());
                }
                e++;
              }
            }
          } else {
            tool.addUnsafeEnchantment(ench, lvl);
          }
    }
    ItemMeta meta;
    if (tool.hasItemMeta())
      meta = tool.getItemMeta();
    else
      meta = Bukkit.getItemFactory().getItemMeta(tool.getType());
    if (plugin.getConfig().getBoolean("Lore.Enabled", true)
        && (plugin.getSingleRandom().nextInt(10000) <= plugin
            .getSettings().getLoreChance())
        && !tier.getColor().equals(ChatColor.MAGIC)) {
      for (int i = 0; i < plugin.getConfig().getInt("Lore.EnhanceAmount",
          2); i++)
        if (plugin.getItemAPI().isArmor(mat)) {
          list.add(colorPicker()
              + plugin.defenselore.get(plugin.getSingleRandom()
                  .nextInt(plugin.defenselore.size())));
        } else if (plugin.getItemAPI().isTool(mat)) {
          list.add(colorPicker()
              + plugin.offenselore.get(plugin.getSingleRandom()
                  .nextInt(plugin.offenselore.size())));
        }
    }
    meta.setLore(list);
    tool.setItemMeta(meta);
    if (plugin.getItemAPI().isLeather(tool.getType())) {
      LeatherArmorMeta lam = (LeatherArmorMeta) tool.getItemMeta();
      lam.setColor(Color.fromRGB(plugin.getSingleRandom().nextInt(255),
          plugin.getSingleRandom().nextInt(255), plugin
              .getSingleRandom().nextInt(255)));
      tool.setItemMeta(lam);
    }
    return tool;
  }
View Full Code Here

TOP

Related Classes of org.bukkit.inventory.ItemStack

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.