OMRWeaponMechanics.cs
using Sandbox;
/// <summary>
/// How horizontal movement contributes to weapon spread.
/// LegacyThreshold preserves the pre-framework OMR behavior exactly.
/// ContinuousSpeed blends smoothly from settled to full moving spread.
/// </summary>
public enum OMRMovementAccuracyModel
{
LegacyThreshold,
ContinuousSpeed
}
/// <summary>
/// How gameplay recoil is chosen for each shot.
/// LegacyRandom preserves the current OMR random pitch/yaw ranges.
/// Pattern uses an authored sequence plus optional small random noise.
/// </summary>
public enum OMRGameplayRecoilModel
{
LegacyRandom,
Pattern
}
/// <summary>
/// Mechanical weapon action, intentionally independent from locomotion and ADS.
/// More states can be added when a real mechanic needs them without creating
/// combinations such as "AimingWhileSlidingWhileReloading".
/// </summary>
public enum OMRWeaponActionState
{
Holstered,
Ready,
SprintToFire,
Reloading,
Cycling,
Deploying
}