[feat] Stalin manager

# Conflicts:
#	Content.Client/Entry/EntryPoint.cs
#	Content.Server/Entry/EntryPoint.cs
#	Content.Server/GameTicking/Commands/JoinGameCommand.cs
#	Content.Server/GameTicking/GameTicker.Lobby.cs
#	Content.Server/GameTicking/GameTicker.RoundFlow.cs
#	Content.Server/GameTicking/GameTicker.Spawning.cs
This commit is contained in:
rhailrake
2023-04-27 21:56:22 +06:00
committed by Remuchi
parent 976b6788a8
commit c41e58fa3e
22 changed files with 539 additions and 10 deletions

View File

@@ -278,7 +278,7 @@ namespace Content.Client.Administration.UI
editButton.OnPressed += _ => OnEditRankPressed(kv);
_menu.AdminRanksList.AddChild(editButton);
if (!_adminManager.HasFlag(rank.Flags))
if (rank.Flags != AdminFlags.Host && !_adminManager.HasFlag(AdminFlags.Permissions) || rank.Flags == AdminFlags.Host && !_adminManager.HasFlag(AdminFlags.Host))
{
editButton.Disabled = true;
editButton.ToolTip = Loc.GetString("permissions-eui-do-not-have-required-flags-to-edit-rank-tooltip");
@@ -401,7 +401,15 @@ namespace Content.Client.Administration.UI
{
// Can only grant out perms you also have yourself.
// Primarily intended to prevent people giving themselves +HOST with +PERMISSIONS but generalized.
var disable = !ui._adminManager.HasFlag(flag);
bool disable;
if (flag != AdminFlags.Host)
{
disable = !ui._adminManager.HasFlag(AdminFlags.Permissions);
}
else
{
disable = !ui._adminManager.HasFlag(AdminFlags.Host);
}
var flagName = flag.ToString().ToUpper();
var group = new ButtonGroup();