Exemplo n.º 1
0
 private static IEnumerable <IVendorSearchItem> GetContainedItems(VendorItem vi, Container cont)
 {
     foreach (Item item in cont.Items)
     {
         if (item is Container)
         {
             foreach (var contained in GetContainedItems(vi, (Container)item))
             {
                 yield return(contained);
             }
         }
         else
         {
             yield return(VendorSearchItem.CreateForContainedItem(vi, item));
         }
     }
 }
Exemplo n.º 2
0
        private IEnumerable <IVendorSearchItem> FindWorldVendorItems()
        {
            var allVendors     = World.Mobiles.OfType <PlayerVendor>();
            var allVendorItems = allVendors.SelectMany(v => v.GetAllVendorItems().Where(vi => vi.IsForSale));

            foreach (VendorItem vi in allVendorItems)
            {
                if (vi.Item is Container)
                {
                    foreach (var contained in GetContainedItems(vi, (Container)vi.Item))
                    {
                        yield return(contained);
                    }
                }
                else
                {
                    yield return(VendorSearchItem.CreateForItem(vi));
                }
            }
        }