using Content.Shared.Placeable; namespace Content.Server._CP14.Workbench; public sealed partial class CP14WorkbenchSystem { private void InitProviders() { SubscribeLocalEvent(OnGetResource); } private void OnGetResource(Entity ent, ref CP14WorkbenchGetResourcesEvent args) { if (!TryComp(ent, out var placer)) return; args.AddResources(placer.PlacedEntities); } } public sealed class CP14WorkbenchGetResourcesEvent : EntityEventArgs { public HashSet Resources { get; private set; } = new(); public void AddResource(EntityUid resource) { Resources.Add(resource); } public void AddResources(IEnumerable resources) { foreach (var resource in resources) { Resources.Add(resource); } } }