Exemplo n.º 1
0
 public void pickupItem(Player p, int id, Location location)
 {
     GroundItem item = itemExists(location, id);
     if (item != null && p.getSprites().getPrimarySprite() == -1 && p.getSprites().getSecondarySprite() == -1)
     {
         if (item.getDefinition().isPlayerBound() && !item.getOwner().Equals(p))
         {
             return;
         }
         if (!p.getInventory().addItem(item.getItemId(), item.getItemAmount()))
         {
             return;
         }
         clearGlobalItem(item);
         if (item.isRespawn())
         {
             GroundItem i = item;
             Event itemRespawnEvent = new Event(60000);
             itemRespawnEvent.setAction(() =>
             {
                 GroundItem respawn = new GroundItem(i.getItemId(), i.getItemAmount(), i.getLocation(), null);
                 respawn.setRespawn(true);
                 respawn.setGlobal(true);
                 newGlobalItem(respawn);
                 itemRespawnEvent.stop();
             });
         }
     }
 }