public void AddGasDrone(GasDrone gasDrone, double time) { if (GasDrones.Any()) { var timePerTurn = gasDrone.TimePerTurn(GasDrones.Count + 1); var distanceBetweenDrones = timePerTurn/(GasDrones.Count + 1); gasDrone.StartedAt = GasDrones.Last().StartedAt + distanceBetweenDrones; } GasDrones.Add(gasDrone); }
public void AddGasDrone(GasDrone gasDrone, double time) { var added = false; var noOfDrones = 0; while (!added) { var extractor = Extractors.FirstOrDefault(x => x.GasDrones.Count == noOfDrones); if (extractor != null) { extractor.AddGasDrone(gasDrone, time); added = true; } noOfDrones++; } }