Files
OldThink/Content.Client/Administration/AdminSystem.Overlay.cs

42 lines
1.3 KiB
C#
Raw Normal View History

2021-11-12 19:46:05 +01:00
using Content.Client.Administration.Managers;
2021-12-10 16:55:01 +11:00
using Robust.Client.Graphics;
using Robust.Client.UserInterface.Controls;
2021-11-12 19:46:05 +01:00
using Robust.Shared.IoC;
namespace Content.Client.Administration
{
public sealed partial class AdminSystem
{
2021-11-12 19:46:05 +01:00
[Dependency] private readonly IClientAdminManager _adminManager = default!;
2021-12-10 16:55:01 +11:00
[Dependency] private readonly IEyeManager _eyeManager = default!;
private AdminNameOverlay _adminNameOverlay = default!;
private void InitializeOverlay()
{
2021-12-10 16:55:01 +11:00
_adminNameOverlay = new AdminNameOverlay(this, _entityManager, _eyeManager, _resourceCache, _entityLookup);
2021-11-12 19:46:05 +01:00
_adminManager.AdminStatusUpdated += OnAdminStatusUpdated;
}
private void ShutdownOverlay()
{
_adminManager.AdminStatusUpdated -= OnAdminStatusUpdated;
}
private void OnAdminStatusUpdated()
{
AdminOverlayOff();
}
public void AdminOverlayOn(BaseButton.ButtonEventArgs? _ = null)
{
if (!_overlayManager.HasOverlay<AdminNameOverlay>())
_overlayManager.AddOverlay(_adminNameOverlay);
}
public void AdminOverlayOff(BaseButton.ButtonEventArgs? _ = null)
{
_overlayManager.RemoveOverlay<AdminNameOverlay>();
}
}
}