+using Content.Shared.Whitelist;
+
namespace Content.Shared.Armor;
/// <summary>
[RegisterComponent]
public sealed partial class AllowSuitStorageComponent : Component
{
-
+ /// <summary>
+ /// Whitelist for what entities are allowed in the suit storage slot.
+ /// </summary>
+ [DataField]
+ public EntityWhitelist Whitelist = new()
+ {
+ Components = new[] {"Item"}
+ };
}
return false;
if (slotDefinition.DependsOnComponents is { } componentRegistry)
+ {
foreach (var (_, entry) in componentRegistry)
+ {
if (!HasComp(slotEntity, entry.Component.GetType()))
return false;
+
+ if (TryComp<AllowSuitStorageComponent>(slotEntity, out var comp) &&
+ _whitelistSystem.IsWhitelistFailOrNull(comp.Whitelist, itemUid))
+ return false;
+ }
+ }
}
var fittingInPocket = slotDefinition.SlotFlags.HasFlag(SlotFlags.POCKET) &&