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;
|
2021-11-10 13:26:25 +01:00
|
|
|
using Robust.Client.UserInterface.Controls;
|
2021-11-12 19:46:05 +01:00
|
|
|
using Robust.Shared.IoC;
|
2021-11-10 13:26:25 +01:00
|
|
|
|
|
|
|
|
namespace Content.Client.Administration
|
|
|
|
|
{
|
2022-02-16 00:23:23 -07:00
|
|
|
public sealed partial class AdminSystem
|
2021-11-10 13:26:25 +01:00
|
|
|
{
|
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!;
|
2021-11-10 13:26:25 +01:00
|
|
|
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();
|
2021-11-10 13:26:25 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void AdminOverlayOn(BaseButton.ButtonEventArgs? _ = null)
|
|
|
|
|
{
|
|
|
|
|
if (!_overlayManager.HasOverlay<AdminNameOverlay>())
|
|
|
|
|
_overlayManager.AddOverlay(_adminNameOverlay);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void AdminOverlayOff(BaseButton.ButtonEventArgs? _ = null)
|
|
|
|
|
{
|
|
|
|
|
_overlayManager.RemoveOverlay<AdminNameOverlay>();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|