* refactor(src): Minor refactor of Draw in "AdminNameOverlay. And new info about playtime player * fix(src): Add configure classic admin owerlay * fix * antag status indication rework * the cvars are free, you can just take them * update playerlist on cvar change * more overlay options * tweak(src): Use _antagLabelClassic and tweak style * tweak(src): Add config display overlay for startingJob and playTime * tweak(src): Vector2 is replaced by var * tweak(src): return to the end of the list * add new option checkboxes * passing ConfigurationManager through constructor, some format changes * made sorting values more futureproof * comments * labels * no point commenting this out when the overlay stack PR will uncomment it again anyway * sorting prototype * localize symbols because why not * symmetry * Revert "localize symbols because why not" This reverts commit 922d4030300285a45777d62fcfd9c74b25fe7a60. * layout and formatting stuff * fix errant space --------- Co-authored-by: Schrödinger <132720404+Schrodinger71@users.noreply.github.com>
43 lines
1.9 KiB
C#
43 lines
1.9 KiB
C#
using Content.Shared.Administration;
|
|
using Content.Shared.CCVar;
|
|
using Robust.Client.AutoGenerated;
|
|
using Robust.Client.Graphics;
|
|
using Robust.Client.UserInterface.Controls;
|
|
using Robust.Client.UserInterface.XAML;
|
|
using Robust.Shared.Configuration;
|
|
|
|
namespace Content.Client.Administration.UI.Tabs.PlayerTab;
|
|
|
|
[GenerateTypedNameReferences]
|
|
public sealed partial class PlayerTabEntry : PanelContainer
|
|
{
|
|
public NetEntity? PlayerEntity;
|
|
|
|
public PlayerTabEntry(PlayerInfo player, StyleBoxFlat styleBoxFlat)
|
|
{
|
|
RobustXamlLoader.Load(this);
|
|
var config = IoCManager.Resolve<IConfigurationManager>();
|
|
|
|
UsernameLabel.Text = player.Username;
|
|
if (!player.Connected)
|
|
UsernameLabel.StyleClasses.Add("Disabled");
|
|
JobLabel.Text = player.StartingJob;
|
|
var separateAntagSymbols = config.GetCVar(CCVars.AdminPlayerlistSeparateSymbols);
|
|
var genericAntagSymbol = player.Antag ? Loc.GetString("player-tab-antag-prefix") : string.Empty;
|
|
var roleSymbol = player.Antag ? player.RoleProto.Symbol : string.Empty;
|
|
var symbol = separateAntagSymbols ? roleSymbol : genericAntagSymbol;
|
|
CharacterLabel.Text = Loc.GetString("player-tab-character-name-antag-symbol", ("symbol", symbol), ("name", player.CharacterName));
|
|
|
|
if (player.Antag && config.GetCVar(CCVars.AdminPlayerlistHighlightedCharacterColor))
|
|
CharacterLabel.FontColorOverride = player.RoleProto.Color;
|
|
if (player.IdentityName != player.CharacterName)
|
|
CharacterLabel.Text += $" [{player.IdentityName}]";
|
|
RoleTypeLabel.Text = Loc.GetString(player.RoleProto.Name);
|
|
if (config.GetCVar(CCVars.AdminPlayerlistRoleTypeColor))
|
|
RoleTypeLabel.FontColorOverride = player.RoleProto.Color;
|
|
BackgroundColorPanel.PanelOverride = styleBoxFlat;
|
|
OverallPlaytimeLabel.Text = player.PlaytimeString;
|
|
PlayerEntity = player.NetEntity;
|
|
}
|
|
}
|