private void OnTechRecordClicked_SetDiscoveredTechs(TechnologyRecord techRecord) { var techClicked = techRecord.TechToDisplay; if (TechCanon.IsTechDiscoveredByCiv(techClicked, ObjectToDisplay)) { foreach (var postrequisiteTech in TechCanon.GetDiscoveredPostrequisiteTechs(techClicked, ObjectToDisplay)) { TechCanon.SetTechAsUndiscoveredForCiv(postrequisiteTech, ObjectToDisplay); } TechCanon.SetTechAsUndiscoveredForCiv(techClicked, ObjectToDisplay); } else { foreach (var tech in TechCanon.GetPrerequisiteChainToResearchTech(techClicked, ObjectToDisplay)) { TechCanon.SetTechAsDiscoveredForCiv(tech, ObjectToDisplay); } } Refresh(); }