2019-09-01 22:57:22 +02:00
|
|
|
using System.Collections.Generic;
|
2021-12-26 17:07:28 +13:00
|
|
|
using Content.Shared.Access.Systems;
|
2021-10-22 05:31:07 +03:00
|
|
|
using Robust.Shared.Analyzers;
|
2019-09-01 22:57:22 +02:00
|
|
|
using Robust.Shared.GameObjects;
|
2021-03-05 01:08:38 +01:00
|
|
|
using Robust.Shared.Serialization.Manager.Attributes;
|
2021-12-01 00:40:46 +11:00
|
|
|
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Set;
|
2019-09-01 22:57:22 +02:00
|
|
|
using Robust.Shared.ViewVariables;
|
|
|
|
|
|
2021-12-26 17:07:28 +13:00
|
|
|
namespace Content.Shared.Access.Components
|
2019-09-01 22:57:22 +02:00
|
|
|
{
|
2020-06-03 11:46:59 +02:00
|
|
|
/// <summary>
|
|
|
|
|
/// Simple mutable access provider found on ID cards and such.
|
|
|
|
|
/// </summary>
|
2019-09-01 22:57:22 +02:00
|
|
|
[RegisterComponent]
|
2021-10-22 05:31:07 +03:00
|
|
|
[Friend(typeof(AccessSystem))]
|
2022-02-11 19:01:14 -07:00
|
|
|
public sealed class AccessComponent : Component
|
2019-09-01 22:57:22 +02:00
|
|
|
{
|
2021-12-01 00:40:46 +11:00
|
|
|
[DataField("tags", customTypeSerializer: typeof(PrototypeIdHashSetSerializer<AccessLevelPrototype>))]
|
2021-10-22 05:31:07 +03:00
|
|
|
public HashSet<string> Tags = new();
|
2022-02-11 19:01:14 -07:00
|
|
|
|
|
|
|
|
[DataField("groups", customTypeSerializer: typeof(PrototypeIdHashSetSerializer<AccessGroupPrototype>))]
|
|
|
|
|
public HashSet<string> Groups = new();
|
2019-09-01 22:57:22 +02:00
|
|
|
}
|
|
|
|
|
}
|