DamageEntity.cs 632 B

1234567891011121314151617181920212223
  1. using Content.Shared.Construction;
  2. using Content.Shared.Damage;
  3. using Content.Shared.Damage.Systems;
  4. namespace Content.Server.Construction.Completions;
  5. /// <summary>
  6. /// Damage the entity on step completion.
  7. /// </summary>
  8. [DataDefinition]
  9. public sealed partial class DamageEntity : IGraphAction
  10. {
  11. /// <summary>
  12. /// Damage to deal to the entity.
  13. /// </summary>
  14. [DataField]
  15. public DamageSpecifier Damage;
  16. public void PerformAction(EntityUid uid, EntityUid? userUid, IEntityManager entityManager)
  17. {
  18. entityManager.System<DamageableSystem>().TryChangeDamage(uid, Damage, origin: userUid);
  19. }
  20. }