public static Vessel[] GetMiningRigs() { List <Vessel> ReturnVessels = new List <Vessel>(); Vessel[] MiningRigs = VesselHelper.GetVesselsWithModuleAliases(new string[] { "Drill" }); for (var i = 0; i < MiningRigs.Length; i++) { Vessel MiningRig = MiningRigs[i]; if ((MiningRig.Landed || OnAsteroid(MiningRig)) && MiningRig.vesselType != VesselType.Station && MiningRig.vesselType != VesselType.Base && MiningRig.landedAt != SpaceCenter.Instance.cb.GetName() && VesselHelper.HasEnergy(MiningRig) && VesselHelper.GeneratesEnergy(MiningRig) && VesselHelper.HasCommunication(MiningRig)) { ReturnVessels.Add(MiningRig); } } return(ReturnVessels.ToArray()); }
public static Vessel[] GetSatellites() { List <Vessel> ReturnVessels = new List <Vessel>(); Vessel[] Satellites = VesselHelper.GetVesselsWithModuleAliases(new string[] { "Energy", "Communication", "AutonomousCommand" }); for (int i = 0; i < Satellites.Length; i++) { Vessel Satellite = Satellites[i]; if (!Satellite.Landed && (Satellite.vesselType == VesselType.Probe || Satellite.vesselType == VesselType.Relay) && Satellite.GetOrbit() != null && Satellite.GetOrbit().referenceBody != Planetarium.fetch.Sun && !VesselHelper.HasCrew(Satellite)) { ReturnVessels.Add(Satellite); } } return(ReturnVessels.ToArray()); }
public static Vessel[] GetLandedScienceStations() { List <Vessel> ReturnVessels = new List <Vessel>(); Vessel[] ScienceLabs = VesselHelper.GetVesselsWithModuleAliases(new string[] { "ScienceLab" }); for (var i = 0; i < ScienceLabs.Length; i++) { Vessel ScienceLab = ScienceLabs[i]; if (VesselHelper.HasCrew(ScienceLab) && ScienceLab.Landed && ScienceLab.vesselType != VesselType.Station && ScienceLab.vesselType != VesselType.Base && ScienceLab.landedAt != SpaceCenter.Instance.cb.GetName() && VesselHelper.HasEnergy(ScienceLab) && VesselHelper.GeneratesEnergy(ScienceLab) && VesselHelper.HasCommunication(ScienceLab)) { ReturnVessels.Add(ScienceLab); } } return(ReturnVessels.ToArray()); }