Files
Delta-v/Content.Shared/Players/ContentPlayerData.cs
T
DisposableCrewmember42andpathetic meowmeow e9b74fbef4 feat: OOC/LOOC/Deadchat muting (#5858)
* feat: LOOC/OOC/Deadchat muting

* refactor: split OocMuteCommands.cs into 3 files

* tweak: use proper admin logging

* refactor: remove unused loc args

* feat: one mute command, channel as argument

- properly marked target player in admin log so it actually alerts.

* refactor: completion options made named constant, used in error message

* tweak: display supported channels in help too

* fix: pass command to help string again

* style: add whitespace

Co-authored-by: pathetic meowmeow <uhhadd@gmail.com>
Signed-off-by: DisposableCrewmember42 <disposablecrewmember42@proton.me>

---------

Signed-off-by: DisposableCrewmember42 <disposablecrewmember42@proton.me>
Co-authored-by: pathetic meowmeow <uhhadd@gmail.com>
2026-05-28 12:56:19 -04:00

57 lines
1.7 KiB
C#

using Content.Shared.Administration;
using Content.Shared.GameTicking;
using Content.Shared.Mind;
using Robust.Shared.Network;
namespace Content.Shared.Players;
/// <summary>
/// Content side for all data that tracks a player session.
/// Use <see cref="PlaIPlayerDatarver.Player.IPlayerData)"/> to retrieve this from an <see cref="PlayerData"/>.
/// <remarks>Not currently used on the client.</remarks>
/// </summary>
public sealed class ContentPlayerData
{
/// <summary>
/// The session ID of the player owning this data.
/// </summary>
[ViewVariables]
public NetUserId UserId { get; }
/// <summary>
/// This is a backup copy of the player name stored on connection.
/// This is useful in the event the player disconnects.
/// </summary>
[ViewVariables]
public string Name { get; }
/// <summary>
/// The currently occupied mind of the player owning this data.
/// DO NOT DIRECTLY SET THIS UNLESS YOU KNOW WHAT YOU'RE DOING.
/// </summary>
[ViewVariables, Access(typeof(SharedMindSystem), typeof(SharedGameTicker))]
public EntityUid? Mind { get; set; }
/// <summary>
/// If true, the admin will not show up in adminwho except to admins with the <see cref="AdminFlags.Stealth"/> flag.
/// </summary>
public bool Stealthed { get; set; }
/// <summary>
/// Nyanotrasen - Are they whitelisted? Lets us avoid async.
/// </summary>
[ViewVariables]
public bool Whitelisted { get; set; }
// DeltaV - OOC muting START
[ViewVariables]
public bool OocMuted { get; set; }
// DeltaV END
public ContentPlayerData(NetUserId userId, string name)
{
UserId = userId;
Name = name;
}
}