namespace Content.Server.Atmos
{
public abstract class PressureEvent : EntityEventArgs
{
///
/// The environment pressure.
///
public float Pressure { get; }
///
/// The modifier for the apparent pressure.
/// This number will be added to the environment pressure for calculation purposes.
/// It can be negative to reduce the felt pressure, or positive to increase it.
///
///
/// Do not set this directly. Add to it, or subtract from it to modify it.
///
public float Modifier { get; set; } = 0f;
///
/// The multiplier for the apparent pressure.
/// The environment pressure will be multiplied by this for calculation purposes.
///
///
/// Do not set, add to or subtract from this directly. Multiply this by your multiplier only.
///
public float Multiplier { get; set; } = 1f;
protected PressureEvent(float pressure)
{
Pressure = pressure;
}
}
public sealed class LowPressureEvent : PressureEvent
{
public LowPressureEvent(float pressure) : base(pressure) { }
}
public sealed class HighPressureEvent : PressureEvent
{
public HighPressureEvent(float pressure) : base(pressure) { }
}
}