private void PlayerAttached() { if (!CurrentlyControlled || _ui != null) { return; } _alertOrder = IoCManager.Resolve <IPrototypeManager>().EnumeratePrototypes <AlertOrderPrototype>().FirstOrDefault(); if (_alertOrder == null) { Logger.ErrorS("alert", "no alertOrder prototype found, alerts will be in random order"); } _ui = new AlertsUI(IoCManager.Resolve <IClyde>()); var uiManager = IoCManager.Resolve <IUserInterfaceManager>(); uiManager.StateRoot.AddChild(_ui); _tooltip = new PanelContainer { Visible = false, StyleClasses = { StyleNano.StyleClassTooltipPanel } }; var tooltipVBox = new VBoxContainer { RectClipContent = true }; _tooltip.AddChild(tooltipVBox); _stateName = new RichTextLabel { MaxWidth = TooltipTextMaxWidth, StyleClasses = { StyleNano.StyleClassTooltipAlertTitle } }; tooltipVBox.AddChild(_stateName); _stateDescription = new RichTextLabel { MaxWidth = TooltipTextMaxWidth, StyleClasses = { StyleNano.StyleClassTooltipAlertDescription } }; tooltipVBox.AddChild(_stateDescription); _stateCooldown = new RichTextLabel { MaxWidth = TooltipTextMaxWidth, StyleClasses = { StyleNano.StyleClassTooltipAlertCooldown } }; tooltipVBox.AddChild(_stateCooldown); uiManager.PopupRoot.AddChild(_tooltip); UpdateAlertsControls(); }
private void PlayerDetached() { _ui?.Dispose(); _ui = null; _alertControls.Clear(); }