public void Init(IEnumerable <IMyTerminalBlock> blocks, Func <IMyGyro, bool> collect = null, Base6Directions.Direction shipUp = Base6Directions.Direction.Up, Base6Directions.Direction shipForward = Base6Directions.Direction.Forward) { gyros.Clear(); for (var e = blocks.GetEnumerator(); e.MoveNext();) { var gyro = e.Current as IMyGyro; if (gyro != null && gyro.IsFunctional && gyro.IsWorking && gyro.Enabled && (collect == null || collect(gyro))) { var details = new GyroDetails(gyro, shipUp, shipForward); gyros.Add(details); } } }
public void Init(IEnumerable<IMyTerminalBlock> blocks, Func<IMyGyro, bool> collect = null, Base6Directions.Direction shipUp = Base6Directions.Direction.Up, Base6Directions.Direction shipForward = Base6Directions.Direction.Forward) { gyros.Clear(); for (var e = blocks.GetEnumerator(); e.MoveNext();) { var gyro = e.Current as IMyGyro; if (gyro != null && gyro.IsFunctional && gyro.IsWorking && gyro.Enabled && (collect == null || collect(gyro))) { var details = new GyroDetails(gyro, shipUp, shipForward); gyros.Add(details); } } }