if (!Resolve(uid, ref component))
return;
+ base.Reclaim(uid, item, completion, component);
+
var xform = Transform(uid);
SpawnMaterialsFromComposition(uid, item, completion * component.Efficiency, xform: xform);
using Content.Shared.Whitelist;
using Robust.Shared.Audio;
using Robust.Shared.GameStates;
-using Robust.Shared.Prototypes;
using Robust.Shared.Serialization;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
{
SubscribeLocalEvent<MaterialReclaimerComponent, ComponentGetState>(OnGetState);
SubscribeLocalEvent<MaterialReclaimerComponent, ComponentHandleState>(OnHandleState);
+ SubscribeLocalEvent<MaterialReclaimerComponent, ComponentShutdown>(OnShutdown);
SubscribeLocalEvent<MaterialReclaimerComponent, EntityUnpausedEvent>(OnUnpaused);
SubscribeLocalEvent<MaterialReclaimerComponent, ExaminedEvent>(OnExamined);
SubscribeLocalEvent<MaterialReclaimerComponent, GotEmaggedEvent>(OnEmagged);
component.ItemsProcessed = state.ItemsProcessed;
}
+ private void OnShutdown(EntityUid uid, MaterialReclaimerComponent component, ComponentShutdown args)
+ {
+ component.Stream?.Stop();
+ }
+
private void OnUnpaused(EntityUid uid, MaterialReclaimerComponent component, ref EntityUnpausedEvent args)
{
component.NextSound += args.PausedTime;