protected override bool CanDoNext() { if (!base.CanDoNext()) { return(false); } if (TutorSystem.TutorialMode) { WorkTypeDef workTypeDef = StartingPawnUtility.RequiredWorkTypesDisabledForEveryone().FirstOrDefault(); if (workTypeDef != null) { Messages.Message("RequiredWorkTypeDisabledForEveryone".Translate() + ": " + workTypeDef.gerundLabel.CapitalizeFirst() + ".", MessageTypeDefOf.RejectInput, historical: false); return(false); } } foreach (Pawn startingAndOptionalPawn in Find.GameInitData.startingAndOptionalPawns) { if (!startingAndOptionalPawn.Name.IsValid) { Messages.Message("EveryoneNeedsValidName".Translate(), MessageTypeDefOf.RejectInput, historical: false); return(false); } } PortraitsCache.Clear(); return(true); }
private void CheckWarnRequiredWorkTypesDisabledForEveryone(Action nextAction) { IEnumerable <WorkTypeDef> enumerable = StartingPawnUtility.RequiredWorkTypesDisabledForEveryone(); if (enumerable.Any <WorkTypeDef>()) { StringBuilder stringBuilder = new StringBuilder(); foreach (WorkTypeDef current in enumerable) { if (stringBuilder.Length > 0) { stringBuilder.AppendLine(); } stringBuilder.Append(" - " + current.gerundLabel.CapitalizeFirst()); } string text = "ConfirmRequiredWorkTypeDisabledForEveryone".Translate(new object[] { stringBuilder.ToString() }); Find.WindowStack.Add(Dialog_MessageBox.CreateConfirmation(text, nextAction, false, null)); } else { nextAction(); } }