public SecondaryTaskbar(Screen screen) { this.CurrentScreen = screen; // monitor window & process events ProcessMonitor.Instance.OnFocus += new WindowActionDelegate(processLogic_OnFocus); ProcessMonitor.Instance.OnWindowMoved += new WindowActionDelegate(processLogic_OnWindowMoved); ProcessMonitor.Instance.OnWindowDestroyed += new WindowActionDelegate(processLogic_OnWindowDestroyed); ProcessMonitor.Instance.OnLocationChanged += new WindowActionDelegate(processLogic_OnLocationChanged); ProcessMonitor.Instance.OnStartMenu += new StartMenuActionDelegate(processLogic_OnStartMenu); ProcessMonitor.Instance.OnWindowHidden += new WindowActionDelegate(processLogic_OnWindowHidden); WindowManager.Instance.OnProcessMovedToPrimary += new WindowActionDelegate(windowManager_OnProcessMovedToPrimary); WindowManager.Instance.OnProcessMovedToSecondary += new ProcessMovedDelegate(windowManager_OnProcessMovedToSecondary); Microsoft.Win32.SystemEvents.DisplaySettingsChanged += new EventHandler(SystemEvents_DisplaySettingsChanged); tooltipManager = new ToolTipManager(this); InitializeComponent(); pnlNotificationArea.Initialize(); pnlNotificationArea.SizeChanged += new EventHandler(pnlNotificationArea_SizeChanged); tsmiLockTaskbar.Checked = TaskbarPropertiesManager.Instance.Properties.Locked; pnlResize.BringToFront(); this.AllowDrop = true; }
/// <summary> /// Initializes a new instance of the <see cref="UIScreen"/> class. /// </summary> /// <param name="name">The name of the screen.</param> /// <param name="renderer"> /// The renderer that defines the styles and visual appearance for controls in this screen. /// </param> /// <exception cref="ArgumentNullException"> /// <paramref name="name"/> or <paramref name="renderer"/> is <see langword="null"/>. /// </exception> /// <exception cref="ArgumentException"> /// <paramref name="name"/> is an empty string. /// </exception> public UIScreen(string name, IUIRenderer renderer) { if (name == null) { throw new ArgumentNullException("name"); } if (name.Length == 0) { throw new ArgumentException("String is empty.", "name"); } if (renderer == null) { throw new ArgumentNullException("renderer"); } Name = name; Renderer = renderer; Style = "UIScreen"; Children = new NotifyingCollection <UIControl>(false, false); Children.CollectionChanged += OnChildrenChanged; _focusManager = new FocusManager(this); ToolTipManager = new ToolTipManager(this); #if !SILVERLIGHT // Call OnVisibleChanged when IsVisible changes. var isVisible = Properties.Get <bool>(IsVisiblePropertyId); isVisible.Changed += (s, e) => OnVisibleChanged(EventArgs.Empty); #endif InputEnabled = true; }
public string ToolTip() { StringBuilder sb = ToolTipManager.TipBody; if (ShowExplicitDescription) { sb.AppendFormat("<color={0}>", DarkestDungeonManager.Data.HexColors["equipment_tooltip_body"]); string buffTooltip = ""; for (int i = 0; i < Buffs.Count; i++) { string newBuffTip = Buffs[i].ToolTip; if (newBuffTip.Length > 0) { if (buffTooltip.Length > 0) { buffTooltip += ToolTipManager.GetConcat("\n", newBuffTip); } else { buffTooltip += newBuffTip; } } } sb.Append(buffTooltip); sb.Append("</color>"); } else { sb.AppendFormat("<color={0}>", DarkestDungeonManager.Data.HexColors["equipment_tooltip_body"]); sb.Append(LocalizationManager.GetString(ToolTipManager.GetConcat("str_quirk_description_", Id))); sb.Append("</color>"); } return(sb.ToString()); }
/// <summary> /// Registers tooltip for the existing Controls /// </summary> public void RegisterTooltips() { foreach (Control organelleSelection in organelleSelectionElements) { ToolTipManager.RegisterToolTipForControl( organelleSelection, tooltipCallbacks, ToolTipManager.Instance.GetToolTip( organelleSelection.Name, "organelleSelection")); } foreach (Control membraneSelection in membraneSelectionElements) { ToolTipManager.RegisterToolTipForControl( membraneSelection, tooltipCallbacks, ToolTipManager.Instance.GetToolTip( membraneSelection.Name, "membraneSelection")); } ToolTipManager.RegisterToolTipForControl( rigiditySlider, tooltipCallbacks, ToolTipManager.Instance.GetToolTip("rigiditySlider", "editor")); ToolTipManager.RegisterToolTipForControl( helpButton, tooltipCallbacks, ToolTipManager.Instance.GetToolTip("helpButton")); ToolTipManager.RegisterToolTipForControl( symmetryButton, tooltipCallbacks, ToolTipManager.Instance.GetToolTip("symmetryButton", "editor")); ToolTipManager.RegisterToolTipForControl( undoButton, tooltipCallbacks, ToolTipManager.Instance.GetToolTip("undoButton", "editor")); ToolTipManager.RegisterToolTipForControl( redoButton, tooltipCallbacks, ToolTipManager.Instance.GetToolTip("redoButton", "editor")); ToolTipManager.RegisterToolTipForControl( newCellButton, tooltipCallbacks, ToolTipManager.Instance.GetToolTip("newCellButton", "editor")); ToolTipManager.RegisterToolTipForControl( timeIndicator, tooltipCallbacks, ToolTipManager.Instance.GetToolTip("timeIndicator", "editor")); ToolTipManager.RegisterToolTipForControl( finishButton, tooltipCallbacks, ToolTipManager.Instance.GetToolTip("finishButton", "editor")); ToolTipManager.RegisterToolTipForControl( menuButton, tooltipCallbacks, ToolTipManager.Instance.GetToolTip("menuButton")); }
public void CommandPosition(Vector2 goalPosition, Vector2 goalDir) { if (tankVolume <= 0) { ToolTipManager.ShowText("Need to refill first!"); return; } SetGoalPosition(goalPosition, goalDir); }
} // end of GetHelpDescription() /// <summary> /// Activates the AddItem help card. /// </summary> /// <param name="parent">Parent pie selector.</param> /// <param name="typeName">This is the string that identifies the type of the object we're getting help for. This is used to get the correct help data from the Help class.</param> /// <param name="objectName">This the displayed name of the object/actor. This comes from the Strings class and may be localized.</param> public void Activate(PieSelector parent, string typeName, string objectName) { ToolTipManager.Clear(); if (typeName == null || objectName == null) { return; } this.parent = parent; if (state != States.Active) { // Ensure we have valid help before activating. shared.actorHelp = Help.GetActorHelp(typeName); if (shared.actorHelp == null || shared.actorHelp.upid == null) { return; } // Do stack handling here. If we do it in the update object we have no // clue which order things get pushed and popped and madness ensues. CommandStack.Push(commandMap); state = States.Active; shared.curActorName = objectName; if (shared.actorHelp.description != null) { shared.descBlob.RawText = shared.actorHelp.description.Trim(); } shared.SetUpGrid(); if (shared.examplesGrid != null) { shared.examplesGrid.Active = true; } // Always start the description at the beginning. shared.topLine = 0; shared.descOffset = 0; // Get the current scene thumbnail. shared.thumbnail = InGame.inGame.SmallThumbNail; // Tell InGame we're using the thumbnail so no need to do full render. InGame.inGame.RenderWorldAsThumbnail = true; HelpOverlay.Push(@"HelpCardAddItem"); timerInstrument = Instrumentation.StartTimer(Instrumentation.TimerId.AddItemHelpCards); } } // end of Activate
/// <summary> /// Initialize an instance of the TooltipController class. /// </summary> /// <param name="manager">Reference to manager of all tooltip functionality.</param> /// <param name="targetElement">Target element that controller is for.</param> /// <param name="targetController">Target controller that we are snooping.</param> public ToolTipController(ToolTipManager manager, ViewBase targetElement, IMouseController targetController) { Debug.Assert(manager != null); Debug.Assert(targetElement != null); // Remember incoming references _manager = manager; _targetElement = targetElement; _targetController = targetController; }
void Awake() { if (_instance == null) { _instance = this; //DontDestroyOnLoad(this); } else { if (this != _instance) Destroy(this.gameObject); } }
public static void AddTip(this GameObject gameObj, string tip) { EventUtil.AddHover(gameObj, (o, b) => { if (b) { ToolTipManager.Show(tip); } else { ToolTipManager.Hide(); } }); }
protected override void OnHover(bool b) { base.OnHover(b); if (b && ToolTip != "") { ToolTipManager.Show(ToolTip, tipDely, tipWidth); } else if (b == false) { ToolTipManager.Hide(); } if (b == true && _isEnable) { FuncUtil.SetCursor("CURSOR_CLICK_OVER"); //currentTouch为null是为了防止在按钮上放开鼠标时触发OnHover //当鼠标离开时currentTouch为null,鼠标进入时currentTouch也为null,鼠标按下时才不为null if (UICamera.currentTouch == null) { if (_rollOverFun != null) { _rollOverFun(gameObject); } } } else if (_isEnable == false) { FuncUtil.SetCursor("CURSOR_NORMAL"); } else { if (_rollOutFun != null) { _rollOutFun(gameObject); } //if (/*!UICamera.IsPressIng && */FuncUtil.IsUICursor()) { // FuncUtil.SetCursor("CURSOR_NORMAL"); //} } if (relateChild) { GetChildBtns(); foreach (Component child in childBtn) { if (child != this) { (child as CButton).isEnabled = true; (child as CButton).OnHover(b); } } } }
} // end of ToolMenuUpdateObj c'tor /// <summary> /// ToolMenuUpdateObj Update() /// </summary> /// <param name="camera"></param> public override void Update() { base.Update(); // No need to check for input focus or anything. If // we're active then the ToolMenu object has focus. shared.ToolMenu.Update(); // If the ToolMenu is no longer active we're done. if (!shared.ToolMenu.Active) { return; } // Do the common bits of the Update(). If our child is active we // can temporarily push/pop our commandMap to grab input focus. if (shared.ToolMenu.Active) { CommandStack.Push(commandMap); } UpdateCamera(false); if (shared.ToolMenu.Active) { CommandStack.Pop(commandMap); } UpdateWorld(); // TODO (****) Should this only be called for tools that use the edit brush? // TODO (****) How do we turn off the edit brush rendering if we don't need it? UpdateEditBrush(); GamePadInput pad = GamePadInput.GetGamePad0(); // Run! if (pad.Back.WasPressed) { // TODO (****) Transition to RunSim. // Or is this already done in the base class??? } // MiniHub! if (pad.Start.WasPressed) { // TODO (****) Transition to MinHub. // Or is this already done in the base class??? } ToolTipManager.Update(); ThoughtBalloonManager.Update(shared.camera); } // end of ToolMenuUpdateObj Update()
private void InitToolTip() { ToolTipManager.Init(this); ToolTipManager.SetToolTip(extender, "색상 기록을 확장합니다."); ToolTipManager.SetToolTip(lbl_HTML, "색상을 HEX로 표현한 값 입니다."); ToolTipManager.SetToolTip(lbl_RGB, "색상을 RGB로 표현한 값 입니다."); ToolTipManager.SetToolTip(lbl_HSL, "색상을 HSL로 표현한 값 입니다."); ToolTipManager.SetToolTip(lbl_HSV, "색상을 HSB로 표현한 값 입니다."); ToolTipManager.SetToolTip(chkGrid, "캡쳐영역에 격자를 표시합니다."); ToolTipManager.SetToolTip(chkSemi, "키보드 방향키로 마우스를 미세조정합니다."); ToolTipManager.SetToolTip(ldcPlate, "클릭하여 생삭의 밝기를 조절할 수 있습니다."); ToolTipManager.SetToolTip(zoomSlider, "스크롤하여 확대를할 수 있습니다."); }
/// <summary> /// Initialize a new instance of the KryptonBreadCrumb class. /// </summary> public KryptonBreadCrumb() { // The bread crumb cannot take the focus SetStyle(ControlStyles.Selectable, false); // Set default values _selectedItem = null; _dropDownNavigaton = true; _buttonStyle = ButtonStyle.BreadCrumb; RootItem = new KryptonBreadCrumbItem("Root"); RootItem.PropertyChanged += OnCrumbItemChanged; AllowButtonSpecToolTips = false; AllowButtonSpecToolTipPriority = false; // Create storage objects ButtonSpecs = new BreadCrumbButtonSpecCollection(this); // Create the palette storage StateCommon = new PaletteBreadCrumbRedirect(Redirector, NeedPaintDelegate); StateDisabled = new PaletteBreadCrumbDoubleState(StateCommon, NeedPaintDelegate); StateNormal = new PaletteBreadCrumbDoubleState(StateCommon, NeedPaintDelegate); StateTracking = new PaletteBreadCrumbState(StateCommon, NeedPaintDelegate); StatePressed = new PaletteBreadCrumbState(StateCommon, NeedPaintDelegate); // Our view contains background and border with crumbs inside _layoutCrumbs = new ViewLayoutCrumbs(this, NeedPaintDelegate); _drawDocker = new ViewDrawDocker(StateNormal.Back, StateNormal.Border, null) { { _layoutCrumbs, ViewDockStyle.Fill } }; // Create the view manager instance ViewManager = new ViewManager(this, _drawDocker); // Create button specification collection manager _buttonManager = new ButtonSpecManagerDraw(this, Redirector, ButtonSpecs, null, new[] { _drawDocker }, new IPaletteMetric[] { StateCommon }, new[] { PaletteMetricInt.HeaderButtonEdgeInsetPrimary }, new[] { PaletteMetricPadding.None }, CreateToolStripRenderer, NeedPaintDelegate); // Create the manager for handling tooltips ToolTipManager = new ToolTipManager(); ToolTipManager.ShowToolTip += OnShowToolTip; ToolTipManager.CancelToolTip += OnCancelToolTip; _buttonManager.ToolTipManager = ToolTipManager; }
public void UpdateEnergyBalanceToolTips(EnergyBalanceInfo energyBalance) { // Clear previous callbacks processesTooltipCallbacks.Clear(); foreach (var subBar in atpProductionBar.SubBars) { var tooltip = ToolTipManager.Instance.GetToolTip(subBar.Name, "processesProduction"); ToolTipManager.RegisterToolTipForControl(subBar, processesTooltipCallbacks, tooltip); tooltip.Description = $"{SimulationParameters.Instance.GetOrganelleType(subBar.Name).Name}: " + $"+{energyBalance.Production[subBar.Name]} ATP"; } foreach (var subBar in atpConsumptionBar.SubBars) { var tooltip = ToolTipManager.Instance.GetToolTip(subBar.Name, "processesConsumption"); ToolTipManager.RegisterToolTipForControl(subBar, processesTooltipCallbacks, tooltip); string displayName; switch (subBar.Name) { case "osmoregulation": { displayName = "Osmoregulation"; break; } case "baseMovement": { displayName = "Base Movement"; break; } default: { displayName = SimulationParameters.Instance.GetOrganelleType(subBar.Name).Name; break; } } tooltip.Description = $"{displayName}: -{energyBalance.Consumption[subBar.Name]} ATP"; } }
/// <summary> /// Initialize a new instance of the KryptonHeader class. /// </summary> public KryptonHeader() { // The header cannot take the focus SetStyle(ControlStyles.Selectable, false); // Set default values _style = HeaderStyle.Primary; _orientation = VisualOrientation.Top; AllowButtonSpecToolTips = false; AllowButtonSpecToolTipPriority = false; // Create storage objects Values = new HeaderValues(NeedPaintDelegate); Values.TextChanged += OnHeaderTextChanged; ButtonSpecs = new HeaderButtonSpecCollection(this); // Create the palette storage StateCommon = new PaletteHeaderRedirect(Redirector, PaletteBackStyle.HeaderPrimary, PaletteBorderStyle.HeaderPrimary, PaletteContentStyle.HeaderPrimary, NeedPaintDelegate); StateDisabled = new PaletteTripleMetric(StateCommon, NeedPaintDelegate); StateNormal = new PaletteTripleMetric(StateCommon, NeedPaintDelegate); // Our view contains background and border with content inside _drawDocker = new ViewDrawDocker(StateNormal.Back, StateNormal.Border, null); _drawContent = new ViewDrawContent(StateNormal.Content, Values, Orientation); _drawDocker.Add(_drawContent, ViewDockStyle.Fill); // Create the view manager instance ViewManager = new ViewManager(this, _drawDocker); // Create button specification collection manager _buttonManager = new ButtonSpecManagerDraw(this, Redirector, ButtonSpecs, null, new[] { _drawDocker }, new IPaletteMetric[] { StateCommon }, new[] { PaletteMetricInt.HeaderButtonEdgeInsetPrimary }, new[] { PaletteMetricPadding.HeaderButtonPaddingPrimary }, CreateToolStripRenderer, NeedPaintDelegate); // Create the manager for handling tooltips ToolTipManager = new ToolTipManager(); ToolTipManager.ShowToolTip += OnShowToolTip; ToolTipManager.CancelToolTip += OnCancelToolTip; _buttonManager.ToolTipManager = ToolTipManager; // We want to be auto sized by default, but not the property default! AutoSize = true; AutoSizeMode = AutoSizeMode.GrowAndShrink; }
void Start() { ToolTipMgr = GameObject.Find("_ToolTipManager"); tooltip = ToolTipMgr.GetComponent <ToolTipManager>(); //Enables the ammount text if the item is stackable if (_Item.Stackable) { this.transform.GetChild(0).gameObject.SetActive(true); this.transform.GetChild(0).GetComponent <Text>().text = Ammout.ToString(); } //Sets sprite and gameobject name to fit to item this.GetComponent <Image>().sprite = _Item.Sprite; this.name = _Item.Title; }
} // end of ShowHelp() public void Render() { // Render menu using local camera. Fx.ShaderGlobals.SetCamera(camera); grid.Render(camera); helpSquare.Render(camera); // Moved to MainMenu so they don't end up on the RT. //InGame.inGame.shared.smallTextDisplay.Render(); //InGame.inGame.shared.scrollableTextDisplay.Render(); ToolTipManager.Render(camera); changeLanguageMessage.Render(); } // end of Render()
public void SpawnObject(bool isPlane) { UnitManager um = FindObjectOfType <UnitManager>(); GameObject objTospawn = null; if (isPlane) { objTospawn = planePrefab; DragManager.drags[1].OnDragEnded += SpawnPlane; um.selectedUnits = new Unit[0]; //ToolTip ToolTipManager.ShowText("Right-Click drag to select Plane path"); return; } else { objTospawn = truckPrefab; truckButton.interactable = false; truckButton.image.fillAmount = 0; } AbortSpawnPlane(null); GameObject spawned = Instantiate(objTospawn, new Vector3(50, 50, 0), Quaternion.identity); Unit spawnedUnit = spawned.GetComponent <Unit>(); spawnedUnit.SetGoalPosition(new Vector2(50, 50), Vector2.up); Unit[] currentSelection = um.selectedUnits; Unit[] newSelection = new Unit[currentSelection.Length + 1]; for (int i = 0; i < currentSelection.Length; i++) { newSelection[i] = currentSelection[i]; } newSelection[newSelection.Length - 1] = spawnedUnit; um.selectedUnits = newSelection; }
public void SortByName() { DarkestSoundManager.PlayOneShot("event:/ui/town/sort_by"); RealmInventory.Trinkets.Sort((x, y) => LocalizationManager.GetString(ToolTipManager.GetConcat("str_inventory_title_trinket", x.Id)). CompareTo(LocalizationManager.GetString(ToolTipManager.GetConcat("str_inventory_title_trinket", y.Id)))); int trinketCount = RealmInventory.Trinkets.Count; int trinketsLoaded = Mathf.Min(trinketCount, InventorySlots.Count); for (int i = 0; i < trinketsLoaded; i++) { InventorySlots[i].CreateItem(RealmInventory.Trinkets[i]); } for (int i = trinketsLoaded; i < InventorySlots.Count; i++) { InventorySlots[i].DeleteItem(); } }
public TaskbarButton(ToolTipManager tooltipManager) : base() { this.EnableDragging = true; this.AddedToTaskbar = DateTime.Now; _tooltipManager = tooltipManager; InitializeComponent(); _overlayIconPath = null; _overlayIcon = null; _progress = new TaskbarProgress(); this.AllowDrop = true; _format = (StringFormat.GenericDefault.Clone() as StringFormat); _format.Trimming = StringTrimming.EllipsisCharacter; _format.LineAlignment = StringAlignment.Center; _format.FormatFlags = _format.FormatFlags | StringFormatFlags.NoWrap; UpdateFont(); }
void Awake() { // First we check if there are any other instances conflicting if (Instance != null && Instance != this) { // If that is the case, we destroy other instances Destroy(gameObject); return; } DontDestroyOnLoad(this); // Here we save our singleton instance Instance = this; ToolTipsOrder = new Queue <ToolTip>(); b = new bool[(int)enumToolTipsList._LastOne]; for (enumToolTipsList tt = enumToolTipsList._FirstOne; tt < enumToolTipsList._LastOne; tt++) { b[(int)tt] = PlayerPrefs.GetInt(tt.ToString()) > 0; } }
/// <summary> /// Setup the main menu. /// </summary> private void RunMenuSetup() { Background = GetNode <TextureRect>("Background"); guiAnimations = GetNode <AnimationPlayer>("GUIAnimations"); thriveLogo = GetNode <TextureRect>(ThriveLogoPath); newGameButton = GetNode <Button>(NewGameButtonPath); freebuildButton = GetNode <Button>(FreebuildButtonPath); MenuArray?.Clear(); // Get all of menu items MenuArray = GetTree().GetNodesInGroup("MenuItem"); if (MenuArray == null) { GD.PrintErr("Failed to find all the menu items!"); return; } RandomizeBackground(); options = GetNode <OptionsMenu>("OptionsMenu"); saves = GetNode <SaveManagerGUI>("SaveManagerGUI"); // Load settings if (Settings.Instance == null) { GD.PrintErr("Failed to initialize settings."); } // Set initial menu SwitchMenu(); // Easter egg message ToolTipManager.RegisterToolTipForControl( thriveLogo, toolTipCallbacks, ToolTipManager.Instance.GetToolTip("thriveLogoEasterEgg", "mainMenu")); }
/// <summary> /// Initialize a new instance of the VisualControl class. /// </summary> protected VisualControlBase() { #region Default ControlStyle Values // Default style values for Control are:- // True - AllPaintingInWmPaint // False - CacheText // False - ContainerControl // False - EnableNotifyMessage // False - FixedHeight // False - FixedWidth // False - Opaque // False - OptimizedDoubleBuffer // False - ResizeRedraw // True - Selectable // True - StandardClick // True - StandardDoubleClick // False - SupportsTransparentBackColor // False - UserMouse // True - UserPaint // True - UseTextForAccessibility #endregion // We use double buffering to reduce drawing flicker SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.AllPaintingInWmPaint | ControlStyles.UserPaint, true); // We need to repaint entire control whenever resized SetStyle(ControlStyles.ResizeRedraw, true); // Yes, we want to be drawn double buffered by default base.DoubleBuffered = true; // Setup the invokes _refreshCall = OnPerformRefresh; _layoutCall = OnPerformLayout; // Setup the need paint delegate NeedPaintDelegate = OnNeedPaint; NeedPaintPaletteDelegate = OnPaletteNeedPaint; // Must layout before first draw attempt _layoutDirty = true; _evalTransparent = true; DirtyPaletteCounter = 1; // Set the palette and renderer to the defaults as specified by the manager _localPalette = null; SetPalette(KryptonManager.CurrentGlobalPalette); _paletteMode = PaletteMode.Global; // Create constant target for resolving palette delegates Redirector = CreateRedirector(); AttachGlobalEvents(); // Do the Tooltip Magic ToolTipValues = new ToolTipValues(NeedPaintDelegate); // Create the manager for handling tooltips // ReSharper disable once UseObjectOrCollectionInitializer _toolTipManager = new ToolTipManager(); _toolTipManager.ShowToolTip += OnShowToolTip; _toolTipManager.CancelToolTip += OnCancelToolTip; }
private ToolTipManager() { instance = this; }
private string GenerateDescription() { StringBuilder sb = ToolTipManager.TipBody; switch (ActivityType) { case ActivityType.LevelUp: #region Lvl up if (Variables.Count < 1) { return("Not enough record variables."); } sb.AppendFormat(LocalizationManager.GetString("str_is_now_a"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("hero_class_name_" + HeroClass), LocalizationManager.GetString("str_resolve_" + Variables[0]), Variables[0]); #endregion break; case ActivityType.StillMissing: #region Still missing if (Variables.Count < 1) { return("Not enough record variables."); } sb.AppendFormat(LocalizationManager.GetString("str_is_now_a"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_" + Variables[0])); #endregion break; case ActivityType.RemoveQuirk: #region Remove quirk if (Variables.Count < 1) { return("Not enough record variables."); } sb.AppendFormat(LocalizationManager.GetString("str_treatment_remove_negative_quirk"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_sanitarium"), LocalizationManager.GetString("str_quirk_name_" + Variables[0])); #endregion break; case ActivityType.RemoveDisease: #region Remove disease if (Variables.Count < 1) { return("Not enough record variables."); } sb.AppendFormat(LocalizationManager.GetString("str_disease_treatment_remove_negative_quirk"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_sanitarium"), LocalizationManager.GetString("str_quirk_name_" + Variables[0])); #endregion break; case ActivityType.RemoveAllDiseases: #region Remove all diseases if (Variables.Count < 1) { return("Not enough record variables."); } string diseasesString = ""; for (int i = 0; i < Variables.Count; i++) { if (i == 0) { diseasesString += LocalizationManager.GetString("str_quirk_name_" + Variables[i]); } else { diseasesString += ", " + LocalizationManager.GetString("str_quirk_name_" + Variables[i]); } } sb.AppendFormat(LocalizationManager.GetString("str_disease_treatment_removed_diseases_crit_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_sanitarium"), diseasesString); #endregion break; case ActivityType.LockQuirk: #region Lock quirk if (Variables.Count < 1) { return("Not enough record variables."); } sb.AppendFormat(LocalizationManager.GetString("str_lock_quirk_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_sanitarium"), LocalizationManager.GetString("str_quirk_name_" + Variables[0])); #endregion break; case ActivityType.LockRemoveQuirk: #region Lock and remove quirk if (Variables.Count < 2) { return("Not enough record variables."); } sb.AppendFormat(LocalizationManager.GetString("str_treatment_remove_negative_quirk"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_sanitarium"), LocalizationManager.GetString("str_quirk_name_" + Variables[0])); sb.AppendFormat("\n" + LocalizationManager.GetString("str_lock_quirk_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_sanitarium"), LocalizationManager.GetString("str_quirk_name_" + Variables[1])); #endregion break; case ActivityType.BarStressHeal: if (ActivityEffectType != ActivityEffectType.Found) { #region Bar stress heal if (Variables.Count < 1) { return("Not enough record variables."); } sb.AppendFormat(LocalizationManager.GetString("str_bar_stress_relief_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), Variables[0]); #endregion } #region Bar side effect switch (ActivityEffectType) { case ActivityEffectType.Missing: #region Missing sb.AppendFormat("\n" + LocalizationManager.GetString("str_bar_go_missing_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern")); break; #endregion case ActivityEffectType.Found: #region Found sb.AppendFormat(LocalizationManager.GetString("str_bar_go_missing_found_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern")); break; #endregion case ActivityEffectType.Lock: #region Lock sb.AppendFormat("\n" + LocalizationManager.GetString("str_bar_activity_lock_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern")); break; #endregion case ActivityEffectType.AddQuirk: #region Add Quirk switch (EffectInfo) { case "alcoholism": sb.AppendFormat("\n" + LocalizationManager.GetString("str_bar_add_quirk_alcoholism_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), LocalizationManager.GetString(EffectInfo)); break; case "resolution": sb.AppendFormat("\n" + LocalizationManager.GetString("str_bar_add_quirk_resolution_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), LocalizationManager.GetString(EffectInfo)); break; default: sb.Append("Surprising quirk: " + EffectInfo); break; } break; #endregion case ActivityEffectType.AddBuff: #region Add Buff switch (EffectInfo) { case "townHungoverAccDebuff": sb.AppendFormat("\n" + LocalizationManager.GetString("str_bar_add_buff_townHungoverAccDebuff_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), LocalizationManager.GetString("str_bar_add_buff_townHungoverAccDebuff_story_desc")); break; case "townHungoverDEFDebuff": sb.AppendFormat("\n" + LocalizationManager.GetString("str_bar_add_buff_townHungoverDEFDebuff_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), LocalizationManager.GetString("str_bar_add_buff_townHungoverDEFDebuff_story_desc")); break; default: sb.Append("Surprising quirk: " + EffectInfo); break; } break; #endregion case ActivityEffectType.RemoveTrinket: #region Remove Trinket Trinket trinket = (Trinket)DarkestDungeonManager.Data.Items["trinket"][EffectInfo]; sb.AppendFormat("\n" + LocalizationManager.GetString("str_bar_remove_trinket_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), DarkestDungeonManager.Data.HexColors[trinket.RarityId], LocalizationManager.GetString(ToolTipManager.GetConcat("str_inventory_title_trinket", EffectInfo))); break; #endregion case ActivityEffectType.AddTrinket: #region Add Trinket sb.Append("\n Not expected to get trinket here."); break; #endregion case ActivityEffectType.CurrencyLost: #region Currency Lost sb.AppendFormat("\n" + LocalizationManager.GetString("str_bar_currency_lost_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), DarkestDungeonManager.Data.HexColors["harmful"], EffectInfo); break; #endregion case ActivityEffectType.CurrencyGained: #region Currency Gained sb.Append("\n Not expected to gain gold here."); break; #endregion case ActivityEffectType.Nothing: break; } #endregion break; case ActivityType.GambleStressHeal: if (ActivityEffectType != ActivityEffectType.Found) { #region Gamble stress heal if (Variables.Count < 1) { return("Not enough record variables."); } sb.AppendFormat(LocalizationManager.GetString("str_gambling_stress_relief_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), Variables[0]); #endregion } #region Gamble side effect switch (ActivityEffectType) { case ActivityEffectType.Missing: #region Missing sb.AppendFormat("\n" + LocalizationManager.GetString("str_gambling_go_missing_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern")); break; #endregion case ActivityEffectType.Found: #region Found sb.AppendFormat(LocalizationManager.GetString("str_gambling_go_missing_found_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern")); break; #endregion case ActivityEffectType.Lock: #region Lock sb.AppendFormat("\n" + LocalizationManager.GetString("str_gambling_activity_lock_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern")); break; #endregion case ActivityEffectType.AddQuirk: #region Add Quirk switch (EffectInfo) { case "gambler": sb.AppendFormat("\n" + LocalizationManager.GetString("str_gambling_add_quirk_gambler_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), LocalizationManager.GetString(EffectInfo)); break; case "bad_gambler": sb.AppendFormat("\n" + LocalizationManager.GetString("str_gambling_add_quirk_bad_gambler_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), LocalizationManager.GetString(EffectInfo)); break; case "known_cheat": sb.AppendFormat("\n" + LocalizationManager.GetString("str_gambling_add_quirk_known_cheat_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), LocalizationManager.GetString(EffectInfo)); break; default: sb.Append("Surprising quirk: " + EffectInfo); break; } break; #endregion case ActivityEffectType.AddBuff: #region Add Buff sb.Append("\n Not expected to get buffed here."); break; #endregion case ActivityEffectType.RemoveTrinket: #region Remove Trinket Trinket trinket = (Trinket)DarkestDungeonManager.Data.Items["trinket"][EffectInfo]; sb.AppendFormat("\n" + LocalizationManager.GetString("str_gambling_remove_trinket_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), DarkestDungeonManager.Data.HexColors[trinket.RarityId], LocalizationManager.GetString(ToolTipManager.GetConcat("str_inventory_title_trinket", EffectInfo))); break; #endregion case ActivityEffectType.AddTrinket: #region Add Trinket Trinket addTrinket = (Trinket)DarkestDungeonManager.Data.Items["trinket"][EffectInfo]; sb.AppendFormat("\n" + LocalizationManager.GetString("str_gambling_add_trinket_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), DarkestDungeonManager.Data.HexColors[addTrinket.RarityId], LocalizationManager.GetString(ToolTipManager.GetConcat("str_inventory_title_trinket", EffectInfo))); break; #endregion case ActivityEffectType.CurrencyLost: #region Currency Lost sb.AppendFormat("\n" + LocalizationManager.GetString("str_gambling_currency_lost_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), DarkestDungeonManager.Data.HexColors["harmful"], EffectInfo); break; #endregion case ActivityEffectType.CurrencyGained: #region Currency Gained sb.AppendFormat("\n" + LocalizationManager.GetString("str_gambling_currency_gained_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), DarkestDungeonManager.Data.HexColors["notable"], EffectInfo); break; #endregion case ActivityEffectType.Nothing: break; } #endregion break; case ActivityType.BrothelStressHeal: if (ActivityEffectType != ActivityEffectType.Found) { #region Brothel stress heal if (Variables.Count < 1) { return("Not enough record variables."); } sb.AppendFormat(LocalizationManager.GetString("str_brothel_stress_relief_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), Variables[0]); #endregion } #region Brothel side effect switch (ActivityEffectType) { case ActivityEffectType.Missing: #region Missing sb.AppendFormat("\n" + LocalizationManager.GetString("str_brothel_go_missing_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern")); break; #endregion case ActivityEffectType.Found: #region Found sb.AppendFormat(LocalizationManager.GetString("str_brothel_go_missing_found_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern")); break; #endregion case ActivityEffectType.Lock: #region Lock sb.AppendFormat("\n" + LocalizationManager.GetString("str_brothel_activity_lock_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern")); break; #endregion case ActivityEffectType.AddQuirk: #region Add Quirk switch (EffectInfo) { case "love_interest": sb.AppendFormat("\n" + LocalizationManager.GetString("str_brothel_add_quirk_love_interest_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), LocalizationManager.GetString(EffectInfo)); break; case "syphilis": sb.AppendFormat("\n" + LocalizationManager.GetString("str_brothel_add_quirk_syphilis_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), LocalizationManager.GetString(EffectInfo)); break; case "deviant_tastes": sb.AppendFormat("\n" + LocalizationManager.GetString("str_brothel_add_quirk_deviant_tastes_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), LocalizationManager.GetString(EffectInfo)); break; default: sb.Append("Surprising quirk: " + EffectInfo); break; } break; #endregion case ActivityEffectType.AddBuff: #region Add Buff switch (EffectInfo) { case "townBrothelSPDBuff": sb.AppendFormat("\n" + LocalizationManager.GetString("str_brothel_add_buff_townBrothelSPDBuff_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), LocalizationManager.GetString("str_brothel_add_buff_townBrothelSPDBuff_story_desc")); break; case "townBrothelSPDDebuff": sb.AppendFormat("\n" + LocalizationManager.GetString("str_brothel_add_buff_townBrothelSPDDebuff_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_tavern"), LocalizationManager.GetString("str_brothel_add_buff_townBrothelSPDDebuff_story_desc")); break; default: sb.Append("Surprising buff: " + EffectInfo); break; } break; #endregion case ActivityEffectType.RemoveTrinket: #region Remove Trinket sb.Append("\n Not expected to lose trinket here."); break; #endregion case ActivityEffectType.AddTrinket: #region Add Trinket sb.Append("\n Not expected to get trinket here."); break; #endregion case ActivityEffectType.CurrencyLost: #region Currency Lost sb.Append("\n Not expected to lose gold here."); break; #endregion case ActivityEffectType.CurrencyGained: #region Currency Gained sb.Append("\n Not expected to gain gold here."); break; #endregion case ActivityEffectType.Nothing: break; } #endregion break; case ActivityType.MeditationStressHeal: if (ActivityEffectType != ActivityEffectType.Found) { #region Meditation stress heal if (Variables.Count < 1) { return("Not enough record variables."); } sb.AppendFormat(LocalizationManager.GetString("str_meditation_stress_relief_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey"), Variables[0]); #endregion } #region Meditation side effect switch (ActivityEffectType) { case ActivityEffectType.Missing: #region Missing sb.AppendFormat("\n" + LocalizationManager.GetString("str_meditation_go_missing_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey")); break; #endregion case ActivityEffectType.Found: #region Found sb.AppendFormat(LocalizationManager.GetString("str_meditation_go_missing_found_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey")); break; #endregion case ActivityEffectType.Lock: #region Lock sb.AppendFormat("\n" + LocalizationManager.GetString("str_meditation_activity_lock_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey")); break; #endregion case ActivityEffectType.AddQuirk: #region Add Quirk switch (EffectInfo) { case "enlightened": sb.AppendFormat("\n" + LocalizationManager.GetString("str_meditation_add_quirk_enlightened_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey"), LocalizationManager.GetString(EffectInfo)); break; case "improved_balance": sb.AppendFormat("\n" + LocalizationManager.GetString("str_meditation_add_quirk_improved_balance_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey"), LocalizationManager.GetString(EffectInfo)); break; case "meditator": sb.AppendFormat("\n" + LocalizationManager.GetString("str_meditation_add_quirk_meditator_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey"), LocalizationManager.GetString(EffectInfo)); break; case "calm": sb.AppendFormat("\n" + LocalizationManager.GetString("str_meditation_add_quirk_calm_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey"), LocalizationManager.GetString(EffectInfo)); break; case "unquiet_mind": sb.AppendFormat("\n" + LocalizationManager.GetString("str_meditation_add_quirk_unquiet_mind_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey"), LocalizationManager.GetString(EffectInfo)); break; default: sb.Append("Surprising quirk: " + EffectInfo); break; } break; #endregion case ActivityEffectType.AddBuff: #region Add Buff sb.Append("\n Not expected to get buffed here."); break; #endregion case ActivityEffectType.RemoveTrinket: #region Remove Trinket sb.Append("\n Not expected to lose trinket here."); break; #endregion case ActivityEffectType.AddTrinket: #region Add Trinket sb.Append("\n Not expected to get trinket here."); break; #endregion case ActivityEffectType.CurrencyLost: #region Currency Lost sb.Append("\n Not expected to lose gold here."); break; #endregion case ActivityEffectType.CurrencyGained: #region Currency Gained sb.Append("\n Not expected to gain gold here."); break; #endregion case ActivityEffectType.Nothing: break; } #endregion break; case ActivityType.PrayerStressHeal: if (ActivityEffectType != ActivityEffectType.Found) { #region Prayer stress heal if (Variables.Count < 1) { return("Not enough record variables."); } sb.AppendFormat(LocalizationManager.GetString("str_prayer_stress_relief_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey"), Variables[0]); #endregion } #region Prayer side effect switch (ActivityEffectType) { case ActivityEffectType.Missing: #region Missing sb.AppendFormat("\n" + LocalizationManager.GetString("str_prayer_go_missing_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey")); break; #endregion case ActivityEffectType.Found: #region Found sb.AppendFormat(LocalizationManager.GetString("str_prayer_go_missing_found_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey")); break; #endregion case ActivityEffectType.Lock: #region Lock sb.AppendFormat("\n" + LocalizationManager.GetString("str_prayer_activity_lock_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey")); break; #endregion case ActivityEffectType.AddQuirk: #region Add Quirk switch (EffectInfo) { case "god_fearing": sb.AppendFormat("\n" + LocalizationManager.GetString("str_prayer_add_quirk_god_fearing_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey"), LocalizationManager.GetString(EffectInfo)); break; case "witness": sb.AppendFormat("\n" + LocalizationManager.GetString("str_prayer_add_quirk_witness_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey"), LocalizationManager.GetString(EffectInfo)); break; default: sb.Append("Surprising quirk: " + EffectInfo); break; } break; #endregion case ActivityEffectType.AddBuff: #region Add Buff sb.Append("\n Not expected to get buffed here."); break; #endregion case ActivityEffectType.RemoveTrinket: #region Remove Trinket sb.Append("\n Not expected to lose trinket here."); break; #endregion case ActivityEffectType.AddTrinket: #region Add Trinket sb.Append("\n Not expected to get trinket here."); break; #endregion case ActivityEffectType.CurrencyLost: #region Currency Lost sb.AppendFormat("\n" + LocalizationManager.GetString("str_prayer_currency_lost_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey"), DarkestDungeonManager.Data.HexColors["harmful"], EffectInfo); break; #endregion case ActivityEffectType.CurrencyGained: #region Currency Gained sb.Append("\n Not expected to gain gold here."); break; #endregion case ActivityEffectType.Nothing: break; } #endregion break; case ActivityType.FlagellationStressHeal: if (ActivityEffectType != ActivityEffectType.Found) { #region Flagellation stress heal if (Variables.Count < 1) { return("Not enough record variables."); } sb.AppendFormat(LocalizationManager.GetString("str_flagellation_stress_relief_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey"), Variables[0]); #endregion } #region Flagellation side effect switch (ActivityEffectType) { case ActivityEffectType.Missing: #region Missing sb.AppendFormat("\n" + LocalizationManager.GetString("str_flagellation_go_missing_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey")); break; #endregion case ActivityEffectType.Found: #region Found sb.AppendFormat(LocalizationManager.GetString("str_flagellation_go_missing_found_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey")); break; #endregion case ActivityEffectType.Lock: #region Lock sb.AppendFormat("\n" + LocalizationManager.GetString("str_flagellation_activity_lock_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey")); break; #endregion case ActivityEffectType.AddQuirk: #region Add Quirk switch (EffectInfo) { case "flagellant": sb.AppendFormat("\n" + LocalizationManager.GetString("str_flagellation_add_quirk_flagellant_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey"), LocalizationManager.GetString(EffectInfo)); break; case "faithless": sb.AppendFormat("\n" + LocalizationManager.GetString("str_flagellation_add_quirk_faithless_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey"), LocalizationManager.GetString(EffectInfo)); break; default: sb.Append("Surprising quirk: " + EffectInfo); break; } break; #endregion case ActivityEffectType.AddBuff: #region Add Buff switch (EffectInfo) { case "townFlagellationDMGLowBuff": sb.AppendFormat("\n" + LocalizationManager.GetString("str_flagellation_add_buff_townFlagellationDMGLowBuff_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey"), LocalizationManager.GetString("str_flagellation_add_buff_townFlagellationDMGLowBuff_story_desc")); break; case "townFlagellationDMGLowDebuff": sb.AppendFormat("\n" + LocalizationManager.GetString("str_flagellation_add_buff_townFlagellationDMGLowDebuff_story"), DarkestDungeonManager.Data.HexColors["notable"], Actor, LocalizationManager.GetString("town_name_abbey"), LocalizationManager.GetString("str_flagellation_add_buff_townFlagellationDMGLowDebuff_story_desc")); break; default: sb.Append("Surprising buff: " + EffectInfo); break; } break; #endregion case ActivityEffectType.RemoveTrinket: #region Remove Trinket sb.Append("\n Not expected to lose trinket here."); break; #endregion case ActivityEffectType.AddTrinket: #region Add Trinket sb.Append("\n Not expected to get trinket here."); break; #endregion case ActivityEffectType.CurrencyLost: #region Currency Lost sb.Append("\n Not expected to lose gold here."); break; #endregion case ActivityEffectType.CurrencyGained: #region Currency Gained sb.Append("\n Not expected to gain gold here."); break; #endregion case ActivityEffectType.Nothing: break; } #endregion break; } cachedDescription = sb.ToString(); return(cachedDescription); }
/// <summary> /// Initializes a new instance of the <see cref="UIScreen"/> class. /// </summary> /// <param name="name">The name of the screen.</param> /// <param name="renderer"> /// The renderer that defines the styles and visual appearance for controls in this screen. /// </param> /// <exception cref="ArgumentNullException"> /// <paramref name="name"/> or <paramref name="renderer"/> is <see langword="null"/>. /// </exception> /// <exception cref="ArgumentException"> /// <paramref name="name"/> is an empty string. /// </exception> public UIScreen(string name, IUIRenderer renderer) { if (name == null) throw new ArgumentNullException("name"); if (name.Length == 0) throw new ArgumentException("String is empty.", "name"); if (renderer == null) throw new ArgumentNullException("renderer"); Name = name; Renderer = renderer; Style = "UIScreen"; Children = new NotifyingCollection<UIControl>(false, false); Children.CollectionChanged += OnChildrenChanged; _focusManager = new FocusManager(this); ToolTipManager = new ToolTipManager(this); #if !SILVERLIGHT // Call OnVisibleChanged when IsVisible changes. var isVisible = Properties.Get<bool>(IsVisiblePropertyId); isVisible.Changed += (s, e) => OnVisibleChanged(EventArgs.Empty); #endif InputEnabled = true; }
private void Awake() { instance = this; standardPosition = tooltipRect.localPosition; myRect = GetComponent <RectTransform>(); }
public void FastForwardToolTip() { ToolTipManager.ShowText("Press [Space] to fast forward"); }
internal void Initialize(ScreenView screenView) { dragManager = new DragManager(screenView, this); toolTipManager = new ToolTipManager(screenView, this); layoutFixManager = new LayoutFixManager(screenView, this); }
private void CreateViewElements(PaletteRedirect redirect) { // Layout for individual tabs inside the header _layoutRibbonTabs = new ViewLayoutRibbonTabs(_ribbon, NeedPaintDelegate); // Put inside a viewport so scrollers are used when tabs cannot be shrunk to fill space _tabsViewport = new ViewLayoutRibbonScrollPort(_ribbon, System.Windows.Forms.Orientation.Horizontal, _layoutRibbonTabs, true, SCROLL_SPEED, NeedPaintDelegate); _tabsViewport.TransparentBackground = true; _tabsViewport.PaintBackground += new PaintEventHandler(OnTabsPaintBackground); _layoutRibbonTabs.ParentControl = _tabsViewport.ViewLayoutControl.ChildControl; _layoutRibbonTabs.NeedPaintDelegate = _tabsViewport.ViewControlPaintDelegate; // We use a layout docker as a child to prevent buttons going to the left of the app button ViewLayoutDocker tabsDocker = new ViewLayoutDocker(); // Place the tabs viewport as the fill inside ourself, the button specs will be placed // to the left and right of this fill element automatically by the button manager below tabsDocker.Add(_tabsViewport, ViewDockStyle.Fill); // We need to draw the bottom half of the application button or a full app tab _layoutAppButton = new ViewLayoutRibbonAppButton(_ribbon, true); _layoutAppTab = new ViewLayoutRibbonAppTab(_ribbon); // Connect up the application button controller to the app button element _appButtonController.Target3 = _layoutAppButton.AppButton; _appButtonController.Click += new EventHandler(OnAppButtonClicked); _appButtonController.MouseReleased += new EventHandler(OnAppButtonReleased); _layoutAppButton.MouseController = _appButtonController; _layoutAppButton.SourceController = _appButtonController; _layoutAppButton.KeyController = _appButtonController; _appTabController.Target1 = _layoutAppTab.AppTab; _appTabController.Click += new EventHandler(OnAppButtonClicked); _appTabController.MouseReleased += new EventHandler(OnAppButtonReleased); _layoutAppTab.MouseController = _appTabController; _layoutAppTab.SourceController = _appTabController; _layoutAppTab.KeyController = _appTabController; // When the app button is not visible we need separator instead before start of first tab _layoutAppButtonSep = new ViewLayoutSeparator(5, 0); _layoutAppButtonSep.Visible = false; // Used separators around the tabs and the edge elements _rightSeparator = new ViewLayoutRibbonSeparator(FAR_TAB_GAP, true); _leftSeparator = new ViewLayoutRibbonSeparator(BUTTON_TAB_GAP_2007, true); // Place application button on left and tabs as the filler (with some separators for neatness) Add(_rightSeparator, ViewDockStyle.Left); Add(_leftSeparator, ViewDockStyle.Left); Add(_layoutAppButton, ViewDockStyle.Left); Add(_layoutAppButtonSep, ViewDockStyle.Left); Add(_layoutAppTab, ViewDockStyle.Left); Add(tabsDocker, ViewDockStyle.Fill); // Create button specification collection manager PaletteRedirect aeroOverrideText = new PaletteRedirectRibbonAeroOverride(_ribbon, redirect); _buttonManager = new ButtonSpecManagerLayoutRibbon(_ribbon, aeroOverrideText, _ribbon.ButtonSpecs, _buttonSpecsFixed, new ViewLayoutDocker[] { tabsDocker }, new IPaletteMetric[] { _ribbon.StateCommon }, new PaletteMetricInt[] { PaletteMetricInt.HeaderButtonEdgeInsetPrimary }, new PaletteMetricPadding[] { PaletteMetricPadding.RibbonButtonPadding }, new GetToolStripRenderer(_ribbon.CreateToolStripRenderer), NeedPaintDelegate); // Create the manager for handling tooltips _toolTipManager = new ToolTipManager(); _toolTipManager.ShowToolTip += new EventHandler <ToolTipEventArgs>(OnShowToolTip); _toolTipManager.CancelToolTip += new EventHandler(OnCancelToolTip); _buttonManager.ToolTipManager = _toolTipManager; }
public string Tooltip() { StringBuilder sb = ToolTipManager.TipBody; sb.AppendFormat("<color={0}>", DarkestDungeonManager.Data.HexColors["notable"]); sb.Append(LocalizationManager.GetString(ToolTipManager.GetConcat("camping_skill_name_", Id))); sb.AppendFormat("\n" + LocalizationManager.GetString("camping_skill_cost"), TimeCost); sb.AppendFormat("</color><color={0}>", DarkestDungeonManager.Data.HexColors["neutral"]); for (int i = 0; i < Effects.Count; i++) { if (i > 0) { if (Effects[i - 1].Selection != Effects[i].Selection) { sb.Append("\n" + LocalizationManager.GetString( CampingSkillHelper.CampTargetTypeToStringId(Effects[i].Selection))); } } else { sb.Append("\n" + LocalizationManager.GetString( CampingSkillHelper.CampTargetTypeToStringId(Effects[i].Selection))); } string effectString = ""; switch (Effects[i].Type) { case CampEffectType.Buff: effectString = DarkestDungeonManager.Data.Buffs[Effects[i].Subtype].TooltipOverrided(Effects[i].Amount); break; case CampEffectType.HealthDamageMaxHealthPercent: effectString = string.Format(LocalizationManager.GetString( "camping_skill_effect_health_damage_max_health_percent"), Effects[i].Amount); break; case CampEffectType.HealthHealMaxHealthPercent: effectString = string.Format(LocalizationManager.GetString( "camping_skill_effect_health_heal_max_health_percent"), Effects[i].Amount); break; case CampEffectType.Loot: effectString = LocalizationManager.GetString("camping_skill_effect_loot_" + Effects[i].Subtype); break; case CampEffectType.ReduceAmbushChance: effectString = LocalizationManager.GetString("camping_skill_effect_reduce_ambush_chance"); break; case CampEffectType.ReduceTorch: effectString = string.Format(LocalizationManager.GetString( "camping_skill_effect_reduce_torch"), Effects[i].Amount); break; case CampEffectType.RemoveBleed: effectString = LocalizationManager.GetString("camping_skill_effect_remove_bleeding"); break; case CampEffectType.RemoveDeathRecovery: effectString = LocalizationManager.GetString("camping_skill_effect_remove_deaths_door_recovery_buffs"); break; case CampEffectType.RemoveDisease: effectString = LocalizationManager.GetString("camping_skill_effect_remove_disease"); break; case CampEffectType.RemovePoison: effectString = LocalizationManager.GetString("camping_skill_effect_remove_poison"); break; case CampEffectType.StressDamageAmount: effectString = string.Format(LocalizationManager.GetString( "camping_skill_effect_stress_damage_amount"), Effects[i].Amount); break; case CampEffectType.StressHealAmount: effectString = string.Format(LocalizationManager.GetString( "camping_skill_effect_stress_heal_amount"), Effects[i].Amount); break; } if (Effects[i].Chance != 1) { string formatChance = LocalizationManager.GetString("camping_skill_chance_effect_format"); effectString = string.Format(formatChance, Effects[i].Chance * 100, effectString); } switch (Effects[i].Requirement) { case CampEffectRequirement.Afflicted: case CampEffectRequirement.DeathRecovery: case CampEffectRequirement.Nonreligious: case CampEffectRequirement.Religious: if (effectString.Length > 0) { string reqFormat = LocalizationManager.GetString("camping_skill_requirement_effect_format"); sb.AppendFormat("\n" + reqFormat, LocalizationManager.GetString( CampingSkillHelper.CampRequirementToStringId(Effects[i].Requirement)), effectString); } break; case CampEffectRequirement.None: if (effectString.Length > 0) { sb.Append("\n" + effectString); } break; } } sb.AppendFormat("</color>"); return(sb.ToString()); }
private void cbxBaseColourPreview_MouseEnter(object sender, EventArgs e) { ToolTipManager.DisplayToolTip(ttInformation, cbxBaseColourPreview, "Base", cbxBaseColourPreview.BackColor, true); }