using Content.Shared.Mind;
using Content.Shared.Nutrition.EntitySystems;
using Content.Shared.Power;
+using Content.Shared.Stacks;
using Robust.Server.GameObjects;
using Robust.Shared.Player;
using Robust.Shared.Prototypes;
if (!Resolve(item, ref composition, false))
return;
+ // If more of these checks are needed, use an event instead
+ var modifier = CompOrNull<StackComponent>(item)?.Count ?? 1.0f;
+
foreach (var (material, amount) in composition.MaterialComposition)
{
- var outputAmount = (int) (amount * efficiency);
+ var outputAmount = (int) (amount * efficiency * modifier);
_materialStorage.TryChangeMaterialAmount(reclaimer, material, outputAmount, storage);
}