Exemple #1
0
        public IDictionary <string, int> Update()
        {
            CubeCount = 0;
            Items.Clear();
            MassStorageCrate center = Crate?.mConnectedCenter;

            if (center == null)
            {
                return(Items);
            }
            foreach (MassStorageCrate crate in center.mConnectedCrates)
            {
                ItemBase pickeditem = null;
                CubeCount++;
                pickeditem = crate.mItem;
                if (pickeditem != null && Filter.Check(pickeditem))
                {
                    string itemname = ItemManager.GetItemName(pickeditem);

                    if (!Items.ContainsKey(itemname))
                    {
                        Items.Add(itemname, ItemManager.GetCurrentStackSize(pickeditem));
                    }
                    else
                    {
                        Items[itemname] = (int)Items[itemname] + ItemManager.GetCurrentStackSize(pickeditem);
                    }
                    pickeditem = null;
                }
            }
            return(Items);
        }
    public List <FreightCartStation> ConnectedStations; // For use by actual mass storage inventories

    public MassInventory(MassStorageCrate crate, string networkid = null)
    {
        this.MassStorage       = crate;
        this.NetworkID         = networkid;
        this.Inventory         = new List <KeyValuePair <ItemBase, int> >();
        this.ConnectedStations = new List <FreightCartStation>();
    }
Exemple #3
0
 public bool IsValid()
 {
     if (Crate == null || Crate.mbDelete)
     {
         Crate = null;
         return(false);
     }
     return(true);
 }
Exemple #4
0
 public FreightRegistry(string networkID, MassStorageCrate crate, ItemBase item, int lowstock, int highstock, RegistryType datatype)
 {
     this.NetworkID   = networkID;
     this.MassStorage = crate;
     this.FreightItem = item;
     this.LowStock    = lowstock;
     this.HighStock   = highstock;
     this.DataType    = datatype;
 }
Exemple #5
0
 public MassStorageInventoryBehavior(MassStorageCrate crate, ItemFilter filter)
 {
     this.Crate  = crate;
     this.Filter = filter;
 }
Exemple #6
0
 public MassStorageInventoryBehavior(MassStorageCrate crate) : this(crate, ItemFilters.ALL)
 {
 }