public void UpdateCycleText(int minutes, int hours, int currentCycle, int currentYear) { timeText.text = string.Format("{0:00}", hours) + ":" + string.Format("{0:00}", minutes) + " - " + currentCycle + "." + currentYear; Tooltip tt = timeText.GetComponent <Tooltip>(); tt.ClearLines(); tt.AddLocalizedLine(new Localization.Line("hud", "temporality", currentCycle.ToString(), currentYear.ToString())); }
IEnumerator AddTooltipsWhenPossible(Tooltip tt, BlockScheme scheme) { yield return(new WaitUntil(delegate { return GameManager.instance.localization.GetLanguages().Count > 0; })); List <Tooltip.Entry> entries = Tooltip.GetBuildingTooltip(scheme); foreach (Tooltip.Entry entry in entries) { tt.AddLocalizedLine(entry); } yield return(true); }
public void UpdateTooltip() { // Tooltip generation Tooltip tt = GetComponent <Tooltip>(); tt.ClearLines(); List <Tooltip.Entry> entries = Tooltip.GetBuildingTooltip(this); foreach (Tooltip.Entry entry in entries) { tt.AddLocalizedLine(entry); } }
void UpdateTooltips() { string popName = loc.GetLineFromCategory("populationType", population.codeName); faceTooltip.ClearLines(); faceTooltip.AddLocalizedLine(new Localization.Line("populationType", population.codeName)); faceTooltip.AddLocalizedLine( new Localization.Line( "stats", "moodValue", popName, moodString.ToUpper() ) ); // Last mood affects faceTooltip.AddLocalizedLine(new Tooltip.Entry(Tooltip.entryType.LineBreak)); faceTooltip.AddLocalizedLine(new Tooltip.Entry("moodEvolution", "moodAffect", Tooltip.informationType.Neutral) { formatters = new string[] { "b" } }); List <CityManager.MoodAffect> toSkip = new List <CityManager.MoodAffect>() { CityManager.MoodAffect.none, CityManager.MoodAffect.habitationBuff }; foreach (CityManager.MoodAffect affect in popMan.populations[population].lastMoodChange.GetKeys()) { if (toSkip.Contains(affect)) { continue; } float value = -Mathf.Round(popMan.populations[population].lastMoodChange.Get(affect)); if (value != 0f) { faceTooltip.AddLocalizedLine( new Tooltip.Entry(affect.ToString(), "moodAffect", value > 0f ? Tooltip.informationType.Positive : Tooltip.informationType.Negative, value.ToString("+0;-#")) ); } } // Mood modifiers faceTooltip.AddLocalizedLine(new Tooltip.Entry(Tooltip.entryType.LineBreak)); foreach (MoodModifier moodMod in popMan.populations[population].moodModifiers) { if (moodMod.eventId <= 0) { continue; } Tooltip.informationType type = Tooltip.informationType.Positive; if (moodMod.amount < 0) { type = Tooltip.informationType.Negative; } faceTooltip.AddLocalizedLine( new Tooltip.Entry( "event" + moodMod.eventId, "eventTitle", type ) ); faceTooltip.AddLocalizedLine( new Tooltip.Entry( "value", "stats", type, moodMod.amount.ToString("+0;-#") ) ); } faceTooltip.AddLocalizedLine(new Localization.Line("hud", "priority")); faceTooltip.AddLocalizedLine(new Localization.Line("hud", "holdDrag")); // Numbers on the left of the tab homelessTooltip.ClearLines(); homelessTooltip.AddLocalizedLine( new Localization.Line( "stats", "homeless", popMan.GetHomelessCount(population).ToString(), popName ) ); inhabitantsTooltip.ClearLines(); inhabitantsTooltip.AddLocalizedLine( new Localization.Line( "stats", "inhabitants", popMan.populations[population].citizens.Count.ToString(), popName ) ); }
public void InitializeButtons() { Localization loc = GameManager.instance.localization; foreach (GameObject b in instantiatedButtons) { Destroy(b); } foreach (KeyValuePair <int, EventManager.GameAction> gameAction in gameEvent.choices) { GameObject button = Instantiate(buttonExample, buttonExample.transform.parent); Button buttonComponent = button.GetComponentInChildren <Button>(); Text txt = button.GetComponentInChildren <Text>(); Tooltip tt = button.GetComponentInChildren <Tooltip>(); txt.text = loc.GetLineFromCategory("choice", "event" + gameEvent.id + "_" + gameAction.Key); tt.isFirstLineBold = false; List <EventManager.GameEffect> fxs = gameAction.Value.GetGameEffects(); // Remove untranslatable actions like DECLARE_EVENT fxs.RemoveAll(o => skippedActions.Contains(o.intention)); foreach (EventManager.GameEffect action in fxs) { if (action.intention.Length <= 0) { continue; } tt.AddLocalizedLine( new Tooltip.Entry( action.intention, "scriptAction", action.ttColor, action.parameters ) ); } if (fxs.Count <= 0) { tt.AddLocalizedLine( new Localization.Line( "scriptAction", "none" ) ); } // On choice click buttonComponent.onClick.AddListener(delegate { try { gameEvent.ExecuteChoice(gameAction.Key); } catch (System.Exception e) { Logger.Error("Skipped event error : " + e.ToString() + ". This should NOT happen. Check the event syntax on."); } subWindow.SetActive(false); if (GameManager.instance.player.options.GetBool(Options.Option.animatedCitizens)) { displayer.Unstage(); } try { FindObjectOfType <TooltipGO>().Disable(); } catch { // Sometimes the tooltip destroys too early // This is okay } GameManager.instance.UnPause(); GetComponent <Image>().enabled = false; StopAllCoroutines(); }); instantiatedButtons.Add(button); button.SetActive(true); } }