using Content.Server.NPC.Systems;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Set;
namespace Content.Server.NPC.Components
{
[RegisterComponent]
[Access(typeof(NpcFactionSystem))]
public sealed partial class NpcFactionMemberComponent : Component
{
///
/// Factions this entity is a part of.
///
[ViewVariables(VVAccess.ReadWrite),
DataField("factions", customTypeSerializer:typeof(PrototypeIdHashSetSerializer))]
public HashSet Factions = new();
///
/// Cached friendly factions.
///
[ViewVariables]
public readonly HashSet FriendlyFactions = new();
///
/// Cached hostile factions.
///
[ViewVariables]
public readonly HashSet HostileFactions = new();
// Nyano - Summary - Begin modified code block: support for specific entities to be friendly.
///
/// Permanently friendly specific entities. Our summoner, etc.
/// Would like to separate. Could I do that by extending this method, maybe?
///
public HashSet ExceptionalFriendlies = new();
// Nyano - End modified code block.
}
}