1
0

KeyBindTag.cs 642 B

12345678910111213141516171819202122232425
  1. using JetBrains.Annotations;
  2. using Robust.Client.Input;
  3. using Robust.Client.UserInterface.RichText;
  4. using Robust.Shared.Utility;
  5. namespace Content.Client.Guidebook.Richtext;
  6. [UsedImplicitly]
  7. public sealed class KeyBindTag : IMarkupTag
  8. {
  9. [Dependency] private readonly IInputManager _inputManager = default!;
  10. public string Name => "keybind";
  11. public string TextBefore(MarkupNode node)
  12. {
  13. if (!node.Value.TryGetString(out var keyBindName))
  14. return "";
  15. if (!_inputManager.TryGetKeyBinding(keyBindName, out var binding))
  16. return keyBindName;
  17. return binding.GetKeyString();
  18. }
  19. }