mirror of
https://github.com/WWhiteDreamProject/wwdpublic.git
synced 2026-04-17 21:48:58 +03:00
Uses the following Cherry-Picks: https://github.com/space-wizards/space-station-14/pull/26994 https://github.com/space-wizards/space-station-14/pull/26518 https://github.com/space-wizards/space-station-14/pull/26279 https://github.com/space-wizards/space-station-14/pull/24946 https://github.com/space-wizards/space-station-14/pull/27188 Requires: https://github.com/Simple-Station/Einstein-Engines/pull/535 https://github.com/Simple-Station/Einstein-Engines/pull/534 --------- Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com> Co-authored-by: Jake Huxell <JakeHuxell@pm.me> Co-authored-by: Tayrtahn <tayrtahn@gmail.com> Co-authored-by: 0x6273 <0x40@keemail.me> Co-authored-by: DEATHB4DEFEAT <zachcaffee@outlook.com>
38 lines
1.1 KiB
C#
38 lines
1.1 KiB
C#
using Content.Shared.Inventory;
|
|
using Robust.Shared.GameStates;
|
|
|
|
namespace Content.Shared.IdentityManagement.Components;
|
|
|
|
[RegisterComponent, NetworkedComponent]
|
|
public sealed partial class IdentityBlockerComponent : Component
|
|
{
|
|
[DataField]
|
|
public bool Enabled = true;
|
|
|
|
/// <summary>
|
|
/// What part of your face does this cover? Eyes, mouth, or full?
|
|
/// </summary>
|
|
[DataField]
|
|
public IdentityBlockerCoverage Coverage = IdentityBlockerCoverage.FULL;
|
|
}
|
|
|
|
public enum IdentityBlockerCoverage
|
|
{
|
|
NONE = 0,
|
|
MOUTH = 1 << 0,
|
|
EYES = 1 << 1,
|
|
FULL = MOUTH | EYES
|
|
}
|
|
|
|
/// <summary>
|
|
/// Raised on an entity and relayed to inventory to determine if its identity should be knowable.
|
|
/// </summary>
|
|
public sealed class SeeIdentityAttemptEvent : CancellableEntityEventArgs, IInventoryRelayEvent
|
|
{
|
|
// i.e. masks, helmets, or glasses.
|
|
public SlotFlags TargetSlots => SlotFlags.MASK | SlotFlags.HEAD | SlotFlags.EYES;
|
|
|
|
// cumulative coverage from each relayed slot
|
|
public IdentityBlockerCoverage TotalCoverage = IdentityBlockerCoverage.NONE;
|
|
}
|