mirror of
https://github.com/DeltaV-Station/Delta-v.git
synced 2026-10-04 05:17:28 +00:00
TriggerOnIngested (#41875)
* init * nobody will ever know i copy paste * i hate these names * comment --------- Co-authored-by: iaada <iaada@users.noreply.github.com>
This commit is contained in:
committed by
BarryNorfolk
co-authored by
iaada
parent
11c1ebcc8f
commit
f34424d9cd
@@ -0,0 +1,23 @@
|
||||
using Content.Shared.Nutrition;
|
||||
using Content.Shared.Trigger.Components.Triggers;
|
||||
|
||||
namespace Content.Shared.Trigger.Systems;
|
||||
|
||||
public sealed partial class TriggerOnIngestedSystem : TriggerOnXSystem
|
||||
{
|
||||
public override void Initialize()
|
||||
{
|
||||
base.Initialize();
|
||||
|
||||
SubscribeLocalEvent<TriggerOnIngestedComponent, IngestedEvent>(OnIngested);
|
||||
}
|
||||
|
||||
private void OnIngested(Entity<TriggerOnIngestedComponent> ent, ref IngestedEvent args)
|
||||
{
|
||||
// args.Target is the entity being fed, while args.User is the entity doing the feeding.
|
||||
// Since they are not always equal (feeding someone by force, for example) we use a bool to decide which one is the trigger user.
|
||||
var user = ent.Comp.EatingIsUser ? args.Target : args.User;
|
||||
|
||||
Trigger.Trigger(ent.Owner, user, ent.Comp.KeyOut);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user