protected override void updateValidParts() { if (validParts.Count <= 0) return; for (int i = 0; i < validParts.Count; i++) { Part p = validParts[i]; if (p == null) continue; Notes_ExpPart n = getExpNotes(p.flightID); if (n == null) n = new Notes_ExpPart(p, this); n.clearExp(); var exps = p.FindModulesImplementing<ModuleScienceExperiment>(); for (int j = 0; j < exps.Count; j++) { ModuleScienceExperiment sciExp = exps[j]; if (sciExp == null) continue; if (string.IsNullOrEmpty(sciExp.experimentID)) continue; ScienceExperiment exp = ResearchAndDevelopment.GetExperiment(sciExp.experimentID); if (exp == null) continue; n.addPartExperiment(sciExp, exp); } if (n.ExpCount > 0) { if (!expParts.ContainsKey(p.flightID)) expParts.Add(p.flightID, n); } else if (expParts.ContainsKey(p.flightID)) expParts.Remove(p.flightID); } }
public Notes_Experiment(Notes_ExpPart r, ModuleScienceExperiment m, ScienceExperiment e, int limit = 1) { root = r; experimentModule = m; experiment = e; name = e.experimentTitle; dataLimit = limit; }