Esempio n. 1
0
        public override void UpdateAmounts()
        {
            List <Vesicle> dump = new List <Vesicle>();

            for (int i = 0; i < OnTheWay.Count; i++)
            {
                OnTheWay[i].DecreaseDist();
                if (OnTheWay[i].GetDist() < 1)
                {
                    AddResource(OnTheWay[i].GetAmount(), OnTheWay[i].GetRes());
                    dump.Add(OnTheWay[i]);
                    if (contents[(int)OnTheWay[i].GetRes()] > parent.MAX)
                    //in case of overflow discards excess
                    {
                        contents[(int)OnTheWay[i].GetRes()] = parent.MAX;
                    }
                }
            }
            foreach (Vesicle vesicle in dump)
            {
                OnTheWay.Remove(vesicle);
            }
            dump = new List <Vesicle>();
        }