Exemple #1
0
        public void Transfer(Bucket toBucket)
        {
            if (toBucket.IsFull)
            {
                return;
            }
            if (this.IsEmpty)
            {
                return;
            }

            if (toBucket.Level + this.Level <= toBucket.Capacity)
            {
                toBucket.Level += this.Level;
                this.Level      = 0;
            }
            else
            {
                this.Level -= (toBucket.Capacity - toBucket.Level);
                toBucket.Fill();
            }
        }
Exemple #2
0
        public void Transfer(Bucket toBucket)
        {
            if (toBucket.IsFull) return;
            if (this.IsEmpty) return;

            if (toBucket.Level + this.Level <= toBucket.Capacity)
            {
                toBucket.Level += this.Level;
                this.Level = 0;
            }
            else
            {
                this.Level -= (toBucket.Capacity - toBucket.Level);
                toBucket.Fill();
            }
        }