static void render_habitat(Panel p, Vessel v, vessel_info vi) { // if habitat feature is disabled, do not show the panel if (!Features.Habitat) return; // if vessel is unmanned, do not show the panel if (vi.crew_count == 0) return; // determine some content, with colors string pressure_str = Lib.Color(Lib.HumanReadablePressure(vi.pressure * Sim.PressureAtSeaLevel()), vi.pressure < Settings.PressureThreshold, "yellow"); string poisoning_str = Lib.Color(Lib.HumanReadablePerc(vi.poisoning, "F2"), vi.poisoning > Settings.PoisoningThreshold * 0.5, "yellow"); // render panel, add some content based on enabled features if (!v.isEVA) { p.section("HABITAT"); if (Features.Pressure) p.content("pressure", pressure_str); if (Features.Poisoning) p.content("co2 level", poisoning_str); if (Features.Shielding) p.content("shielding", Habitat.shielding_to_string(vi.shielding)); if (Features.LivingSpace) p.content("living space", Habitat.living_space_to_string(vi.living_space)); if (Features.Comfort) p.content("comfort", vi.comforts.summary(), vi.comforts.tooltip()); } else { p.section("HABITAT"); if (Features.Poisoning) p.content("co2 level", poisoning_str); } }