private void OnOpenTaggerUIAttempt(EntityUid uid, DisposalTaggerComponent router, ActivatableUIOpenAttemptEvent args) { if (!TryComp<HandsComponent>(args.User, out var hands)) { uid.PopupMessage(args.User, Loc.GetString("disposal-tagger-window-activate-no-hands")); return; } var activeHandEntity = hands.ActiveHandEntity; if (activeHandEntity != null) { args.Cancel(); } }
private void AddOpenUIVerbs(EntityUid uid, DisposalTaggerComponent component, GetVerbsEvent<InteractionVerb> args) { if (!args.CanAccess || !args.CanInteract) return; if (!EntityManager.TryGetComponent<ActorComponent?>(args.User, out var actor)) return; var player = actor.PlayerSession; InteractionVerb verb = new(); verb.Text = Loc.GetString("configure-verb-get-data-text"); verb.IconTexture = "/Textures/Interface/VerbIcons/settings.svg.192dpi.png"; verb.Act = () => component.OpenUserInterface(actor); args.Verbs.Add(verb); }