Add job column to PlayerTab (#6181)
This commit is contained in:
@@ -51,6 +51,7 @@ namespace Content.Client.Administration.UI.Tabs.PlayerTab
|
|||||||
|
|
||||||
PlayerList.AddChild(new PlayerTabEntry("Username",
|
PlayerList.AddChild(new PlayerTabEntry("Username",
|
||||||
"Character",
|
"Character",
|
||||||
|
"Job",
|
||||||
"Antagonist",
|
"Antagonist",
|
||||||
new StyleBoxFlat(altColor),
|
new StyleBoxFlat(altColor),
|
||||||
true));
|
true));
|
||||||
@@ -61,6 +62,7 @@ namespace Content.Client.Administration.UI.Tabs.PlayerTab
|
|||||||
{
|
{
|
||||||
var entry = new PlayerTabEntry(player.Username,
|
var entry = new PlayerTabEntry(player.Username,
|
||||||
player.CharacterName,
|
player.CharacterName,
|
||||||
|
player.StartingJob,
|
||||||
player.Antag ? "YES" : "NO",
|
player.Antag ? "YES" : "NO",
|
||||||
new StyleBoxFlat(useAltColor ? altColor : defaultColor),
|
new StyleBoxFlat(useAltColor ? altColor : defaultColor),
|
||||||
player.Connected);
|
player.Connected);
|
||||||
|
|||||||
@@ -6,12 +6,17 @@
|
|||||||
HorizontalExpand="True"
|
HorizontalExpand="True"
|
||||||
SeparationOverride="4">
|
SeparationOverride="4">
|
||||||
<Label Name="UsernameLabel"
|
<Label Name="UsernameLabel"
|
||||||
SizeFlagsStretchRatio="2"
|
SizeFlagsStretchRatio="3"
|
||||||
HorizontalExpand="True"
|
HorizontalExpand="True"
|
||||||
ClipText="True"/>
|
ClipText="True"/>
|
||||||
<customControls:VSeparator/>
|
<customControls:VSeparator/>
|
||||||
<Label Name="CharacterLabel"
|
<Label Name="CharacterLabel"
|
||||||
SizeFlagsStretchRatio="2"
|
SizeFlagsStretchRatio="3"
|
||||||
|
HorizontalExpand="True"
|
||||||
|
ClipText="True"/>
|
||||||
|
<customControls:VSeparator/>
|
||||||
|
<Label Name="JobLabel"
|
||||||
|
SizeFlagsStretchRatio="3"
|
||||||
HorizontalExpand="True"
|
HorizontalExpand="True"
|
||||||
ClipText="True"/>
|
ClipText="True"/>
|
||||||
<customControls:VSeparator/>
|
<customControls:VSeparator/>
|
||||||
|
|||||||
@@ -11,13 +11,14 @@ public partial class PlayerTabEntry : ContainerButton
|
|||||||
{
|
{
|
||||||
public EntityUid? PlayerUid;
|
public EntityUid? PlayerUid;
|
||||||
|
|
||||||
public PlayerTabEntry(string username, string character, string antagonist, StyleBox styleBox, bool connected)
|
public PlayerTabEntry(string username, string character, string job, string antagonist, StyleBox styleBox, bool connected)
|
||||||
{
|
{
|
||||||
RobustXamlLoader.Load(this);
|
RobustXamlLoader.Load(this);
|
||||||
|
|
||||||
UsernameLabel.Text = username;
|
UsernameLabel.Text = username;
|
||||||
if (!connected)
|
if (!connected)
|
||||||
UsernameLabel.StyleClasses.Add("Disabled");
|
UsernameLabel.StyleClasses.Add("Disabled");
|
||||||
|
JobLabel.Text = job;
|
||||||
CharacterLabel.Text = character;
|
CharacterLabel.Text = character;
|
||||||
AntagonistLabel.Text = antagonist;
|
AntagonistLabel.Text = antagonist;
|
||||||
BackgroundColorPanel.PanelOverride = styleBox;
|
BackgroundColorPanel.PanelOverride = styleBox;
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using System.Globalization;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using Content.Server.Administration.Managers;
|
using Content.Server.Administration.Managers;
|
||||||
using Content.Server.Players;
|
using Content.Server.Players;
|
||||||
@@ -112,11 +113,16 @@ namespace Content.Server.Administration
|
|||||||
if (session.AttachedEntity != null)
|
if (session.AttachedEntity != null)
|
||||||
username = EntityManager.GetComponent<MetaDataComponent>(session.AttachedEntity.Value).EntityName;
|
username = EntityManager.GetComponent<MetaDataComponent>(session.AttachedEntity.Value).EntityName;
|
||||||
|
|
||||||
var antag = session.ContentData()?.Mind?.AllRoles.Any(r => r.Antagonist) ?? false;
|
var mind = session.ContentData()?.Mind;
|
||||||
|
|
||||||
|
var job = mind?.AllRoles.FirstOrDefault(role => role is Job);
|
||||||
|
var startingRole = job != null ? CultureInfo.CurrentCulture.TextInfo.ToTitleCase(job.Name) : string.Empty;
|
||||||
|
|
||||||
|
var antag = mind?.AllRoles.Any(r => r.Antagonist) ?? false;
|
||||||
|
|
||||||
var connected = session.Status is SessionStatus.Connected or SessionStatus.InGame;
|
var connected = session.Status is SessionStatus.Connected or SessionStatus.InGame;
|
||||||
|
|
||||||
return new PlayerInfo(name, username, antag, session.AttachedEntity.GetValueOrDefault(), session.UserId,
|
return new PlayerInfo(name, username, startingRole, antag, session.AttachedEntity.GetValueOrDefault(), session.UserId,
|
||||||
connected);
|
connected);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,5 +6,5 @@ using Robust.Shared.Serialization;
|
|||||||
namespace Content.Shared.Administration
|
namespace Content.Shared.Administration
|
||||||
{
|
{
|
||||||
[Serializable, NetSerializable]
|
[Serializable, NetSerializable]
|
||||||
public record PlayerInfo(string Username, string CharacterName, bool Antag, EntityUid EntityUid, NetUserId SessionId, bool Connected);
|
public record PlayerInfo(string Username, string CharacterName, string StartingJob, bool Antag, EntityUid EntityUid, NetUserId SessionId, bool Connected);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user