/// <summary> /// Drawable Notification /// </summary> /// <param name="text"></param> /// <param name="colourInfo"></param> /// <param name="duration">Hide after X amount of MS, -1 = PositiveInfinity</param> /// <param name="clickAction"></param> public DrawableNotification(LocalisedString text, ColourInfo colourInfo, int duration = -1, Action clickAction = null) { _clock = new StopwatchClock(); _clickAction = clickAction; _borderColour = colourInfo; _textFlowContainer = new TextFlowContainer { Direction = FillDirection.Full, AutoSizeAxes = Axes.Both, MaximumSize = new Vector2(290, float.MaxValue), Padding = new MarginPadding(10) }; _duration = duration == -1 ? Math.Max(3000, (double)(text.ToString().Length * 100)) : duration; _textFlowContainer.AddText(text); }
private static void GetRecommendedJobs(this Staff staff, QualificationSlot qualificationSlot, List <JobMaintenance.JobDescription> recommendedJobs) { foreach (CharacterModifier characterModifier in qualificationSlot.Definition.Modifiers) { if (characterModifier is QualificationMaintenanceModifier) { recommendedJobs.AddRange(Main.settings.MaintenanceJobs); } else { if (!(characterModifier is QualificationUpgradeItemModifier)) { LocalisedString nameLocalised = qualificationSlot.Definition.NameLocalised; if (!nameLocalised.ToString().ToLowerInvariant().StartsWith("mechanics")) { if (characterModifier is CharacterModifierIgnoreStatusEffect) { recommendedJobs.AddRange(Main.settings.GhostJobs); } else { recommendedJobs.AddRange(Main.settings.MiscJobs); } } } else { recommendedJobs.AddRange(Main.settings.UpgradeJobs); } } } if (qualificationSlot.Definition.Modifiers.Count <CharacterModifier>() == 0 && qualificationSlot.Definition.ToString().ToLowerInvariant().StartsWith("mechanics")) { recommendedJobs.AddRange(Main.settings.UpgradeJobs); } }