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);
}
}
}