public static string GetLocalizedTooltip(Asset asset, PrefabInfo prefab, string title) { MilestoneInfo unlockMilestone = prefab.GetUnlockMilestone(); string text = TooltipHelper.Format(new string[] { LocaleFormatter.Title, title, LocaleFormatter.Sprite, (!string.IsNullOrEmpty(prefab.m_InfoTooltipThumbnail)) ? prefab.m_InfoTooltipThumbnail : prefab.name, LocaleFormatter.Text, (asset.findIt2Description + Asset.GetLocalizedDescription(prefab)), LocaleFormatter.Locked, (!ToolsModifierControl.IsUnlocked(unlockMilestone)).ToString() }); ToolsModifierControl.GetUnlockingInfo(unlockMilestone, out string unlockDesc, out string currentValue, out string targetValue, out string progress, out string locked); string addTooltip = TooltipHelper.Format(new string[] { LocaleFormatter.LockedInfo, locked, LocaleFormatter.UnlockDesc, unlockDesc, LocaleFormatter.UnlockPopulationProgressText, progress, LocaleFormatter.UnlockPopulationTarget, targetValue, LocaleFormatter.UnlockPopulationCurrent, currentValue }); text = TooltipHelper.Append(text, addTooltip); PrefabAI aI = prefab.GetAI(); if (aI != null) { text = TooltipHelper.Append(text, aI.GetLocalizedTooltip()); } if (prefab is PropInfo || prefab is TreeInfo) { text = TooltipHelper.Append(text, TooltipHelper.Format(new string[] { LocaleFormatter.Cost, LocaleFormatter.FormatCost(prefab.GetConstructionCost(), false) })); } return(text); }