using Content.Shared.Nutrition.Components; namespace Content.Shared.Nutrition.EntitySystems; /// /// /// public sealed partial class SatiationGrantSystem : EntitySystem { [Dependency] private SatiationSystem _satiation = default!; [SubscribeLocalEvent] private void OnMapInit(Entity ent, ref MapInitEvent args) { foreach (var satiation in ent.Comp.Satiation) { if (!HasComp(ent.Owner)) continue; //Corvax IPC-fix _satiation.AddSatiation(ent.Owner, satiation.Key, satiation.Value); } } [SubscribeLocalEvent] private void OnShutdown(Entity ent, ref ComponentShutdown args) { if (!ent.Comp.RemoveOnShutdown) return; foreach (var satiation in ent.Comp.Satiation) { _satiation.RemoveSatiationType(ent.Owner, satiation.Key); } } }