DisposalTubeComponent.cs 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. using Content.Server.Disposal.Unit.EntitySystems;
  2. using Content.Shared.Damage;
  3. using Robust.Shared.Audio;
  4. using Robust.Shared.Containers;
  5. namespace Content.Server.Disposal.Tube.Components;
  6. [RegisterComponent]
  7. [Access(typeof(DisposalTubeSystem), typeof(DisposableSystem))]
  8. public sealed partial class DisposalTubeComponent : Component
  9. {
  10. [DataField]
  11. public string ContainerId = "DisposalTube";
  12. [ViewVariables]
  13. public bool Connected;
  14. [DataField]
  15. public SoundSpecifier ClangSound = new SoundPathSpecifier("/Audio/Effects/clang.ogg", AudioParams.Default.WithVolume(-5f));
  16. /// <summary>
  17. /// Container of entities that are currently inside this tube
  18. /// </summary>
  19. [ViewVariables]
  20. public Container Contents = default!;
  21. /// <summary>
  22. /// Damage dealt to containing entities on every turn
  23. /// </summary>
  24. [DataField, ViewVariables(VVAccess.ReadWrite)]
  25. public DamageSpecifier DamageOnTurn = new()
  26. {
  27. DamageDict = new()
  28. {
  29. { "Blunt", 0.0 },
  30. }
  31. };
  32. }