private void UpdateSpaceStations() { Debug.Log("Updating Space Stations"); Instance GameInstance = StateFundingGlobal.fetch.GameInstance; Vessel[] SpcStations = VesselHelper.GetSpaceStations(); SpaceStations = new SpaceStationReport[SpcStations.Length]; for (int i = 0; i < SpcStations.Length; i++) { Vessel SpcStation = SpcStations [i]; SpaceStationReport SpcStationReport = new SpaceStationReport(); SpcStationReport.name = SpcStation.vesselName; SpcStationReport.crew = VesselHelper.GetCrew(SpcStation).Length; SpcStationReport.crewCapacity = VesselHelper.GetCrewCapactiy(SpcStation); SpcStationReport.dockedVessels = VesselHelper.GetDockedVesselsCount(SpcStation); SpcStationReport.dockingPorts = VesselHelper.GetDockingPorts(SpcStation).Length; SpcStationReport.drill = VesselHelper.VesselHasModuleAlias(SpcStation, "Drill"); SpcStationReport.scienceLab = VesselHelper.VesselHasModuleAlias(SpcStation, "ScienceLab"); SpcStationReport.fuel = VesselHelper.GetResourceCount(SpcStation, "LiquidFuel"); SpcStationReport.ore = VesselHelper.GetResourceCount(SpcStation, "Ore"); SpcStationReport.onAstroid = VesselHelper.OnAstroid(SpcStation); if (SpcStation.Landed) { SpcStationReport.entity = SpcStation.landedAt; } else { SpcStationReport.entity = SpcStation.GetOrbit().referenceBody.GetName(); } SpcStationReport.po = 0; SpcStationReport.sc = 0; SpcStationReport.po += (int)(5 * SpcStationReport.crew * GameInstance.Gov.poModifier); SpcStationReport.po += (int)(5 * SpcStationReport.dockedVessels * GameInstance.Gov.poModifier); if (SpcStationReport.onAstroid) { SpcStationReport.po += (int)(30 * GameInstance.Gov.poModifier); if (SpcStationReport.drill) { SpcStationReport.po += (int)(10 * GameInstance.Gov.poModifier); SpcStationReport.sc += (int)(10 * GameInstance.Gov.poModifier); } } SpcStationReport.sc += (int)(2 * SpcStationReport.crewCapacity * GameInstance.Gov.scModifier); SpcStationReport.sc += (int)(SpcStationReport.fuel / 200f * GameInstance.Gov.scModifier); SpcStationReport.sc += (int)(SpcStationReport.ore / 200f * GameInstance.Gov.scModifier); SpcStationReport.sc += (int)(2 * SpcStationReport.dockingPorts * GameInstance.Gov.scModifier); SpcStationReport.sc += (int)(2 * SpcStationReport.crewCapacity * GameInstance.Gov.scModifier); if (SpcStationReport.scienceLab) { SpcStationReport.po += (int)(10 * GameInstance.Gov.poModifier); SpcStationReport.sc += (int)(10 * GameInstance.Gov.poModifier); } SpaceStations [i] = SpcStationReport; } }