| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- using Robust.Shared.Prototypes;
- using Robust.Shared.GameStates;
- using Content.Shared.Access.Components;
- using Content.Shared.Containers.ItemSlots;
- using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
- namespace Content.Shared.PDA
- {
- [RegisterComponent, NetworkedComponent]
- public sealed partial class PdaComponent : Component
- {
- public const string PdaIdSlotId = "PDA-id";
- public const string PdaPenSlotId = "PDA-pen";
- public const string PdaPaiSlotId = "PDA-pai";
- [DataField("idSlot")]
- public ItemSlot IdSlot = new();
- [DataField("penSlot")]
- public ItemSlot PenSlot = new();
- [DataField("paiSlot")]
- public ItemSlot PaiSlot = new();
- // Really this should just be using ItemSlot.StartingItem. However, seeing as we have so many different starting
- // PDA's and no nice way to inherit the other fields from the ItemSlot data definition, this makes the yaml much
- // nicer to read.
- [DataField("id", customTypeSerializer: typeof(PrototypeIdSerializer<EntityPrototype>))]
- public string? IdCard;
- [ViewVariables] public EntityUid? ContainedId;
- [ViewVariables] public bool FlashlightOn;
- [ViewVariables(VVAccess.ReadWrite)] public string? OwnerName;
- // The Entity that "owns" the PDA, usually a player's character.
- // This is useful when we are doing stuff like renaming a player and want to find their PDA to change the name
- // as well.
- [ViewVariables(VVAccess.ReadWrite)] public EntityUid? PdaOwner;
- [ViewVariables] public string? StationName;
- [ViewVariables] public string? StationAlertLevel;
- [ViewVariables] public Color StationAlertColor = Color.White;
- }
- }
|