Files
tbd-station-14/Content.Shared/IdentityManagement/TryGetIdentityShortInfoEvent.cs
Fildrance 6380a9adca feat: now when research is unlocked in console, approver of reasearch is radio-ed too (#31170)
* feat: now when research is unlocked in console, approver of reasearch is radio-ed too

* refactor: now most of events that require actor name to be radio-ed or logged use TryGetIdentityShortInfoEvent which is subscibed by id-card system and borg system (to work for both carbon and synthetic life-forms)

* refactor: moved TryGetIdentityShortInfoEvent on id card system to shared, fixed cargo cent-com-originated orders

* remove unused check

* refactor: decoupled systems from IdCardSystem (those that are not dependent on it anymore)

* refactor: removed unuseed usings

* feat: emagged cargo/research consoles wont radio messages on buy/research confirm anymore

---------

Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
2024-09-03 23:01:38 +10:00

33 lines
1.2 KiB
C#

namespace Content.Shared.IdentityManagement;
/// <summary>
/// Event of attempt to collect actor full title - full name + job from id card for employee or entity name for borgs.
/// </summary>
public sealed class TryGetIdentityShortInfoEvent(EntityUid? whileInteractingWith, EntityUid forActor, bool forLogging = false) : HandledEntityEventArgs
{
/// <summary>
/// Full name of <see cref="ForActor"/>, with JobTitle.
/// Can be null if no system could find actor name / job.
/// </summary>
public string? Title;
/// <summary>
/// Entity for interacting with which title should be collected.
/// Could be used to black-out name of people when announcing actions
/// on e-magged devices.
/// </summary>
public readonly EntityUid? WhileInteractingWith = whileInteractingWith;
/// <summary>
/// Actor for whom title should be collected.
/// </summary>
public readonly EntityUid ForActor = forActor;
/// <summary>
/// Marker that title info was requested for access logging.
/// Is required as event handlers can determine, if they don't need
/// to place title info due to access logging restrictions.
/// </summary>
public readonly bool RequestForAccessLogging = forLogging;
}