MovedByPressureComponent.cs 890 B

12345678910111213141516171819202122232425262728293031
  1. namespace Content.Shared.Atmos.Components;
  2. // Unfortunately can't be friends yet due to magboots.
  3. [RegisterComponent]
  4. public sealed partial class MovedByPressureComponent : Component
  5. {
  6. public const float MoveForcePushRatio = 1f;
  7. public const float MoveForceForcePushRatio = 1f;
  8. public const float ProbabilityOffset = 25f;
  9. public const float ProbabilityBasePercent = 10f;
  10. public const float ThrowForce = 100f;
  11. /// <summary>
  12. /// Accumulates time when yeeted by high pressure deltas.
  13. /// </summary>
  14. [DataField]
  15. public float Accumulator;
  16. [DataField]
  17. public bool Enabled { get; set; } = true;
  18. [DataField]
  19. public float PressureResistance { get; set; } = 1f;
  20. [DataField]
  21. public float MoveResist { get; set; } = 100f;
  22. [ViewVariables(VVAccess.ReadWrite)]
  23. public int LastHighPressureMovementAirCycle { get; set; } = 0;
  24. }