public static void RemoveRandomResearch() { if (!BlindResearch.Active()) { return; } List <ScenPart> list = (List <ScenPart>)partsInfo.GetValue(Find.Scenario); list.RemoveAll(p => p is ScenPart_RandomResearch); }
public static void MakeResearchRandom() { if (BlindResearch.Active()) { return; } List <ScenPart> list = (List <ScenPart>)partsInfo.GetValue(Find.Scenario); list.Add(ScenarioMaker.MakeScenPart(ScenPartDefOf.RandomResearch)); }
public static Rect DrawCancelButton(Rect rect) { if (BlindResearch.Active() && BlindResearch.SelectedResearch() == Find.ResearchManager.currentProj && BlindResearch.CanSeeCurrent()) { Rect iconRect = rect.ContractedBy(2); iconRect.width = iconRect.height; if (Widgets.ButtonImage(iconRect, ContentFinder <Texture2D> .Get("UI/Designators/Cancel"))) { Find.ResearchManager.currentProj = null; } } return(rect); }
public override AlertReport GetReport() { if (Find.AnyPlayerHomeMap == null || Find.ResearchManager.currentProj != null || !BlindResearch.Active()) { return(false); } foreach (Map map in Find.Maps) { if (map.IsPlayerHome && map.listerBuildings.ColonistsHaveResearchBench()) { return(!Find.ResearchManager.AnyProjectIsAvailable && DefDatabase <ResearchProjectDef> .AllDefsListForReading.Any(x => !x.IsFinished)); } } return(false); }