Package org.bukkit.entity

Examples of org.bukkit.entity.Item


      if (!LogicUtil.nullOrEmpty(stack)) {
        // Spawn new item for this item stack
        Random random = WorldUtil.getRandom(this.location.getWorld());
        Location spawnLoc = this.location.clone().add(-0.45, -0.45, -0.45);
        spawnLoc = spawnLoc.add(0.9f * random.nextFloat(), 0.9f * random.nextFloat(), 0.9f * random.nextFloat());
        Item item = location.getWorld().dropItem(spawnLoc, stack);
        item.setVelocity(new Vector(0, 0, 0));
        this.items.add(item);
      }
    } else {
      // Set item stack, if null, kill the item
      Item item = this.items.get(index);
      EntityUtil.setDead(item, LogicUtil.nullOrEmpty(stack));
      if (!item.isDead()) {
        item.setItemStack(stack);
        this.items.set(index, ItemUtil.respawnItem(item));
      }
    }
  }
View Full Code Here


  @Override
  public ItemStack getItem(int index) {
    if (index == this.items.size()) {
      return null;
    } else {
      Item item = this.items.get(index);
      if (item.isDead()) {
        return null;
      } else {
        return item.getItemStack();
      }
    }
  }
View Full Code Here

                item.debug()
                + duration.debug()
                + location.debug());

        // Drop the item
        final Item dropped = location.getWorld()
                .dropItem(location.getBlock().getLocation().clone().add(0.5,1.5,0.5), item.getItemStack());
        dropped.setVelocity(dropped.getVelocity().multiply(0));
        dropped.setPickupDelay(duration.getTicksAsInt() + 1000);
        dropped.setTicksLived(duration.getTicksAsInt() + 1000);

        // Remember the item entity
        scriptEntry.addObject("dropped", new dEntity(dropped));

        // Remove it later
        Bukkit.getScheduler().scheduleSyncDelayedTask(DenizenAPI.getCurrentInstance(),
                new Runnable() {
                    @Override
                    public void run() {
                        if (dropped.isValid() && !dropped.isDead()) {
                            dropped.remove();
                        }
                    }
                }, duration.getTicks());
    }
View Full Code Here

    protected void onPlayerDropItem(final PlayerDropItemEvent event) {
       
        final Player player = event.getPlayer();
       
        // Illegal enchantments hotfix check.
        final Item item = event.getItemDrop();
        if (item != null){
            // No cancel here.
            Items.checkIllegalEnchantments(player, item.getItemStack());
        }
       
        // If the player died, all their items are dropped so ignore them.
        if (event.getPlayer().isDead())
            return;
View Full Code Here

          event.setCancelled(true);
        } else if (zone.getWarzoneConfig().getBoolean(WarzoneConfig.NODROPS)) {
          War.war.badMsg(player, "drop.item.disabled");
          event.setCancelled(true);
        } else {
          Item item = event.getItemDrop();
          if (item != null) {
            ItemStack itemStack = item.getItemStack();
            if (itemStack != null && team.getKind().isTeamItem(itemStack)) {
              // Can't drop your team's kind block
              War.war.badMsg(player, "drop.team", team.getName());
              event.setCancelled(true);
              return;
            }

            if (zone.isNearWall(player.getLocation()) && itemStack != null) {
              War.war.badMsg(player, "drop.item.border");
              event.setCancelled(true);
              return;
            }
           
            if (zone.getLoadoutSelections().keySet().contains(player.getName())
                && zone.getLoadoutSelections().get(player.getName()).isStillInSpawn()) {
              // still at spawn
              War.war.badMsg(player, "drop.item.spawn");
              event.setCancelled(true);
              return;
            }
          }
        }
      }

      if (War.war.isWandBearer(player)) {
        Item item = event.getItemDrop();
        if (item.getItemStack().getType() == Material.WOOD_SWORD) {
          String zoneName = War.war.getWandBearerZone(player);
          War.war.removeWandBearer(player);
          War.war.msg(player, "drop.wand", zoneName);
        }
      }
View Full Code Here

        if (zone.isFlagThief(player.getName())) {
          // a flag thief can't pick up anything
          event.setCancelled(true);
        } else {
          Item item = event.getItem();
          if (item != null) {
            ItemStack itemStack = item.getItemStack();
            if (itemStack != null && team.getKind().isTeamItem(itemStack) &&
                player.getInventory().containsAtLeast(team.getKind().getBlockHead(), MINIMUM_TEAM_BLOCKS)) {
              // Can't pick up a second precious block
              event.setCancelled(true);
            }
View Full Code Here

        if (SkillUtils.activationSuccessful(SecondaryAbility.DISARM, getPlayer(), getSkillLevel(), activationChance) && !hasIronGrip(defender)) {
            if (EventUtils.callDisarmEvent(defender).isCancelled()) {
                return;
            }

            Item item = Misc.dropItem(defender.getLocation(), defender.getItemInHand());

            if (item != null && AdvancedConfig.getInstance().getDisarmProtected()) {
                item.setMetadata(mcMMO.disarmedItemKey, UserManager.getPlayer(defender).getPlayerMetadata());
            }

            defender.setItemInHand(new ItemStack(Material.AIR));
            defender.sendMessage(LocaleLoader.getString("Skills.Disarmed"));
        }
View Full Code Here

     *
     * @param event The event to monitor
     */
    @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
    public void onPlayerDropItem(PlayerDropItemEvent event) {
        Item drop = event.getItemDrop();
        ItemStack dropStack = drop.getItemStack();

        if (ItemUtils.isSharable(dropStack)) {
            drop.setMetadata(mcMMO.droppedItemKey, mcMMO.metadataValue);
        }

        SkillUtils.removeAbilityBuff(dropStack);
    }
View Full Code Here

                }
                return;

            case CAUGHT_FISH:
                //TODO Update to new API once available! Waiting for case CAUGHT_TREASURE:
                Item fishingCatch = (Item) event.getCaught();

                if (Config.getInstance().getFishingOverrideTreasures() && fishingCatch.getItemStack().getType() != Material.RAW_FISH) {
                    fishingCatch.setItemStack(new ItemStack(Material.RAW_FISH, 1));
                }

                if (Permissions.vanillaXpBoost(player, SkillType.FISHING)) {
                    event.setExpToDrop(fishingManager.handleVanillaXpBoost(event.getExpToDrop()));
                }
View Full Code Here

            return;
        }

        McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);

        Item drop = event.getItem();
        ItemStack dropStack = drop.getItemStack();

        if (drop.hasMetadata(mcMMO.disarmedItemKey)) {
            if (!player.getName().equals(drop.getMetadata(mcMMO.disarmedItemKey).get(0).asString())) {
                event.setCancelled(true);
            }

            return;
        }

        if (!drop.hasMetadata(mcMMO.droppedItemKey) && mcMMOPlayer.inParty() && ItemUtils.isSharable(dropStack)) {
            event.setCancelled(ShareHandler.handleItemShare(drop, mcMMOPlayer));

            if (event.isCancelled()) {
                player.playSound(player.getLocation(), Sound.ITEM_PICKUP, Misc.POP_VOLUME, Misc.getPopPitch());
                return;
View Full Code Here

TOP

Related Classes of org.bukkit.entity.Item

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.