1
0

ThiefBackpackBoundUserInterface.cs 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. using Content.Shared.Thief;
  2. using JetBrains.Annotations;
  3. using Robust.Client.GameObjects;
  4. using Robust.Client.UserInterface;
  5. namespace Content.Client.Thief;
  6. [UsedImplicitly]
  7. public sealed class ThiefBackpackBoundUserInterface : BoundUserInterface
  8. {
  9. private ThiefBackpackMenu? _window;
  10. public ThiefBackpackBoundUserInterface(EntityUid owner, Enum uiKey) : base(owner, uiKey) { }
  11. protected override void Open()
  12. {
  13. base.Open();
  14. _window = this.CreateWindow<ThiefBackpackMenu>();
  15. _window.OnApprove += SendApprove;
  16. _window.OnSetChange += SendChangeSelected;
  17. }
  18. protected override void UpdateState(BoundUserInterfaceState state)
  19. {
  20. base.UpdateState(state);
  21. if (state is not ThiefBackpackBoundUserInterfaceState current)
  22. return;
  23. _window?.UpdateState(current);
  24. }
  25. public void SendChangeSelected(int setNumber)
  26. {
  27. SendMessage(new ThiefBackpackChangeSetMessage(setNumber));
  28. }
  29. public void SendApprove()
  30. {
  31. SendMessage(new ThiefBackpackApproveMessage());
  32. }
  33. }