示例#1
0
        private static void TransferReagents(ReagentContainer source, ReagentContainer target, float amount)
        {
            source.NormalizeReagents();
            target.NormalizeReagents();

            if (target.AvailableVolume < amount)
            {
                amount = target.AvailableVolume;
            }

            foreach (var reagent in source.ReagentList)
            {
                float coef       = reagent.Amount / source.Amount;
                float toTransfer = amount * coef;
                reagent.Amount -= toTransfer;
                Reagent copy = new Reagent(reagent.Name, toTransfer);
                target.AddReagent(copy);
            }

            source.NormalizeReagents();
            target.NormalizeReagents();
        }
示例#2
0
 public virtual float AddReagent(Reagent reagent)
 {
     throw new NotImplementedException();
 }