Пример #1
0
        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());
        }
Пример #2
0
        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());
        }
Пример #3
0
        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());
        }