private void closeConnectedExperiments() { int l = experiments.Count; for (int i = 0; i < l; i++) { ModuleSEPScienceExperiment exp = experiments[i]; if (exp == null) { continue; } exp.setController(null); experiments[i] = null; } }
private void getConnectedExperiments() { var modules = vessel.FindPartModulesImplementing <ModuleSEPScienceExperiment>().Where(m => m.IsDeployed).ToList(); int l = modules.Count; for (int i = 0; i < l; i++) { if (experiments.Count >= maxExperiments) { break; } ModuleSEPScienceExperiment exp = modules[i]; if (exp == null) { continue; } if (exp.Handler == null) { continue; } if (!exp.IsDeployed) { continue; } if (exp.Controller != null) { continue; } exp.setController(this); experiments.Add(exp); } Events["ConductExperiments"].active = experiments.Count > 0; }