public override void Update() { Log.Info("Updating Coverage"); for (int i = 0; i < variables.Coverages.Length; i++) { variables.Coverages[i].satCount = 0; } Vessel[] Satellites = VesselHelper.GetSatellites(); for (int i = 0; i < Satellites.Length; i++) { Vessel Satellite = Satellites[i]; CelestialBody Body = Satellite.GetOrbit().referenceBody; CoverageReport Report = GetReport(Body.GetName()); Report.satCount++; Report.Update(); } double totalCoverage = 0; for (int i = 0; i < variables.Coverages.Length; i++) { totalCoverage += variables.Coverages[i].coverage; } variables.satelliteCoverage = totalCoverage / variables.Coverages.Length; variables.modSCSatellite = (int)(100 * variables.satelliteCoverage * StateFundingGlobal.fetch.GameInstance.Gov.scModifier); }