public Dictionary <AvailablePart, int> GetLockedParts() { var lockedPartsOnShip = new Dictionary <AvailablePart, int>(); if (ResearchAndDevelopment.Instance == null) { return(lockedPartsOnShip); } foreach (ConfigNode pNode in shipNode.GetNodes("PART")) { string partName = KCT_Utilities.PartNameFromNode(pNode); if (!KCT_Utilities.PartIsUnlocked(partName)) { AvailablePart partInfoByName = PartLoader.getPartInfoByName(partName); if (!lockedPartsOnShip.ContainsKey(partInfoByName)) { lockedPartsOnShip.Add(partInfoByName, 1); } else { ++lockedPartsOnShip[partInfoByName]; } } } return(lockedPartsOnShip); }
public bool CheckPartsUnlocked() { if (ResearchAndDevelopment.Instance == null) { return(true); } foreach (ConfigNode pNode in shipNode.GetNodes("PART")) { if (!KCT_Utilities.PartIsUnlocked(pNode)) { return(false); } } return(true); }