InjectOnHitComponent.cs 849 B

12345678910111213141516171819202122232425262728293031
  1. // SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
  2. // SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
  3. // SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
  4. //
  5. // SPDX-License-Identifier: AGPL-3.0-or-later
  6. using Content.Shared.Chemistry.Reagent;
  7. using Robust.Shared.Audio;
  8. namespace Content.Shared._Shitmed.OnHit;
  9. [RegisterComponent]
  10. public sealed partial class InjectOnHitComponent : Component
  11. {
  12. [DataField("reagents")]
  13. public List<ReagentQuantity> Reagents;
  14. [DataField("sound")]
  15. public SoundSpecifier? Sound;
  16. [DataField("limit")]
  17. public float? ReagentLimit;
  18. [DataField]
  19. public bool NeedsRestrain;
  20. [DataField]
  21. public int InjectionDelay = 10000;
  22. }
  23. [ByRefEvent]
  24. public record struct InjectOnHitAttemptEvent(bool Cancelled);