tf-demo-parser 0.6.4

parser for tf2 demo files
Documentation
use num_enum::TryFromPrimitive;
use serde::{Deserialize, Serialize};

#[derive(Copy, Clone, PartialEq, Eq, Debug, Serialize, Deserialize, TryFromPrimitive)]
#[repr(u8)]
pub enum PlayerCondition {
    Aiming = 0,
    Zoomed = 1,
    Disguising = 2,
    Disguised = 3,
    Stealthed = 4,
    Invulnerable = 5,
    Teleported = 6,
    Taunting = 7,
    InvulnerableWearingOff = 8,
    StealthedBlink = 9,
    SelectedToTeleport = 10,
    CritBoosted = 11,
    TmpDamageBonus = 12,
    FeignDeath = 13,
    Phase = 14,
    Stunned = 15,
    OffensiveBuff = 16,
    ShieldCharge = 17,
    DemoBuff = 18,
    EnergyBuff = 19,
    RadiusHeal = 20,
    HealthBuff = 21,
    Burning = 22,
    HealthOverHealed = 23,
    Urine = 24,
    Bleeding = 25,
    DefensiveBuff = 26,
    MadMilk = 27,
    MegaHeal = 28,
    RegenOnDamageBuff = 29,
    MarkedForDeath = 30,
    NoHealingDamageBuff = 31,
    SpeedBoost = 32,
    CritBoostedPumpkin = 33,
    CritBoostedUserBuff = 34,
    CritBoostedDemoCharge = 35,
    SodaPopperHype = 36,
    CritBoostedFirstBlood = 37,
    CritBoostedBonusTime = 38,
    CritBoostedCtfCapture = 39,
    CritBoostedOnKill = 40,
    CannotSwitchFromMelee = 41,
    DefenseBuffNoCritBlock = 42,
    Reprogrammed = 43,
    CritBoostedRageBuff = 44,
    DefenseBuffHigh = 45,
    SniperChargeRageBuff = 46,
    DisguiseWearingOff = 47,
    MarkedForDeathSilent = 48,
    DisguisedAsDispenser = 49,
    Sapped = 50,
    InvulnerableHideUnlessDamaged = 51,
    InvulnerableUserBuff = 52,
    HalloweenBombHead = 53,
    HalloweenThriller = 54,
    RadiusHealOnDamage = 55,
    CritBoostedCardEffect = 56,
    InvulnerableCardEffect = 57,
    MedigunUberBulletResist = 58,
    MedigunUberBlastResist = 59,
    MedigunUberFireResist = 60,
    MedigunSmallBulletResist = 61,
    MedigunSmallBlastResist = 62,
    MedigunSmallFireResist = 63,
    StealthedUserBuff = 64,
    MedigunDebuff = 65,
    StealthedUserBuffFading = 66,
    BulletImmune = 67,
    BlastImmune = 68,
    FireImmune = 69,
    PreventDeath = 70,
    MvmBotStunRadiowave = 71,
    HalloweenSpeedBoost = 72,
    HalloweenQuickHeal = 73,
    HalloweenGiant = 74,
    HalloweenTiny = 75,
    HalloweenInHell = 76,
    HalloweenGhostMode = 77,
    MiniCritBoostedOnKill = 78,
    ObscuredSmoke = 79,
    ParachuteActive = 80,
    BlastJumping = 81,
    HalloweenKart = 82,
    HalloweenKartDash = 83,
    BalloonHead = 84,
    MeleeOnly = 85,
    SwimmingCurse = 86,
    FreezeInput = 87,
    HalloweenKartCage = 88,
    RuneStrength = 90,
    RuneHaste = 91,
    RuneRegen = 92,
    RuneResist = 93,
    RuneVampire = 94,
    RuneReflect = 95,
    RunePrecision = 96,
    RuneAgility = 97,
    GrapplingHook = 98,
    GrapplingHookSafeFall = 99,
    GrapplingHookLatched = 100,
    GrapplingHookBleeding = 101,
    AfterburnImmune = 102,
    RuneKnockout = 103,
    RuneImbalance = 104,
    CritBoostedRuneTemp = 105,
    PasstimeInterception = 106,
    SwimmingNoEffects = 107,
    PURGATORY = 108,
    RuneKing = 109,
    RunePlague = 110,
    RuneSupernova = 111,
    PLAGUE = 112,
    KingBuffed = 113,
    TeamGlows = 114,
    KnockedIntoAir = 115,
    CompetitiveWinner = 116,
    CompetitiveLoser = 117,
    HealingDebuff = 118,
    PasstimePenaltyDebuff = 119,
    GrappledToPlayer = 120,
    GrappledByPlayer = 121,
    ParachuteDeployed = 122,
    GAS = 123,
    BurningPyro = 124,
    RocketPack = 125,
    LostFooting = 126,
    AirCurrent = 127,
    HalloweenHellHeal = 128,
    PowerUpModeDominant = 129,
    ImmuneToPushback = 130,
}

impl PlayerCondition {
    pub const MAX: PlayerCondition = PlayerCondition::ImmuneToPushback;
}