diff --git a/Content.Client/_RMC14/Mentor/StaffHelpUIController.cs b/Content.Client/_RMC14/Mentor/StaffHelpUIController.cs index 58359c4b475..67dd0251ef1 100644 --- a/Content.Client/_RMC14/Mentor/StaffHelpUIController.cs +++ b/Content.Client/_RMC14/Mentor/StaffHelpUIController.cs @@ -173,7 +173,12 @@ public void ToggleWindow() var time1 = _messages.GetValueOrDefault(player1.SessionId); var time2 = _messages.GetValueOrDefault(player2.SessionId); if (time1 == null && time2 == null) - return 0; + { + return string.Compare( + GetCharacterOrUsername(player2), + GetCharacterOrUsername(player1), + StringComparison.OrdinalIgnoreCase); + } if (time1 == null) return -1; if (time2 == null) @@ -183,7 +188,8 @@ public void ToggleWindow() foreach (var player in playerList) { - MentorAddPlayerButton(player); + if (player.Connected) + MentorAddPlayerButton(player); } // DeltaV - End all players in chat sorted @@ -261,11 +267,9 @@ private void MentorAddPlayerButton(PlayerInfo player) */ //Default show player name if they don't have a character - var character = player.Username; + var character = GetCharacterOrUsername(player); var job = "Spectator"; - //Use Character and Job name if they exist. - if (!string.IsNullOrWhiteSpace(player.CharacterName)) - character = player.CharacterName; + //Use Job name if they exist. if (!string.IsNullOrWhiteSpace(player.StartingJob)) job = player.StartingJob; // DeltaV - End show char name and job if possible @@ -326,4 +330,12 @@ private void SetAHelpButtonPressed(bool pressed) if (_aHelp.GameAHelpButton != null) _aHelp.GameAHelpButton.Pressed = pressed; } + + //DeltaV Add player identity method + private string GetCharacterOrUsername(PlayerInfo player) + { + if (!string.IsNullOrWhiteSpace(player.CharacterName)) + return player.CharacterName; + return player.Username; + } }