Esempio n. 1
0
 private void newGlobalItem(GroundItem item)
 {
     if (item == null)
     {
         return;
     }
     item = itemExists(item);
     if (item != null)
     {
         item.setGlobal(true);
         foreach (Player p in Server.getPlayerList())
         {
             if (p == null || (item.getDefinition().isPlayerBound() && !item.getOwner().Equals(p)))
             {
                 continue;
             }
             if (p.getLocation().withinDistance(item.getLocation(), 60))
             {
                 if (item.getOwner() != null)
                 {
                     p.getPackets().createGroundItem2(item);
                 }
                 else
                 {
                     p.getPackets().createGroundItem(item);
                 }
             }
         }
         if (!item.getDefinition().isPlayerBound())
         {
             item.setOwner(null);
         }
         GroundItem i = item;
         if (!item.isRespawn())
         {
             Event removeGlobalItemEvent = new Event(60000);
             removeGlobalItemEvent.setAction(() =>
             {
                 clearGlobalItem(i);
                 removeGlobalItemEvent.stop();
             });
             Server.registerEvent(removeGlobalItemEvent);
         }
     }
 }
Esempio n. 2
0
 public void newWorldItem(GroundItem item)
 {
     lock (items)
     {
         items.Add(item);
     }
     item.setOwner(null);
     newGlobalItem(item);
 }