using Content.Shared.Abilities.Psionics; using Content.Client.Chat.Managers; using Robust.Client.Player; namespace Content.Client.Chat { public sealed class PsionicChatUpdateSystem : EntitySystem { [Dependency] private readonly IChatManager _chatManager = default!; [Dependency] private readonly IPlayerManager _playerManager = default!; public override void Initialize() { base.Initialize(); SubscribeLocalEvent(OnInit); SubscribeLocalEvent(OnRemove); } public PsionicComponent? Player => CompOrNull(_playerManager.LocalPlayer?.ControlledEntity); public bool IsPsionic => Player != null; private void OnInit(EntityUid uid, PsionicComponent component, ComponentInit args) { _chatManager.UpdatePermissions(); } private void OnRemove(EntityUid uid, PsionicComponent component, ComponentRemove args) { _chatManager.UpdatePermissions(); } } }