_window = UIManager.CreateWindow<CharacterWindow>();
LayoutContainer.SetAnchorPreset(_window, LayoutContainer.LayoutPreset.CenterTop);
-
+ _window.OnClose += DeactivateButton;
+ _window.OnOpen += ActivateButton;
CommandBinds.Builder
.Bind(ContentKeyFunctions.OpenCharacterMenu,
- InputCmdHandler.FromDelegate(_ => ToggleWindow()))
- .Register<CharacterUIController>();
+ InputCmdHandler.FromDelegate(_ => ToggleWindow()))
+ .Register<CharacterUIController>();
}
public void OnStateExited(GameplayState state)
{
if (_window != null)
{
- _window.Dispose();
+ _window.Close();
_window = null;
}
}
CharacterButton.OnPressed += CharacterButtonPressed;
+ }
- if (_window == null)
+ private void DeactivateButton()
+ {
+ if (CharacterButton == null)
{
return;
}
- _window.OnClose += DeactivateButton;
- _window.OnOpen += ActivateButton;
+ CharacterButton.Pressed = false;
}
- private void DeactivateButton() => CharacterButton!.Pressed = false;
- private void ActivateButton() => CharacterButton!.Pressed = true;
+ private void ActivateButton()
+ {
+ if (CharacterButton == null)
+ {
+ return;
+ }
+
+ CharacterButton.Pressed = true;
+ }
private void CharacterUpdated(CharacterData data)
{
var objectiveLabel = new RichTextLabel
{
- StyleClasses = {StyleNano.StyleClassTooltipActionTitle}
+ StyleClasses = { StyleNano.StyleClassTooltipActionTitle }
};
objectiveLabel.SetMessage(objectiveText);
if (_window == null)
return;
- if (CharacterButton != null)
- {
- CharacterButton.SetClickPressed(!_window.IsOpen);
- }
+ CharacterButton?.SetClickPressed(!_window.IsOpen);
if (_window.IsOpen)
{