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);
 }
Ejemplo n.º 4
0
        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);
        }