#[derive(Debug, PartialEq, Eq, Hash, Ord, PartialOrd, Copy, Clone)]
#[cfg_attr(feature = "serde", derive(serde::Deserialize, serde::Serialize))]
pub enum AuraMod {
None,
BindSight,
ModPossess,
PeriodicDamage,
Dummy,
ModConfuse,
ModCharm,
ModFear,
PeriodicHeal,
ModAttackspeed,
ModThreat,
ModTaunt,
ModStun,
ModDamageDone,
ModDamageTaken,
DamageShield,
ModStealth,
ModStealthDetect,
ModInvisibility,
ModInvisibilityDetect,
ObsModHealth,
ObsModPower,
ModResistance,
PeriodicTriggerSpell,
PeriodicEnergize,
ModPacify,
ModRoot,
ModSilence,
ReflectSpells,
ModStat,
ModSkill,
ModIncreaseSpeed,
ModIncreaseMountedSpeed,
ModDecreaseSpeed,
ModIncreaseHealth,
ModIncreaseEnergy,
ModShapeshift,
EffectImmunity,
StateImmunity,
SchoolImmunity,
DamageImmunity,
DispelImmunity,
ProcTriggerSpell,
ProcTriggerDamage,
TrackCreatures,
TrackResources,
Unknown46,
ModParryPercent,
PeriodicTriggerSpellFromClient,
ModDodgePercent,
ModCriticalHealingAmount,
ModBlockPercent,
ModWeaponCritPercent,
PeriodicLeech,
ModHitChance,
ModSpellHitChance,
Transform,
ModSpellCritChance,
ModIncreaseSwimSpeed,
ModDamageDoneCreature,
ModPacifySilence,
ModScale,
PeriodicHealthFunnel,
Unknown63,
PeriodicManaLeech,
ModCastingSpeedNotStack,
FeignDeath,
ModDisarm,
ModStalked,
SchoolAbsorb,
ExtraAttacks,
ModSpellCritChanceSchool,
ModPowerCostSchoolPct,
ModPowerCostSchool,
ReflectSpellsSchool,
ModLanguage,
FarSight,
MechanicImmunity,
Mounted,
ModDamagePercentDone,
ModPercentStat,
SplitDamagePct,
WaterBreathing,
ModBaseResistance,
ModRegen,
ModPowerRegen,
ChannelDeathItem,
ModDamagePercentTaken,
ModHealthRegenPercent,
PeriodicDamagePercent,
Unknown90,
ModDetectRange,
PreventsFleeing,
ModUnattackable,
InterruptRegen,
Ghost,
SpellMagnet,
ManaShield,
ModSkillTalent,
ModAttackPower,
AurasVisible,
ModResistancePct,
ModMeleeAttackPowerVersus,
ModTotalThreat,
WaterWalk,
FeatherFall,
Hover,
AddFlatModifier,
AddPctModifier,
AddTargetTrigger,
ModPowerRegenPercent,
AddCasterHitTrigger,
OverrideClassScripts,
ModRangedDamageTaken,
ModRangedDamageTakenPct,
ModHealing,
ModRegenDuringCombat,
ModMechanicResistance,
ModHealingPct,
Unknown119,
Untrackable,
Empathy,
ModOffhandDamagePct,
ModTargetResistance,
ModRangedAttackPower,
ModMeleeDamageTaken,
ModMeleeDamageTakenPct,
RangedAttackPowerAttackerBonus,
ModPossessPet,
ModSpeedAlways,
ModMountedSpeedAlways,
ModRangedAttackPowerVersus,
ModIncreaseEnergyPercent,
ModIncreaseHealthPercent,
ModManaRegenInterrupt,
ModHealingDone,
ModHealingDonePercent,
ModTotalStatPercentage,
ModMeleeHaste,
ForceReaction,
ModRangedHaste,
ModRangedAmmoHaste,
ModBaseResistancePct,
ModResistanceExclusive,
SafeFall,
ModPetTalentPoints,
AllowTamePetType,
MechanicImmunityMask,
RetainComboPoints,
ReducePushback,
ModShieldBlockvaluePct,
TrackStealthed,
ModDetectedRange,
SplitDamageFlat,
ModStealthLevel,
ModWaterBreathing,
ModReputationGain,
PetDamageMulti,
ModShieldBlockvalue,
NoPvpCredit,
ModAoeAvoidance,
ModHealthRegenInCombat,
PowerBurn,
ModCritDamageBonus,
Unknown164,
MeleeAttackPowerAttackerBonus,
ModAttackPowerPct,
ModRangedAttackPowerPct,
ModDamageDoneVersus,
ModCritPercentVersus,
DetectAmore,
ModSpeedNotStack,
ModMountedSpeedNotStack,
Unknown173,
ModSpellDamageOfStatPercent,
ModSpellHealingOfStatPercent,
SpiritOfRedemption,
AoeCharm,
ModDebuffResistance,
ModAttackerSpellCritChance,
ModFlatSpellDamageVersus,
Unknown181,
ModResistanceOfStatPercent,
ModCriticalThreat,
ModAttackerMeleeHitChance,
ModAttackerRangedHitChance,
ModAttackerSpellHitChance,
ModAttackerMeleeCritChance,
ModAttackerRangedCritChance,
ModRating,
ModFactionReputationGain,
UseNormalMovementSpeed,
ModMeleeRangedHaste,
MeleeSlow,
ModTargetAbsorbSchool,
ModTargetAbilityAbsorbSchool,
ModCooldown,
ModAttackerSpellAndWeaponCritChance,
Unknown198,
ModIncreasesSpellPctToHit,
ModXpPct,
Fly,
IgnoreCombatResult,
ModAttackerMeleeCritDamage,
ModAttackerRangedCritDamage,
ModSchoolCritDmgTaken,
ModIncreaseVehicleFlightSpeed,
ModIncreaseMountedFlightSpeed,
ModIncreaseFlightSpeed,
ModMountedFlightSpeedAlways,
ModVehicleSpeedAlways,
ModFlightSpeedNotStack,
ModRangedAttackPowerOfStatPercent,
ModRageFromDamageDealt,
Unknown214,
ArenaPreparation,
HasteSpells,
ModMeleeHaste2,
HasteRanged,
ModManaRegenFromStat,
ModRatingFromStat,
ModDetaunt,
Unknown222,
RaidProcFromCharge,
Unknown224,
RaidProcFromChargeWithValue,
PeriodicDummy,
PeriodicTriggerSpellWithValue,
DetectStealth,
ModAoeDamageAvoidance,
Unknown230,
ProcTriggerSpellWithValue,
MechanicDurationMod,
ChangeModelForAllHumanoids,
MechanicDurationModNotStack,
ModDispelResist,
ControlVehicle,
ModSpellDamageOfAttackPower,
ModSpellHealingOfAttackPower,
ModScale2,
ModExpertise,
ForceMoveForward,
ModSpellDamageFromHealing,
ModFaction,
ComprehendLanguage,
ModAuraDurationByDispel,
ModAuraDurationByDispelNotStack,
CloneCaster,
ModCombatResultChance,
ConvertRune,
ModIncreaseHealth2,
ModEnemyDodge,
ModSpeedSlowAll,
ModBlockCritChance,
ModDisarmOffhand,
ModMechanicDamageTakenPercent,
NoReagentUse,
ModTargetResistBySpellClass,
Unknown258,
ModHotPct,
ScreenEffect,
Phase,
AbilityIgnoreAurastate,
AllowOnlyAbility,
Unknown264,
Unknown265,
Unknown266,
ModImmuneAuraApplySchool,
ModAttackPowerOfStatPercent,
ModIgnoreTargetResist,
ModAbilityIgnoreTargetResist,
ModDamageFromCaster,
IgnoreMeleeReset,
XRay,
AbilityConsumeNoAmmo,
ModIgnoreShapeshift,
ModDamageDoneForMechanic,
ModMaxAffectedTargets,
ModDisarmRanged,
InitializeImages,
ModArmorPenetrationPct,
ModHonorGainPct,
ModBaseHealthPct,
ModHealingReceived,
Linked,
ModAttackPowerOfArmor,
AbilityPeriodicCrit,
DeflectSpells,
IgnoreHitDirection,
PreventDurabilityLoss,
ModCritPct,
ModXpQuestPct,
OpenStable,
OverrideSpells,
PreventRegeneratePower,
Unknown295,
SetVehicleId,
BlockSpellFamily,
Strangulate,
Unknown299,
ShareDamagePct,
SchoolHealAbsorb,
Unknown302,
ModDamageDoneVersusAurastate,
ModFakeInebriate,
ModMinimumSpeed,
Unknown306,
HealAbsorbTest,
ModCritChanceForCaster,
Unknown309,
ModCreatureAoeDamageAvoidance,
Unknown311,
Unknown312,
Unknown313,
PreventResurrection,
UnderwaterWalking,
PeriodicHaste,
}
impl AuraMod {
pub const fn as_int(&self) -> u32 {
match self {
Self::None => 0x0,
Self::BindSight => 0x1,
Self::ModPossess => 0x2,
Self::PeriodicDamage => 0x3,
Self::Dummy => 0x4,
Self::ModConfuse => 0x5,
Self::ModCharm => 0x6,
Self::ModFear => 0x7,
Self::PeriodicHeal => 0x8,
Self::ModAttackspeed => 0x9,
Self::ModThreat => 0xa,
Self::ModTaunt => 0xb,
Self::ModStun => 0xc,
Self::ModDamageDone => 0xd,
Self::ModDamageTaken => 0xe,
Self::DamageShield => 0xf,
Self::ModStealth => 0x10,
Self::ModStealthDetect => 0x11,
Self::ModInvisibility => 0x12,
Self::ModInvisibilityDetect => 0x13,
Self::ObsModHealth => 0x14,
Self::ObsModPower => 0x15,
Self::ModResistance => 0x16,
Self::PeriodicTriggerSpell => 0x17,
Self::PeriodicEnergize => 0x18,
Self::ModPacify => 0x19,
Self::ModRoot => 0x1a,
Self::ModSilence => 0x1b,
Self::ReflectSpells => 0x1c,
Self::ModStat => 0x1d,
Self::ModSkill => 0x1e,
Self::ModIncreaseSpeed => 0x1f,
Self::ModIncreaseMountedSpeed => 0x20,
Self::ModDecreaseSpeed => 0x21,
Self::ModIncreaseHealth => 0x22,
Self::ModIncreaseEnergy => 0x23,
Self::ModShapeshift => 0x24,
Self::EffectImmunity => 0x25,
Self::StateImmunity => 0x26,
Self::SchoolImmunity => 0x27,
Self::DamageImmunity => 0x28,
Self::DispelImmunity => 0x29,
Self::ProcTriggerSpell => 0x2a,
Self::ProcTriggerDamage => 0x2b,
Self::TrackCreatures => 0x2c,
Self::TrackResources => 0x2d,
Self::Unknown46 => 0x2e,
Self::ModParryPercent => 0x2f,
Self::PeriodicTriggerSpellFromClient => 0x30,
Self::ModDodgePercent => 0x31,
Self::ModCriticalHealingAmount => 0x32,
Self::ModBlockPercent => 0x33,
Self::ModWeaponCritPercent => 0x34,
Self::PeriodicLeech => 0x35,
Self::ModHitChance => 0x36,
Self::ModSpellHitChance => 0x37,
Self::Transform => 0x38,
Self::ModSpellCritChance => 0x39,
Self::ModIncreaseSwimSpeed => 0x3a,
Self::ModDamageDoneCreature => 0x3b,
Self::ModPacifySilence => 0x3c,
Self::ModScale => 0x3d,
Self::PeriodicHealthFunnel => 0x3e,
Self::Unknown63 => 0x3f,
Self::PeriodicManaLeech => 0x40,
Self::ModCastingSpeedNotStack => 0x41,
Self::FeignDeath => 0x42,
Self::ModDisarm => 0x43,
Self::ModStalked => 0x44,
Self::SchoolAbsorb => 0x45,
Self::ExtraAttacks => 0x46,
Self::ModSpellCritChanceSchool => 0x47,
Self::ModPowerCostSchoolPct => 0x48,
Self::ModPowerCostSchool => 0x49,
Self::ReflectSpellsSchool => 0x4a,
Self::ModLanguage => 0x4b,
Self::FarSight => 0x4c,
Self::MechanicImmunity => 0x4d,
Self::Mounted => 0x4e,
Self::ModDamagePercentDone => 0x4f,
Self::ModPercentStat => 0x50,
Self::SplitDamagePct => 0x51,
Self::WaterBreathing => 0x52,
Self::ModBaseResistance => 0x53,
Self::ModRegen => 0x54,
Self::ModPowerRegen => 0x55,
Self::ChannelDeathItem => 0x56,
Self::ModDamagePercentTaken => 0x57,
Self::ModHealthRegenPercent => 0x58,
Self::PeriodicDamagePercent => 0x59,
Self::Unknown90 => 0x5a,
Self::ModDetectRange => 0x5b,
Self::PreventsFleeing => 0x5c,
Self::ModUnattackable => 0x5d,
Self::InterruptRegen => 0x5e,
Self::Ghost => 0x5f,
Self::SpellMagnet => 0x60,
Self::ManaShield => 0x61,
Self::ModSkillTalent => 0x62,
Self::ModAttackPower => 0x63,
Self::AurasVisible => 0x64,
Self::ModResistancePct => 0x65,
Self::ModMeleeAttackPowerVersus => 0x66,
Self::ModTotalThreat => 0x67,
Self::WaterWalk => 0x68,
Self::FeatherFall => 0x69,
Self::Hover => 0x6a,
Self::AddFlatModifier => 0x6b,
Self::AddPctModifier => 0x6c,
Self::AddTargetTrigger => 0x6d,
Self::ModPowerRegenPercent => 0x6e,
Self::AddCasterHitTrigger => 0x6f,
Self::OverrideClassScripts => 0x70,
Self::ModRangedDamageTaken => 0x71,
Self::ModRangedDamageTakenPct => 0x72,
Self::ModHealing => 0x73,
Self::ModRegenDuringCombat => 0x74,
Self::ModMechanicResistance => 0x75,
Self::ModHealingPct => 0x76,
Self::Unknown119 => 0x77,
Self::Untrackable => 0x78,
Self::Empathy => 0x79,
Self::ModOffhandDamagePct => 0x7a,
Self::ModTargetResistance => 0x7b,
Self::ModRangedAttackPower => 0x7c,
Self::ModMeleeDamageTaken => 0x7d,
Self::ModMeleeDamageTakenPct => 0x7e,
Self::RangedAttackPowerAttackerBonus => 0x7f,
Self::ModPossessPet => 0x80,
Self::ModSpeedAlways => 0x81,
Self::ModMountedSpeedAlways => 0x82,
Self::ModRangedAttackPowerVersus => 0x83,
Self::ModIncreaseEnergyPercent => 0x84,
Self::ModIncreaseHealthPercent => 0x85,
Self::ModManaRegenInterrupt => 0x86,
Self::ModHealingDone => 0x87,
Self::ModHealingDonePercent => 0x88,
Self::ModTotalStatPercentage => 0x89,
Self::ModMeleeHaste => 0x8a,
Self::ForceReaction => 0x8b,
Self::ModRangedHaste => 0x8c,
Self::ModRangedAmmoHaste => 0x8d,
Self::ModBaseResistancePct => 0x8e,
Self::ModResistanceExclusive => 0x8f,
Self::SafeFall => 0x90,
Self::ModPetTalentPoints => 0x91,
Self::AllowTamePetType => 0x92,
Self::MechanicImmunityMask => 0x93,
Self::RetainComboPoints => 0x94,
Self::ReducePushback => 0x95,
Self::ModShieldBlockvaluePct => 0x96,
Self::TrackStealthed => 0x97,
Self::ModDetectedRange => 0x98,
Self::SplitDamageFlat => 0x99,
Self::ModStealthLevel => 0x9a,
Self::ModWaterBreathing => 0x9b,
Self::ModReputationGain => 0x9c,
Self::PetDamageMulti => 0x9d,
Self::ModShieldBlockvalue => 0x9e,
Self::NoPvpCredit => 0x9f,
Self::ModAoeAvoidance => 0xa0,
Self::ModHealthRegenInCombat => 0xa1,
Self::PowerBurn => 0xa2,
Self::ModCritDamageBonus => 0xa3,
Self::Unknown164 => 0xa4,
Self::MeleeAttackPowerAttackerBonus => 0xa5,
Self::ModAttackPowerPct => 0xa6,
Self::ModRangedAttackPowerPct => 0xa7,
Self::ModDamageDoneVersus => 0xa8,
Self::ModCritPercentVersus => 0xa9,
Self::DetectAmore => 0xaa,
Self::ModSpeedNotStack => 0xab,
Self::ModMountedSpeedNotStack => 0xac,
Self::Unknown173 => 0xad,
Self::ModSpellDamageOfStatPercent => 0xae,
Self::ModSpellHealingOfStatPercent => 0xaf,
Self::SpiritOfRedemption => 0xb0,
Self::AoeCharm => 0xb1,
Self::ModDebuffResistance => 0xb2,
Self::ModAttackerSpellCritChance => 0xb3,
Self::ModFlatSpellDamageVersus => 0xb4,
Self::Unknown181 => 0xb5,
Self::ModResistanceOfStatPercent => 0xb6,
Self::ModCriticalThreat => 0xb7,
Self::ModAttackerMeleeHitChance => 0xb8,
Self::ModAttackerRangedHitChance => 0xb9,
Self::ModAttackerSpellHitChance => 0xba,
Self::ModAttackerMeleeCritChance => 0xbb,
Self::ModAttackerRangedCritChance => 0xbc,
Self::ModRating => 0xbd,
Self::ModFactionReputationGain => 0xbe,
Self::UseNormalMovementSpeed => 0xbf,
Self::ModMeleeRangedHaste => 0xc0,
Self::MeleeSlow => 0xc1,
Self::ModTargetAbsorbSchool => 0xc2,
Self::ModTargetAbilityAbsorbSchool => 0xc3,
Self::ModCooldown => 0xc4,
Self::ModAttackerSpellAndWeaponCritChance => 0xc5,
Self::Unknown198 => 0xc6,
Self::ModIncreasesSpellPctToHit => 0xc7,
Self::ModXpPct => 0xc8,
Self::Fly => 0xc9,
Self::IgnoreCombatResult => 0xca,
Self::ModAttackerMeleeCritDamage => 0xcb,
Self::ModAttackerRangedCritDamage => 0xcc,
Self::ModSchoolCritDmgTaken => 0xcd,
Self::ModIncreaseVehicleFlightSpeed => 0xce,
Self::ModIncreaseMountedFlightSpeed => 0xcf,
Self::ModIncreaseFlightSpeed => 0xd0,
Self::ModMountedFlightSpeedAlways => 0xd1,
Self::ModVehicleSpeedAlways => 0xd2,
Self::ModFlightSpeedNotStack => 0xd3,
Self::ModRangedAttackPowerOfStatPercent => 0xd4,
Self::ModRageFromDamageDealt => 0xd5,
Self::Unknown214 => 0xd6,
Self::ArenaPreparation => 0xd7,
Self::HasteSpells => 0xd8,
Self::ModMeleeHaste2 => 0xd9,
Self::HasteRanged => 0xda,
Self::ModManaRegenFromStat => 0xdb,
Self::ModRatingFromStat => 0xdc,
Self::ModDetaunt => 0xdd,
Self::Unknown222 => 0xde,
Self::RaidProcFromCharge => 0xdf,
Self::Unknown224 => 0xe0,
Self::RaidProcFromChargeWithValue => 0xe1,
Self::PeriodicDummy => 0xe2,
Self::PeriodicTriggerSpellWithValue => 0xe3,
Self::DetectStealth => 0xe4,
Self::ModAoeDamageAvoidance => 0xe5,
Self::Unknown230 => 0xe6,
Self::ProcTriggerSpellWithValue => 0xe7,
Self::MechanicDurationMod => 0xe8,
Self::ChangeModelForAllHumanoids => 0xe9,
Self::MechanicDurationModNotStack => 0xea,
Self::ModDispelResist => 0xeb,
Self::ControlVehicle => 0xec,
Self::ModSpellDamageOfAttackPower => 0xed,
Self::ModSpellHealingOfAttackPower => 0xee,
Self::ModScale2 => 0xef,
Self::ModExpertise => 0xf0,
Self::ForceMoveForward => 0xf1,
Self::ModSpellDamageFromHealing => 0xf2,
Self::ModFaction => 0xf3,
Self::ComprehendLanguage => 0xf4,
Self::ModAuraDurationByDispel => 0xf5,
Self::ModAuraDurationByDispelNotStack => 0xf6,
Self::CloneCaster => 0xf7,
Self::ModCombatResultChance => 0xf8,
Self::ConvertRune => 0xf9,
Self::ModIncreaseHealth2 => 0xfa,
Self::ModEnemyDodge => 0xfb,
Self::ModSpeedSlowAll => 0xfc,
Self::ModBlockCritChance => 0xfd,
Self::ModDisarmOffhand => 0xfe,
Self::ModMechanicDamageTakenPercent => 0xff,
Self::NoReagentUse => 0x100,
Self::ModTargetResistBySpellClass => 0x101,
Self::Unknown258 => 0x102,
Self::ModHotPct => 0x103,
Self::ScreenEffect => 0x104,
Self::Phase => 0x105,
Self::AbilityIgnoreAurastate => 0x106,
Self::AllowOnlyAbility => 0x107,
Self::Unknown264 => 0x108,
Self::Unknown265 => 0x109,
Self::Unknown266 => 0x10a,
Self::ModImmuneAuraApplySchool => 0x10b,
Self::ModAttackPowerOfStatPercent => 0x10c,
Self::ModIgnoreTargetResist => 0x10d,
Self::ModAbilityIgnoreTargetResist => 0x10e,
Self::ModDamageFromCaster => 0x10f,
Self::IgnoreMeleeReset => 0x110,
Self::XRay => 0x111,
Self::AbilityConsumeNoAmmo => 0x112,
Self::ModIgnoreShapeshift => 0x113,
Self::ModDamageDoneForMechanic => 0x114,
Self::ModMaxAffectedTargets => 0x115,
Self::ModDisarmRanged => 0x116,
Self::InitializeImages => 0x117,
Self::ModArmorPenetrationPct => 0x118,
Self::ModHonorGainPct => 0x119,
Self::ModBaseHealthPct => 0x11a,
Self::ModHealingReceived => 0x11b,
Self::Linked => 0x11c,
Self::ModAttackPowerOfArmor => 0x11d,
Self::AbilityPeriodicCrit => 0x11e,
Self::DeflectSpells => 0x11f,
Self::IgnoreHitDirection => 0x120,
Self::PreventDurabilityLoss => 0x121,
Self::ModCritPct => 0x122,
Self::ModXpQuestPct => 0x123,
Self::OpenStable => 0x124,
Self::OverrideSpells => 0x125,
Self::PreventRegeneratePower => 0x126,
Self::Unknown295 => 0x127,
Self::SetVehicleId => 0x128,
Self::BlockSpellFamily => 0x129,
Self::Strangulate => 0x12a,
Self::Unknown299 => 0x12b,
Self::ShareDamagePct => 0x12c,
Self::SchoolHealAbsorb => 0x12d,
Self::Unknown302 => 0x12e,
Self::ModDamageDoneVersusAurastate => 0x12f,
Self::ModFakeInebriate => 0x130,
Self::ModMinimumSpeed => 0x131,
Self::Unknown306 => 0x132,
Self::HealAbsorbTest => 0x133,
Self::ModCritChanceForCaster => 0x134,
Self::Unknown309 => 0x135,
Self::ModCreatureAoeDamageAvoidance => 0x136,
Self::Unknown311 => 0x137,
Self::Unknown312 => 0x138,
Self::Unknown313 => 0x139,
Self::PreventResurrection => 0x13a,
Self::UnderwaterWalking => 0x13b,
Self::PeriodicHaste => 0x13c,
}
}
pub const fn variants() -> [Self; 317] {
[
Self::None,
Self::BindSight,
Self::ModPossess,
Self::PeriodicDamage,
Self::Dummy,
Self::ModConfuse,
Self::ModCharm,
Self::ModFear,
Self::PeriodicHeal,
Self::ModAttackspeed,
Self::ModThreat,
Self::ModTaunt,
Self::ModStun,
Self::ModDamageDone,
Self::ModDamageTaken,
Self::DamageShield,
Self::ModStealth,
Self::ModStealthDetect,
Self::ModInvisibility,
Self::ModInvisibilityDetect,
Self::ObsModHealth,
Self::ObsModPower,
Self::ModResistance,
Self::PeriodicTriggerSpell,
Self::PeriodicEnergize,
Self::ModPacify,
Self::ModRoot,
Self::ModSilence,
Self::ReflectSpells,
Self::ModStat,
Self::ModSkill,
Self::ModIncreaseSpeed,
Self::ModIncreaseMountedSpeed,
Self::ModDecreaseSpeed,
Self::ModIncreaseHealth,
Self::ModIncreaseEnergy,
Self::ModShapeshift,
Self::EffectImmunity,
Self::StateImmunity,
Self::SchoolImmunity,
Self::DamageImmunity,
Self::DispelImmunity,
Self::ProcTriggerSpell,
Self::ProcTriggerDamage,
Self::TrackCreatures,
Self::TrackResources,
Self::Unknown46,
Self::ModParryPercent,
Self::PeriodicTriggerSpellFromClient,
Self::ModDodgePercent,
Self::ModCriticalHealingAmount,
Self::ModBlockPercent,
Self::ModWeaponCritPercent,
Self::PeriodicLeech,
Self::ModHitChance,
Self::ModSpellHitChance,
Self::Transform,
Self::ModSpellCritChance,
Self::ModIncreaseSwimSpeed,
Self::ModDamageDoneCreature,
Self::ModPacifySilence,
Self::ModScale,
Self::PeriodicHealthFunnel,
Self::Unknown63,
Self::PeriodicManaLeech,
Self::ModCastingSpeedNotStack,
Self::FeignDeath,
Self::ModDisarm,
Self::ModStalked,
Self::SchoolAbsorb,
Self::ExtraAttacks,
Self::ModSpellCritChanceSchool,
Self::ModPowerCostSchoolPct,
Self::ModPowerCostSchool,
Self::ReflectSpellsSchool,
Self::ModLanguage,
Self::FarSight,
Self::MechanicImmunity,
Self::Mounted,
Self::ModDamagePercentDone,
Self::ModPercentStat,
Self::SplitDamagePct,
Self::WaterBreathing,
Self::ModBaseResistance,
Self::ModRegen,
Self::ModPowerRegen,
Self::ChannelDeathItem,
Self::ModDamagePercentTaken,
Self::ModHealthRegenPercent,
Self::PeriodicDamagePercent,
Self::Unknown90,
Self::ModDetectRange,
Self::PreventsFleeing,
Self::ModUnattackable,
Self::InterruptRegen,
Self::Ghost,
Self::SpellMagnet,
Self::ManaShield,
Self::ModSkillTalent,
Self::ModAttackPower,
Self::AurasVisible,
Self::ModResistancePct,
Self::ModMeleeAttackPowerVersus,
Self::ModTotalThreat,
Self::WaterWalk,
Self::FeatherFall,
Self::Hover,
Self::AddFlatModifier,
Self::AddPctModifier,
Self::AddTargetTrigger,
Self::ModPowerRegenPercent,
Self::AddCasterHitTrigger,
Self::OverrideClassScripts,
Self::ModRangedDamageTaken,
Self::ModRangedDamageTakenPct,
Self::ModHealing,
Self::ModRegenDuringCombat,
Self::ModMechanicResistance,
Self::ModHealingPct,
Self::Unknown119,
Self::Untrackable,
Self::Empathy,
Self::ModOffhandDamagePct,
Self::ModTargetResistance,
Self::ModRangedAttackPower,
Self::ModMeleeDamageTaken,
Self::ModMeleeDamageTakenPct,
Self::RangedAttackPowerAttackerBonus,
Self::ModPossessPet,
Self::ModSpeedAlways,
Self::ModMountedSpeedAlways,
Self::ModRangedAttackPowerVersus,
Self::ModIncreaseEnergyPercent,
Self::ModIncreaseHealthPercent,
Self::ModManaRegenInterrupt,
Self::ModHealingDone,
Self::ModHealingDonePercent,
Self::ModTotalStatPercentage,
Self::ModMeleeHaste,
Self::ForceReaction,
Self::ModRangedHaste,
Self::ModRangedAmmoHaste,
Self::ModBaseResistancePct,
Self::ModResistanceExclusive,
Self::SafeFall,
Self::ModPetTalentPoints,
Self::AllowTamePetType,
Self::MechanicImmunityMask,
Self::RetainComboPoints,
Self::ReducePushback,
Self::ModShieldBlockvaluePct,
Self::TrackStealthed,
Self::ModDetectedRange,
Self::SplitDamageFlat,
Self::ModStealthLevel,
Self::ModWaterBreathing,
Self::ModReputationGain,
Self::PetDamageMulti,
Self::ModShieldBlockvalue,
Self::NoPvpCredit,
Self::ModAoeAvoidance,
Self::ModHealthRegenInCombat,
Self::PowerBurn,
Self::ModCritDamageBonus,
Self::Unknown164,
Self::MeleeAttackPowerAttackerBonus,
Self::ModAttackPowerPct,
Self::ModRangedAttackPowerPct,
Self::ModDamageDoneVersus,
Self::ModCritPercentVersus,
Self::DetectAmore,
Self::ModSpeedNotStack,
Self::ModMountedSpeedNotStack,
Self::Unknown173,
Self::ModSpellDamageOfStatPercent,
Self::ModSpellHealingOfStatPercent,
Self::SpiritOfRedemption,
Self::AoeCharm,
Self::ModDebuffResistance,
Self::ModAttackerSpellCritChance,
Self::ModFlatSpellDamageVersus,
Self::Unknown181,
Self::ModResistanceOfStatPercent,
Self::ModCriticalThreat,
Self::ModAttackerMeleeHitChance,
Self::ModAttackerRangedHitChance,
Self::ModAttackerSpellHitChance,
Self::ModAttackerMeleeCritChance,
Self::ModAttackerRangedCritChance,
Self::ModRating,
Self::ModFactionReputationGain,
Self::UseNormalMovementSpeed,
Self::ModMeleeRangedHaste,
Self::MeleeSlow,
Self::ModTargetAbsorbSchool,
Self::ModTargetAbilityAbsorbSchool,
Self::ModCooldown,
Self::ModAttackerSpellAndWeaponCritChance,
Self::Unknown198,
Self::ModIncreasesSpellPctToHit,
Self::ModXpPct,
Self::Fly,
Self::IgnoreCombatResult,
Self::ModAttackerMeleeCritDamage,
Self::ModAttackerRangedCritDamage,
Self::ModSchoolCritDmgTaken,
Self::ModIncreaseVehicleFlightSpeed,
Self::ModIncreaseMountedFlightSpeed,
Self::ModIncreaseFlightSpeed,
Self::ModMountedFlightSpeedAlways,
Self::ModVehicleSpeedAlways,
Self::ModFlightSpeedNotStack,
Self::ModRangedAttackPowerOfStatPercent,
Self::ModRageFromDamageDealt,
Self::Unknown214,
Self::ArenaPreparation,
Self::HasteSpells,
Self::ModMeleeHaste2,
Self::HasteRanged,
Self::ModManaRegenFromStat,
Self::ModRatingFromStat,
Self::ModDetaunt,
Self::Unknown222,
Self::RaidProcFromCharge,
Self::Unknown224,
Self::RaidProcFromChargeWithValue,
Self::PeriodicDummy,
Self::PeriodicTriggerSpellWithValue,
Self::DetectStealth,
Self::ModAoeDamageAvoidance,
Self::Unknown230,
Self::ProcTriggerSpellWithValue,
Self::MechanicDurationMod,
Self::ChangeModelForAllHumanoids,
Self::MechanicDurationModNotStack,
Self::ModDispelResist,
Self::ControlVehicle,
Self::ModSpellDamageOfAttackPower,
Self::ModSpellHealingOfAttackPower,
Self::ModScale2,
Self::ModExpertise,
Self::ForceMoveForward,
Self::ModSpellDamageFromHealing,
Self::ModFaction,
Self::ComprehendLanguage,
Self::ModAuraDurationByDispel,
Self::ModAuraDurationByDispelNotStack,
Self::CloneCaster,
Self::ModCombatResultChance,
Self::ConvertRune,
Self::ModIncreaseHealth2,
Self::ModEnemyDodge,
Self::ModSpeedSlowAll,
Self::ModBlockCritChance,
Self::ModDisarmOffhand,
Self::ModMechanicDamageTakenPercent,
Self::NoReagentUse,
Self::ModTargetResistBySpellClass,
Self::Unknown258,
Self::ModHotPct,
Self::ScreenEffect,
Self::Phase,
Self::AbilityIgnoreAurastate,
Self::AllowOnlyAbility,
Self::Unknown264,
Self::Unknown265,
Self::Unknown266,
Self::ModImmuneAuraApplySchool,
Self::ModAttackPowerOfStatPercent,
Self::ModIgnoreTargetResist,
Self::ModAbilityIgnoreTargetResist,
Self::ModDamageFromCaster,
Self::IgnoreMeleeReset,
Self::XRay,
Self::AbilityConsumeNoAmmo,
Self::ModIgnoreShapeshift,
Self::ModDamageDoneForMechanic,
Self::ModMaxAffectedTargets,
Self::ModDisarmRanged,
Self::InitializeImages,
Self::ModArmorPenetrationPct,
Self::ModHonorGainPct,
Self::ModBaseHealthPct,
Self::ModHealingReceived,
Self::Linked,
Self::ModAttackPowerOfArmor,
Self::AbilityPeriodicCrit,
Self::DeflectSpells,
Self::IgnoreHitDirection,
Self::PreventDurabilityLoss,
Self::ModCritPct,
Self::ModXpQuestPct,
Self::OpenStable,
Self::OverrideSpells,
Self::PreventRegeneratePower,
Self::Unknown295,
Self::SetVehicleId,
Self::BlockSpellFamily,
Self::Strangulate,
Self::Unknown299,
Self::ShareDamagePct,
Self::SchoolHealAbsorb,
Self::Unknown302,
Self::ModDamageDoneVersusAurastate,
Self::ModFakeInebriate,
Self::ModMinimumSpeed,
Self::Unknown306,
Self::HealAbsorbTest,
Self::ModCritChanceForCaster,
Self::Unknown309,
Self::ModCreatureAoeDamageAvoidance,
Self::Unknown311,
Self::Unknown312,
Self::Unknown313,
Self::PreventResurrection,
Self::UnderwaterWalking,
Self::PeriodicHaste,
]
}
pub const fn from_int(value: u32) -> Result<Self, crate::errors::EnumError> {
match value {
0 => Ok(Self::None),
1 => Ok(Self::BindSight),
2 => Ok(Self::ModPossess),
3 => Ok(Self::PeriodicDamage),
4 => Ok(Self::Dummy),
5 => Ok(Self::ModConfuse),
6 => Ok(Self::ModCharm),
7 => Ok(Self::ModFear),
8 => Ok(Self::PeriodicHeal),
9 => Ok(Self::ModAttackspeed),
10 => Ok(Self::ModThreat),
11 => Ok(Self::ModTaunt),
12 => Ok(Self::ModStun),
13 => Ok(Self::ModDamageDone),
14 => Ok(Self::ModDamageTaken),
15 => Ok(Self::DamageShield),
16 => Ok(Self::ModStealth),
17 => Ok(Self::ModStealthDetect),
18 => Ok(Self::ModInvisibility),
19 => Ok(Self::ModInvisibilityDetect),
20 => Ok(Self::ObsModHealth),
21 => Ok(Self::ObsModPower),
22 => Ok(Self::ModResistance),
23 => Ok(Self::PeriodicTriggerSpell),
24 => Ok(Self::PeriodicEnergize),
25 => Ok(Self::ModPacify),
26 => Ok(Self::ModRoot),
27 => Ok(Self::ModSilence),
28 => Ok(Self::ReflectSpells),
29 => Ok(Self::ModStat),
30 => Ok(Self::ModSkill),
31 => Ok(Self::ModIncreaseSpeed),
32 => Ok(Self::ModIncreaseMountedSpeed),
33 => Ok(Self::ModDecreaseSpeed),
34 => Ok(Self::ModIncreaseHealth),
35 => Ok(Self::ModIncreaseEnergy),
36 => Ok(Self::ModShapeshift),
37 => Ok(Self::EffectImmunity),
38 => Ok(Self::StateImmunity),
39 => Ok(Self::SchoolImmunity),
40 => Ok(Self::DamageImmunity),
41 => Ok(Self::DispelImmunity),
42 => Ok(Self::ProcTriggerSpell),
43 => Ok(Self::ProcTriggerDamage),
44 => Ok(Self::TrackCreatures),
45 => Ok(Self::TrackResources),
46 => Ok(Self::Unknown46),
47 => Ok(Self::ModParryPercent),
48 => Ok(Self::PeriodicTriggerSpellFromClient),
49 => Ok(Self::ModDodgePercent),
50 => Ok(Self::ModCriticalHealingAmount),
51 => Ok(Self::ModBlockPercent),
52 => Ok(Self::ModWeaponCritPercent),
53 => Ok(Self::PeriodicLeech),
54 => Ok(Self::ModHitChance),
55 => Ok(Self::ModSpellHitChance),
56 => Ok(Self::Transform),
57 => Ok(Self::ModSpellCritChance),
58 => Ok(Self::ModIncreaseSwimSpeed),
59 => Ok(Self::ModDamageDoneCreature),
60 => Ok(Self::ModPacifySilence),
61 => Ok(Self::ModScale),
62 => Ok(Self::PeriodicHealthFunnel),
63 => Ok(Self::Unknown63),
64 => Ok(Self::PeriodicManaLeech),
65 => Ok(Self::ModCastingSpeedNotStack),
66 => Ok(Self::FeignDeath),
67 => Ok(Self::ModDisarm),
68 => Ok(Self::ModStalked),
69 => Ok(Self::SchoolAbsorb),
70 => Ok(Self::ExtraAttacks),
71 => Ok(Self::ModSpellCritChanceSchool),
72 => Ok(Self::ModPowerCostSchoolPct),
73 => Ok(Self::ModPowerCostSchool),
74 => Ok(Self::ReflectSpellsSchool),
75 => Ok(Self::ModLanguage),
76 => Ok(Self::FarSight),
77 => Ok(Self::MechanicImmunity),
78 => Ok(Self::Mounted),
79 => Ok(Self::ModDamagePercentDone),
80 => Ok(Self::ModPercentStat),
81 => Ok(Self::SplitDamagePct),
82 => Ok(Self::WaterBreathing),
83 => Ok(Self::ModBaseResistance),
84 => Ok(Self::ModRegen),
85 => Ok(Self::ModPowerRegen),
86 => Ok(Self::ChannelDeathItem),
87 => Ok(Self::ModDamagePercentTaken),
88 => Ok(Self::ModHealthRegenPercent),
89 => Ok(Self::PeriodicDamagePercent),
90 => Ok(Self::Unknown90),
91 => Ok(Self::ModDetectRange),
92 => Ok(Self::PreventsFleeing),
93 => Ok(Self::ModUnattackable),
94 => Ok(Self::InterruptRegen),
95 => Ok(Self::Ghost),
96 => Ok(Self::SpellMagnet),
97 => Ok(Self::ManaShield),
98 => Ok(Self::ModSkillTalent),
99 => Ok(Self::ModAttackPower),
100 => Ok(Self::AurasVisible),
101 => Ok(Self::ModResistancePct),
102 => Ok(Self::ModMeleeAttackPowerVersus),
103 => Ok(Self::ModTotalThreat),
104 => Ok(Self::WaterWalk),
105 => Ok(Self::FeatherFall),
106 => Ok(Self::Hover),
107 => Ok(Self::AddFlatModifier),
108 => Ok(Self::AddPctModifier),
109 => Ok(Self::AddTargetTrigger),
110 => Ok(Self::ModPowerRegenPercent),
111 => Ok(Self::AddCasterHitTrigger),
112 => Ok(Self::OverrideClassScripts),
113 => Ok(Self::ModRangedDamageTaken),
114 => Ok(Self::ModRangedDamageTakenPct),
115 => Ok(Self::ModHealing),
116 => Ok(Self::ModRegenDuringCombat),
117 => Ok(Self::ModMechanicResistance),
118 => Ok(Self::ModHealingPct),
119 => Ok(Self::Unknown119),
120 => Ok(Self::Untrackable),
121 => Ok(Self::Empathy),
122 => Ok(Self::ModOffhandDamagePct),
123 => Ok(Self::ModTargetResistance),
124 => Ok(Self::ModRangedAttackPower),
125 => Ok(Self::ModMeleeDamageTaken),
126 => Ok(Self::ModMeleeDamageTakenPct),
127 => Ok(Self::RangedAttackPowerAttackerBonus),
128 => Ok(Self::ModPossessPet),
129 => Ok(Self::ModSpeedAlways),
130 => Ok(Self::ModMountedSpeedAlways),
131 => Ok(Self::ModRangedAttackPowerVersus),
132 => Ok(Self::ModIncreaseEnergyPercent),
133 => Ok(Self::ModIncreaseHealthPercent),
134 => Ok(Self::ModManaRegenInterrupt),
135 => Ok(Self::ModHealingDone),
136 => Ok(Self::ModHealingDonePercent),
137 => Ok(Self::ModTotalStatPercentage),
138 => Ok(Self::ModMeleeHaste),
139 => Ok(Self::ForceReaction),
140 => Ok(Self::ModRangedHaste),
141 => Ok(Self::ModRangedAmmoHaste),
142 => Ok(Self::ModBaseResistancePct),
143 => Ok(Self::ModResistanceExclusive),
144 => Ok(Self::SafeFall),
145 => Ok(Self::ModPetTalentPoints),
146 => Ok(Self::AllowTamePetType),
147 => Ok(Self::MechanicImmunityMask),
148 => Ok(Self::RetainComboPoints),
149 => Ok(Self::ReducePushback),
150 => Ok(Self::ModShieldBlockvaluePct),
151 => Ok(Self::TrackStealthed),
152 => Ok(Self::ModDetectedRange),
153 => Ok(Self::SplitDamageFlat),
154 => Ok(Self::ModStealthLevel),
155 => Ok(Self::ModWaterBreathing),
156 => Ok(Self::ModReputationGain),
157 => Ok(Self::PetDamageMulti),
158 => Ok(Self::ModShieldBlockvalue),
159 => Ok(Self::NoPvpCredit),
160 => Ok(Self::ModAoeAvoidance),
161 => Ok(Self::ModHealthRegenInCombat),
162 => Ok(Self::PowerBurn),
163 => Ok(Self::ModCritDamageBonus),
164 => Ok(Self::Unknown164),
165 => Ok(Self::MeleeAttackPowerAttackerBonus),
166 => Ok(Self::ModAttackPowerPct),
167 => Ok(Self::ModRangedAttackPowerPct),
168 => Ok(Self::ModDamageDoneVersus),
169 => Ok(Self::ModCritPercentVersus),
170 => Ok(Self::DetectAmore),
171 => Ok(Self::ModSpeedNotStack),
172 => Ok(Self::ModMountedSpeedNotStack),
173 => Ok(Self::Unknown173),
174 => Ok(Self::ModSpellDamageOfStatPercent),
175 => Ok(Self::ModSpellHealingOfStatPercent),
176 => Ok(Self::SpiritOfRedemption),
177 => Ok(Self::AoeCharm),
178 => Ok(Self::ModDebuffResistance),
179 => Ok(Self::ModAttackerSpellCritChance),
180 => Ok(Self::ModFlatSpellDamageVersus),
181 => Ok(Self::Unknown181),
182 => Ok(Self::ModResistanceOfStatPercent),
183 => Ok(Self::ModCriticalThreat),
184 => Ok(Self::ModAttackerMeleeHitChance),
185 => Ok(Self::ModAttackerRangedHitChance),
186 => Ok(Self::ModAttackerSpellHitChance),
187 => Ok(Self::ModAttackerMeleeCritChance),
188 => Ok(Self::ModAttackerRangedCritChance),
189 => Ok(Self::ModRating),
190 => Ok(Self::ModFactionReputationGain),
191 => Ok(Self::UseNormalMovementSpeed),
192 => Ok(Self::ModMeleeRangedHaste),
193 => Ok(Self::MeleeSlow),
194 => Ok(Self::ModTargetAbsorbSchool),
195 => Ok(Self::ModTargetAbilityAbsorbSchool),
196 => Ok(Self::ModCooldown),
197 => Ok(Self::ModAttackerSpellAndWeaponCritChance),
198 => Ok(Self::Unknown198),
199 => Ok(Self::ModIncreasesSpellPctToHit),
200 => Ok(Self::ModXpPct),
201 => Ok(Self::Fly),
202 => Ok(Self::IgnoreCombatResult),
203 => Ok(Self::ModAttackerMeleeCritDamage),
204 => Ok(Self::ModAttackerRangedCritDamage),
205 => Ok(Self::ModSchoolCritDmgTaken),
206 => Ok(Self::ModIncreaseVehicleFlightSpeed),
207 => Ok(Self::ModIncreaseMountedFlightSpeed),
208 => Ok(Self::ModIncreaseFlightSpeed),
209 => Ok(Self::ModMountedFlightSpeedAlways),
210 => Ok(Self::ModVehicleSpeedAlways),
211 => Ok(Self::ModFlightSpeedNotStack),
212 => Ok(Self::ModRangedAttackPowerOfStatPercent),
213 => Ok(Self::ModRageFromDamageDealt),
214 => Ok(Self::Unknown214),
215 => Ok(Self::ArenaPreparation),
216 => Ok(Self::HasteSpells),
217 => Ok(Self::ModMeleeHaste2),
218 => Ok(Self::HasteRanged),
219 => Ok(Self::ModManaRegenFromStat),
220 => Ok(Self::ModRatingFromStat),
221 => Ok(Self::ModDetaunt),
222 => Ok(Self::Unknown222),
223 => Ok(Self::RaidProcFromCharge),
224 => Ok(Self::Unknown224),
225 => Ok(Self::RaidProcFromChargeWithValue),
226 => Ok(Self::PeriodicDummy),
227 => Ok(Self::PeriodicTriggerSpellWithValue),
228 => Ok(Self::DetectStealth),
229 => Ok(Self::ModAoeDamageAvoidance),
230 => Ok(Self::Unknown230),
231 => Ok(Self::ProcTriggerSpellWithValue),
232 => Ok(Self::MechanicDurationMod),
233 => Ok(Self::ChangeModelForAllHumanoids),
234 => Ok(Self::MechanicDurationModNotStack),
235 => Ok(Self::ModDispelResist),
236 => Ok(Self::ControlVehicle),
237 => Ok(Self::ModSpellDamageOfAttackPower),
238 => Ok(Self::ModSpellHealingOfAttackPower),
239 => Ok(Self::ModScale2),
240 => Ok(Self::ModExpertise),
241 => Ok(Self::ForceMoveForward),
242 => Ok(Self::ModSpellDamageFromHealing),
243 => Ok(Self::ModFaction),
244 => Ok(Self::ComprehendLanguage),
245 => Ok(Self::ModAuraDurationByDispel),
246 => Ok(Self::ModAuraDurationByDispelNotStack),
247 => Ok(Self::CloneCaster),
248 => Ok(Self::ModCombatResultChance),
249 => Ok(Self::ConvertRune),
250 => Ok(Self::ModIncreaseHealth2),
251 => Ok(Self::ModEnemyDodge),
252 => Ok(Self::ModSpeedSlowAll),
253 => Ok(Self::ModBlockCritChance),
254 => Ok(Self::ModDisarmOffhand),
255 => Ok(Self::ModMechanicDamageTakenPercent),
256 => Ok(Self::NoReagentUse),
257 => Ok(Self::ModTargetResistBySpellClass),
258 => Ok(Self::Unknown258),
259 => Ok(Self::ModHotPct),
260 => Ok(Self::ScreenEffect),
261 => Ok(Self::Phase),
262 => Ok(Self::AbilityIgnoreAurastate),
263 => Ok(Self::AllowOnlyAbility),
264 => Ok(Self::Unknown264),
265 => Ok(Self::Unknown265),
266 => Ok(Self::Unknown266),
267 => Ok(Self::ModImmuneAuraApplySchool),
268 => Ok(Self::ModAttackPowerOfStatPercent),
269 => Ok(Self::ModIgnoreTargetResist),
270 => Ok(Self::ModAbilityIgnoreTargetResist),
271 => Ok(Self::ModDamageFromCaster),
272 => Ok(Self::IgnoreMeleeReset),
273 => Ok(Self::XRay),
274 => Ok(Self::AbilityConsumeNoAmmo),
275 => Ok(Self::ModIgnoreShapeshift),
276 => Ok(Self::ModDamageDoneForMechanic),
277 => Ok(Self::ModMaxAffectedTargets),
278 => Ok(Self::ModDisarmRanged),
279 => Ok(Self::InitializeImages),
280 => Ok(Self::ModArmorPenetrationPct),
281 => Ok(Self::ModHonorGainPct),
282 => Ok(Self::ModBaseHealthPct),
283 => Ok(Self::ModHealingReceived),
284 => Ok(Self::Linked),
285 => Ok(Self::ModAttackPowerOfArmor),
286 => Ok(Self::AbilityPeriodicCrit),
287 => Ok(Self::DeflectSpells),
288 => Ok(Self::IgnoreHitDirection),
289 => Ok(Self::PreventDurabilityLoss),
290 => Ok(Self::ModCritPct),
291 => Ok(Self::ModXpQuestPct),
292 => Ok(Self::OpenStable),
293 => Ok(Self::OverrideSpells),
294 => Ok(Self::PreventRegeneratePower),
295 => Ok(Self::Unknown295),
296 => Ok(Self::SetVehicleId),
297 => Ok(Self::BlockSpellFamily),
298 => Ok(Self::Strangulate),
299 => Ok(Self::Unknown299),
300 => Ok(Self::ShareDamagePct),
301 => Ok(Self::SchoolHealAbsorb),
302 => Ok(Self::Unknown302),
303 => Ok(Self::ModDamageDoneVersusAurastate),
304 => Ok(Self::ModFakeInebriate),
305 => Ok(Self::ModMinimumSpeed),
306 => Ok(Self::Unknown306),
307 => Ok(Self::HealAbsorbTest),
308 => Ok(Self::ModCritChanceForCaster),
309 => Ok(Self::Unknown309),
310 => Ok(Self::ModCreatureAoeDamageAvoidance),
311 => Ok(Self::Unknown311),
312 => Ok(Self::Unknown312),
313 => Ok(Self::Unknown313),
314 => Ok(Self::PreventResurrection),
315 => Ok(Self::UnderwaterWalking),
316 => Ok(Self::PeriodicHaste),
v => Err(crate::errors::EnumError::new(NAME, v as i128),)
}
}
}
#[cfg(feature = "print-testcase")]
impl AuraMod {
pub const fn as_test_case_value(&self) -> &'static str {
match self {
Self::None => "NONE",
Self::BindSight => "BIND_SIGHT",
Self::ModPossess => "MOD_POSSESS",
Self::PeriodicDamage => "PERIODIC_DAMAGE",
Self::Dummy => "DUMMY",
Self::ModConfuse => "MOD_CONFUSE",
Self::ModCharm => "MOD_CHARM",
Self::ModFear => "MOD_FEAR",
Self::PeriodicHeal => "PERIODIC_HEAL",
Self::ModAttackspeed => "MOD_ATTACKSPEED",
Self::ModThreat => "MOD_THREAT",
Self::ModTaunt => "MOD_TAUNT",
Self::ModStun => "MOD_STUN",
Self::ModDamageDone => "MOD_DAMAGE_DONE",
Self::ModDamageTaken => "MOD_DAMAGE_TAKEN",
Self::DamageShield => "DAMAGE_SHIELD",
Self::ModStealth => "MOD_STEALTH",
Self::ModStealthDetect => "MOD_STEALTH_DETECT",
Self::ModInvisibility => "MOD_INVISIBILITY",
Self::ModInvisibilityDetect => "MOD_INVISIBILITY_DETECT",
Self::ObsModHealth => "OBS_MOD_HEALTH",
Self::ObsModPower => "OBS_MOD_POWER",
Self::ModResistance => "MOD_RESISTANCE",
Self::PeriodicTriggerSpell => "PERIODIC_TRIGGER_SPELL",
Self::PeriodicEnergize => "PERIODIC_ENERGIZE",
Self::ModPacify => "MOD_PACIFY",
Self::ModRoot => "MOD_ROOT",
Self::ModSilence => "MOD_SILENCE",
Self::ReflectSpells => "REFLECT_SPELLS",
Self::ModStat => "MOD_STAT",
Self::ModSkill => "MOD_SKILL",
Self::ModIncreaseSpeed => "MOD_INCREASE_SPEED",
Self::ModIncreaseMountedSpeed => "MOD_INCREASE_MOUNTED_SPEED",
Self::ModDecreaseSpeed => "MOD_DECREASE_SPEED",
Self::ModIncreaseHealth => "MOD_INCREASE_HEALTH",
Self::ModIncreaseEnergy => "MOD_INCREASE_ENERGY",
Self::ModShapeshift => "MOD_SHAPESHIFT",
Self::EffectImmunity => "EFFECT_IMMUNITY",
Self::StateImmunity => "STATE_IMMUNITY",
Self::SchoolImmunity => "SCHOOL_IMMUNITY",
Self::DamageImmunity => "DAMAGE_IMMUNITY",
Self::DispelImmunity => "DISPEL_IMMUNITY",
Self::ProcTriggerSpell => "PROC_TRIGGER_SPELL",
Self::ProcTriggerDamage => "PROC_TRIGGER_DAMAGE",
Self::TrackCreatures => "TRACK_CREATURES",
Self::TrackResources => "TRACK_RESOURCES",
Self::Unknown46 => "UNKNOWN46",
Self::ModParryPercent => "MOD_PARRY_PERCENT",
Self::PeriodicTriggerSpellFromClient => "PERIODIC_TRIGGER_SPELL_FROM_CLIENT",
Self::ModDodgePercent => "MOD_DODGE_PERCENT",
Self::ModCriticalHealingAmount => "MOD_CRITICAL_HEALING_AMOUNT",
Self::ModBlockPercent => "MOD_BLOCK_PERCENT",
Self::ModWeaponCritPercent => "MOD_WEAPON_CRIT_PERCENT",
Self::PeriodicLeech => "PERIODIC_LEECH",
Self::ModHitChance => "MOD_HIT_CHANCE",
Self::ModSpellHitChance => "MOD_SPELL_HIT_CHANCE",
Self::Transform => "TRANSFORM",
Self::ModSpellCritChance => "MOD_SPELL_CRIT_CHANCE",
Self::ModIncreaseSwimSpeed => "MOD_INCREASE_SWIM_SPEED",
Self::ModDamageDoneCreature => "MOD_DAMAGE_DONE_CREATURE",
Self::ModPacifySilence => "MOD_PACIFY_SILENCE",
Self::ModScale => "MOD_SCALE",
Self::PeriodicHealthFunnel => "PERIODIC_HEALTH_FUNNEL",
Self::Unknown63 => "UNKNOWN63",
Self::PeriodicManaLeech => "PERIODIC_MANA_LEECH",
Self::ModCastingSpeedNotStack => "MOD_CASTING_SPEED_NOT_STACK",
Self::FeignDeath => "FEIGN_DEATH",
Self::ModDisarm => "MOD_DISARM",
Self::ModStalked => "MOD_STALKED",
Self::SchoolAbsorb => "SCHOOL_ABSORB",
Self::ExtraAttacks => "EXTRA_ATTACKS",
Self::ModSpellCritChanceSchool => "MOD_SPELL_CRIT_CHANCE_SCHOOL",
Self::ModPowerCostSchoolPct => "MOD_POWER_COST_SCHOOL_PCT",
Self::ModPowerCostSchool => "MOD_POWER_COST_SCHOOL",
Self::ReflectSpellsSchool => "REFLECT_SPELLS_SCHOOL",
Self::ModLanguage => "MOD_LANGUAGE",
Self::FarSight => "FAR_SIGHT",
Self::MechanicImmunity => "MECHANIC_IMMUNITY",
Self::Mounted => "MOUNTED",
Self::ModDamagePercentDone => "MOD_DAMAGE_PERCENT_DONE",
Self::ModPercentStat => "MOD_PERCENT_STAT",
Self::SplitDamagePct => "SPLIT_DAMAGE_PCT",
Self::WaterBreathing => "WATER_BREATHING",
Self::ModBaseResistance => "MOD_BASE_RESISTANCE",
Self::ModRegen => "MOD_REGEN",
Self::ModPowerRegen => "MOD_POWER_REGEN",
Self::ChannelDeathItem => "CHANNEL_DEATH_ITEM",
Self::ModDamagePercentTaken => "MOD_DAMAGE_PERCENT_TAKEN",
Self::ModHealthRegenPercent => "MOD_HEALTH_REGEN_PERCENT",
Self::PeriodicDamagePercent => "PERIODIC_DAMAGE_PERCENT",
Self::Unknown90 => "UNKNOWN90",
Self::ModDetectRange => "MOD_DETECT_RANGE",
Self::PreventsFleeing => "PREVENTS_FLEEING",
Self::ModUnattackable => "MOD_UNATTACKABLE",
Self::InterruptRegen => "INTERRUPT_REGEN",
Self::Ghost => "GHOST",
Self::SpellMagnet => "SPELL_MAGNET",
Self::ManaShield => "MANA_SHIELD",
Self::ModSkillTalent => "MOD_SKILL_TALENT",
Self::ModAttackPower => "MOD_ATTACK_POWER",
Self::AurasVisible => "AURAS_VISIBLE",
Self::ModResistancePct => "MOD_RESISTANCE_PCT",
Self::ModMeleeAttackPowerVersus => "MOD_MELEE_ATTACK_POWER_VERSUS",
Self::ModTotalThreat => "MOD_TOTAL_THREAT",
Self::WaterWalk => "WATER_WALK",
Self::FeatherFall => "FEATHER_FALL",
Self::Hover => "HOVER",
Self::AddFlatModifier => "ADD_FLAT_MODIFIER",
Self::AddPctModifier => "ADD_PCT_MODIFIER",
Self::AddTargetTrigger => "ADD_TARGET_TRIGGER",
Self::ModPowerRegenPercent => "MOD_POWER_REGEN_PERCENT",
Self::AddCasterHitTrigger => "ADD_CASTER_HIT_TRIGGER",
Self::OverrideClassScripts => "OVERRIDE_CLASS_SCRIPTS",
Self::ModRangedDamageTaken => "MOD_RANGED_DAMAGE_TAKEN",
Self::ModRangedDamageTakenPct => "MOD_RANGED_DAMAGE_TAKEN_PCT",
Self::ModHealing => "MOD_HEALING",
Self::ModRegenDuringCombat => "MOD_REGEN_DURING_COMBAT",
Self::ModMechanicResistance => "MOD_MECHANIC_RESISTANCE",
Self::ModHealingPct => "MOD_HEALING_PCT",
Self::Unknown119 => "UNKNOWN119",
Self::Untrackable => "UNTRACKABLE",
Self::Empathy => "EMPATHY",
Self::ModOffhandDamagePct => "MOD_OFFHAND_DAMAGE_PCT",
Self::ModTargetResistance => "MOD_TARGET_RESISTANCE",
Self::ModRangedAttackPower => "MOD_RANGED_ATTACK_POWER",
Self::ModMeleeDamageTaken => "MOD_MELEE_DAMAGE_TAKEN",
Self::ModMeleeDamageTakenPct => "MOD_MELEE_DAMAGE_TAKEN_PCT",
Self::RangedAttackPowerAttackerBonus => "RANGED_ATTACK_POWER_ATTACKER_BONUS",
Self::ModPossessPet => "MOD_POSSESS_PET",
Self::ModSpeedAlways => "MOD_SPEED_ALWAYS",
Self::ModMountedSpeedAlways => "MOD_MOUNTED_SPEED_ALWAYS",
Self::ModRangedAttackPowerVersus => "MOD_RANGED_ATTACK_POWER_VERSUS",
Self::ModIncreaseEnergyPercent => "MOD_INCREASE_ENERGY_PERCENT",
Self::ModIncreaseHealthPercent => "MOD_INCREASE_HEALTH_PERCENT",
Self::ModManaRegenInterrupt => "MOD_MANA_REGEN_INTERRUPT",
Self::ModHealingDone => "MOD_HEALING_DONE",
Self::ModHealingDonePercent => "MOD_HEALING_DONE_PERCENT",
Self::ModTotalStatPercentage => "MOD_TOTAL_STAT_PERCENTAGE",
Self::ModMeleeHaste => "MOD_MELEE_HASTE",
Self::ForceReaction => "FORCE_REACTION",
Self::ModRangedHaste => "MOD_RANGED_HASTE",
Self::ModRangedAmmoHaste => "MOD_RANGED_AMMO_HASTE",
Self::ModBaseResistancePct => "MOD_BASE_RESISTANCE_PCT",
Self::ModResistanceExclusive => "MOD_RESISTANCE_EXCLUSIVE",
Self::SafeFall => "SAFE_FALL",
Self::ModPetTalentPoints => "MOD_PET_TALENT_POINTS",
Self::AllowTamePetType => "ALLOW_TAME_PET_TYPE",
Self::MechanicImmunityMask => "MECHANIC_IMMUNITY_MASK",
Self::RetainComboPoints => "RETAIN_COMBO_POINTS",
Self::ReducePushback => "REDUCE_PUSHBACK",
Self::ModShieldBlockvaluePct => "MOD_SHIELD_BLOCKVALUE_PCT",
Self::TrackStealthed => "TRACK_STEALTHED",
Self::ModDetectedRange => "MOD_DETECTED_RANGE",
Self::SplitDamageFlat => "SPLIT_DAMAGE_FLAT",
Self::ModStealthLevel => "MOD_STEALTH_LEVEL",
Self::ModWaterBreathing => "MOD_WATER_BREATHING",
Self::ModReputationGain => "MOD_REPUTATION_GAIN",
Self::PetDamageMulti => "PET_DAMAGE_MULTI",
Self::ModShieldBlockvalue => "MOD_SHIELD_BLOCKVALUE",
Self::NoPvpCredit => "NO_PVP_CREDIT",
Self::ModAoeAvoidance => "MOD_AOE_AVOIDANCE",
Self::ModHealthRegenInCombat => "MOD_HEALTH_REGEN_IN_COMBAT",
Self::PowerBurn => "POWER_BURN",
Self::ModCritDamageBonus => "MOD_CRIT_DAMAGE_BONUS",
Self::Unknown164 => "UNKNOWN164",
Self::MeleeAttackPowerAttackerBonus => "MELEE_ATTACK_POWER_ATTACKER_BONUS",
Self::ModAttackPowerPct => "MOD_ATTACK_POWER_PCT",
Self::ModRangedAttackPowerPct => "MOD_RANGED_ATTACK_POWER_PCT",
Self::ModDamageDoneVersus => "MOD_DAMAGE_DONE_VERSUS",
Self::ModCritPercentVersus => "MOD_CRIT_PERCENT_VERSUS",
Self::DetectAmore => "DETECT_AMORE",
Self::ModSpeedNotStack => "MOD_SPEED_NOT_STACK",
Self::ModMountedSpeedNotStack => "MOD_MOUNTED_SPEED_NOT_STACK",
Self::Unknown173 => "UNKNOWN173",
Self::ModSpellDamageOfStatPercent => "MOD_SPELL_DAMAGE_OF_STAT_PERCENT",
Self::ModSpellHealingOfStatPercent => "MOD_SPELL_HEALING_OF_STAT_PERCENT",
Self::SpiritOfRedemption => "SPIRIT_OF_REDEMPTION",
Self::AoeCharm => "AOE_CHARM",
Self::ModDebuffResistance => "MOD_DEBUFF_RESISTANCE",
Self::ModAttackerSpellCritChance => "MOD_ATTACKER_SPELL_CRIT_CHANCE",
Self::ModFlatSpellDamageVersus => "MOD_FLAT_SPELL_DAMAGE_VERSUS",
Self::Unknown181 => "UNKNOWN181",
Self::ModResistanceOfStatPercent => "MOD_RESISTANCE_OF_STAT_PERCENT",
Self::ModCriticalThreat => "MOD_CRITICAL_THREAT",
Self::ModAttackerMeleeHitChance => "MOD_ATTACKER_MELEE_HIT_CHANCE",
Self::ModAttackerRangedHitChance => "MOD_ATTACKER_RANGED_HIT_CHANCE",
Self::ModAttackerSpellHitChance => "MOD_ATTACKER_SPELL_HIT_CHANCE",
Self::ModAttackerMeleeCritChance => "MOD_ATTACKER_MELEE_CRIT_CHANCE",
Self::ModAttackerRangedCritChance => "MOD_ATTACKER_RANGED_CRIT_CHANCE",
Self::ModRating => "MOD_RATING",
Self::ModFactionReputationGain => "MOD_FACTION_REPUTATION_GAIN",
Self::UseNormalMovementSpeed => "USE_NORMAL_MOVEMENT_SPEED",
Self::ModMeleeRangedHaste => "MOD_MELEE_RANGED_HASTE",
Self::MeleeSlow => "MELEE_SLOW",
Self::ModTargetAbsorbSchool => "MOD_TARGET_ABSORB_SCHOOL",
Self::ModTargetAbilityAbsorbSchool => "MOD_TARGET_ABILITY_ABSORB_SCHOOL",
Self::ModCooldown => "MOD_COOLDOWN",
Self::ModAttackerSpellAndWeaponCritChance => "MOD_ATTACKER_SPELL_AND_WEAPON_CRIT_CHANCE",
Self::Unknown198 => "UNKNOWN198",
Self::ModIncreasesSpellPctToHit => "MOD_INCREASES_SPELL_PCT_TO_HIT",
Self::ModXpPct => "MOD_XP_PCT",
Self::Fly => "FLY",
Self::IgnoreCombatResult => "IGNORE_COMBAT_RESULT",
Self::ModAttackerMeleeCritDamage => "MOD_ATTACKER_MELEE_CRIT_DAMAGE",
Self::ModAttackerRangedCritDamage => "MOD_ATTACKER_RANGED_CRIT_DAMAGE",
Self::ModSchoolCritDmgTaken => "MOD_SCHOOL_CRIT_DMG_TAKEN",
Self::ModIncreaseVehicleFlightSpeed => "MOD_INCREASE_VEHICLE_FLIGHT_SPEED",
Self::ModIncreaseMountedFlightSpeed => "MOD_INCREASE_MOUNTED_FLIGHT_SPEED",
Self::ModIncreaseFlightSpeed => "MOD_INCREASE_FLIGHT_SPEED",
Self::ModMountedFlightSpeedAlways => "MOD_MOUNTED_FLIGHT_SPEED_ALWAYS",
Self::ModVehicleSpeedAlways => "MOD_VEHICLE_SPEED_ALWAYS",
Self::ModFlightSpeedNotStack => "MOD_FLIGHT_SPEED_NOT_STACK",
Self::ModRangedAttackPowerOfStatPercent => "MOD_RANGED_ATTACK_POWER_OF_STAT_PERCENT",
Self::ModRageFromDamageDealt => "MOD_RAGE_FROM_DAMAGE_DEALT",
Self::Unknown214 => "UNKNOWN214",
Self::ArenaPreparation => "ARENA_PREPARATION",
Self::HasteSpells => "HASTE_SPELLS",
Self::ModMeleeHaste2 => "MOD_MELEE_HASTE_2",
Self::HasteRanged => "HASTE_RANGED",
Self::ModManaRegenFromStat => "MOD_MANA_REGEN_FROM_STAT",
Self::ModRatingFromStat => "MOD_RATING_FROM_STAT",
Self::ModDetaunt => "MOD_DETAUNT",
Self::Unknown222 => "UNKNOWN222",
Self::RaidProcFromCharge => "RAID_PROC_FROM_CHARGE",
Self::Unknown224 => "UNKNOWN224",
Self::RaidProcFromChargeWithValue => "RAID_PROC_FROM_CHARGE_WITH_VALUE",
Self::PeriodicDummy => "PERIODIC_DUMMY",
Self::PeriodicTriggerSpellWithValue => "PERIODIC_TRIGGER_SPELL_WITH_VALUE",
Self::DetectStealth => "DETECT_STEALTH",
Self::ModAoeDamageAvoidance => "MOD_AOE_DAMAGE_AVOIDANCE",
Self::Unknown230 => "UNKNOWN230",
Self::ProcTriggerSpellWithValue => "PROC_TRIGGER_SPELL_WITH_VALUE",
Self::MechanicDurationMod => "MECHANIC_DURATION_MOD",
Self::ChangeModelForAllHumanoids => "CHANGE_MODEL_FOR_ALL_HUMANOIDS",
Self::MechanicDurationModNotStack => "MECHANIC_DURATION_MOD_NOT_STACK",
Self::ModDispelResist => "MOD_DISPEL_RESIST",
Self::ControlVehicle => "CONTROL_VEHICLE",
Self::ModSpellDamageOfAttackPower => "MOD_SPELL_DAMAGE_OF_ATTACK_POWER",
Self::ModSpellHealingOfAttackPower => "MOD_SPELL_HEALING_OF_ATTACK_POWER",
Self::ModScale2 => "MOD_SCALE_2",
Self::ModExpertise => "MOD_EXPERTISE",
Self::ForceMoveForward => "FORCE_MOVE_FORWARD",
Self::ModSpellDamageFromHealing => "MOD_SPELL_DAMAGE_FROM_HEALING",
Self::ModFaction => "MOD_FACTION",
Self::ComprehendLanguage => "COMPREHEND_LANGUAGE",
Self::ModAuraDurationByDispel => "MOD_AURA_DURATION_BY_DISPEL",
Self::ModAuraDurationByDispelNotStack => "MOD_AURA_DURATION_BY_DISPEL_NOT_STACK",
Self::CloneCaster => "CLONE_CASTER",
Self::ModCombatResultChance => "MOD_COMBAT_RESULT_CHANCE",
Self::ConvertRune => "CONVERT_RUNE",
Self::ModIncreaseHealth2 => "MOD_INCREASE_HEALTH_2",
Self::ModEnemyDodge => "MOD_ENEMY_DODGE",
Self::ModSpeedSlowAll => "MOD_SPEED_SLOW_ALL",
Self::ModBlockCritChance => "MOD_BLOCK_CRIT_CHANCE",
Self::ModDisarmOffhand => "MOD_DISARM_OFFHAND",
Self::ModMechanicDamageTakenPercent => "MOD_MECHANIC_DAMAGE_TAKEN_PERCENT",
Self::NoReagentUse => "NO_REAGENT_USE",
Self::ModTargetResistBySpellClass => "MOD_TARGET_RESIST_BY_SPELL_CLASS",
Self::Unknown258 => "UNKNOWN258",
Self::ModHotPct => "MOD_HOT_PCT",
Self::ScreenEffect => "SCREEN_EFFECT",
Self::Phase => "PHASE",
Self::AbilityIgnoreAurastate => "ABILITY_IGNORE_AURASTATE",
Self::AllowOnlyAbility => "ALLOW_ONLY_ABILITY",
Self::Unknown264 => "UNKNOWN264",
Self::Unknown265 => "UNKNOWN265",
Self::Unknown266 => "UNKNOWN266",
Self::ModImmuneAuraApplySchool => "MOD_IMMUNE_AURA_APPLY_SCHOOL",
Self::ModAttackPowerOfStatPercent => "MOD_ATTACK_POWER_OF_STAT_PERCENT",
Self::ModIgnoreTargetResist => "MOD_IGNORE_TARGET_RESIST",
Self::ModAbilityIgnoreTargetResist => "MOD_ABILITY_IGNORE_TARGET_RESIST",
Self::ModDamageFromCaster => "MOD_DAMAGE_FROM_CASTER",
Self::IgnoreMeleeReset => "IGNORE_MELEE_RESET",
Self::XRay => "X_RAY",
Self::AbilityConsumeNoAmmo => "ABILITY_CONSUME_NO_AMMO",
Self::ModIgnoreShapeshift => "MOD_IGNORE_SHAPESHIFT",
Self::ModDamageDoneForMechanic => "MOD_DAMAGE_DONE_FOR_MECHANIC",
Self::ModMaxAffectedTargets => "MOD_MAX_AFFECTED_TARGETS",
Self::ModDisarmRanged => "MOD_DISARM_RANGED",
Self::InitializeImages => "INITIALIZE_IMAGES",
Self::ModArmorPenetrationPct => "MOD_ARMOR_PENETRATION_PCT",
Self::ModHonorGainPct => "MOD_HONOR_GAIN_PCT",
Self::ModBaseHealthPct => "MOD_BASE_HEALTH_PCT",
Self::ModHealingReceived => "MOD_HEALING_RECEIVED",
Self::Linked => "LINKED",
Self::ModAttackPowerOfArmor => "MOD_ATTACK_POWER_OF_ARMOR",
Self::AbilityPeriodicCrit => "ABILITY_PERIODIC_CRIT",
Self::DeflectSpells => "DEFLECT_SPELLS",
Self::IgnoreHitDirection => "IGNORE_HIT_DIRECTION",
Self::PreventDurabilityLoss => "PREVENT_DURABILITY_LOSS",
Self::ModCritPct => "MOD_CRIT_PCT",
Self::ModXpQuestPct => "MOD_XP_QUEST_PCT",
Self::OpenStable => "OPEN_STABLE",
Self::OverrideSpells => "OVERRIDE_SPELLS",
Self::PreventRegeneratePower => "PREVENT_REGENERATE_POWER",
Self::Unknown295 => "UNKNOWN295",
Self::SetVehicleId => "SET_VEHICLE_ID",
Self::BlockSpellFamily => "BLOCK_SPELL_FAMILY",
Self::Strangulate => "STRANGULATE",
Self::Unknown299 => "UNKNOWN299",
Self::ShareDamagePct => "SHARE_DAMAGE_PCT",
Self::SchoolHealAbsorb => "SCHOOL_HEAL_ABSORB",
Self::Unknown302 => "UNKNOWN302",
Self::ModDamageDoneVersusAurastate => "MOD_DAMAGE_DONE_VERSUS_AURASTATE",
Self::ModFakeInebriate => "MOD_FAKE_INEBRIATE",
Self::ModMinimumSpeed => "MOD_MINIMUM_SPEED",
Self::Unknown306 => "UNKNOWN306",
Self::HealAbsorbTest => "HEAL_ABSORB_TEST",
Self::ModCritChanceForCaster => "MOD_CRIT_CHANCE_FOR_CASTER",
Self::Unknown309 => "UNKNOWN309",
Self::ModCreatureAoeDamageAvoidance => "MOD_CREATURE_AOE_DAMAGE_AVOIDANCE",
Self::Unknown311 => "UNKNOWN311",
Self::Unknown312 => "UNKNOWN312",
Self::Unknown313 => "UNKNOWN313",
Self::PreventResurrection => "PREVENT_RESURRECTION",
Self::UnderwaterWalking => "UNDERWATER_WALKING",
Self::PeriodicHaste => "PERIODIC_HASTE",
}
}
}
const NAME: &str = "AuraMod";
impl Default for AuraMod {
fn default() -> Self {
Self::None
}
}
impl std::fmt::Display for AuraMod {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
Self::None => f.write_str("None"),
Self::BindSight => f.write_str("BindSight"),
Self::ModPossess => f.write_str("ModPossess"),
Self::PeriodicDamage => f.write_str("PeriodicDamage"),
Self::Dummy => f.write_str("Dummy"),
Self::ModConfuse => f.write_str("ModConfuse"),
Self::ModCharm => f.write_str("ModCharm"),
Self::ModFear => f.write_str("ModFear"),
Self::PeriodicHeal => f.write_str("PeriodicHeal"),
Self::ModAttackspeed => f.write_str("ModAttackspeed"),
Self::ModThreat => f.write_str("ModThreat"),
Self::ModTaunt => f.write_str("ModTaunt"),
Self::ModStun => f.write_str("ModStun"),
Self::ModDamageDone => f.write_str("ModDamageDone"),
Self::ModDamageTaken => f.write_str("ModDamageTaken"),
Self::DamageShield => f.write_str("DamageShield"),
Self::ModStealth => f.write_str("ModStealth"),
Self::ModStealthDetect => f.write_str("ModStealthDetect"),
Self::ModInvisibility => f.write_str("ModInvisibility"),
Self::ModInvisibilityDetect => f.write_str("ModInvisibilityDetect"),
Self::ObsModHealth => f.write_str("ObsModHealth"),
Self::ObsModPower => f.write_str("ObsModPower"),
Self::ModResistance => f.write_str("ModResistance"),
Self::PeriodicTriggerSpell => f.write_str("PeriodicTriggerSpell"),
Self::PeriodicEnergize => f.write_str("PeriodicEnergize"),
Self::ModPacify => f.write_str("ModPacify"),
Self::ModRoot => f.write_str("ModRoot"),
Self::ModSilence => f.write_str("ModSilence"),
Self::ReflectSpells => f.write_str("ReflectSpells"),
Self::ModStat => f.write_str("ModStat"),
Self::ModSkill => f.write_str("ModSkill"),
Self::ModIncreaseSpeed => f.write_str("ModIncreaseSpeed"),
Self::ModIncreaseMountedSpeed => f.write_str("ModIncreaseMountedSpeed"),
Self::ModDecreaseSpeed => f.write_str("ModDecreaseSpeed"),
Self::ModIncreaseHealth => f.write_str("ModIncreaseHealth"),
Self::ModIncreaseEnergy => f.write_str("ModIncreaseEnergy"),
Self::ModShapeshift => f.write_str("ModShapeshift"),
Self::EffectImmunity => f.write_str("EffectImmunity"),
Self::StateImmunity => f.write_str("StateImmunity"),
Self::SchoolImmunity => f.write_str("SchoolImmunity"),
Self::DamageImmunity => f.write_str("DamageImmunity"),
Self::DispelImmunity => f.write_str("DispelImmunity"),
Self::ProcTriggerSpell => f.write_str("ProcTriggerSpell"),
Self::ProcTriggerDamage => f.write_str("ProcTriggerDamage"),
Self::TrackCreatures => f.write_str("TrackCreatures"),
Self::TrackResources => f.write_str("TrackResources"),
Self::Unknown46 => f.write_str("Unknown46"),
Self::ModParryPercent => f.write_str("ModParryPercent"),
Self::PeriodicTriggerSpellFromClient => f.write_str("PeriodicTriggerSpellFromClient"),
Self::ModDodgePercent => f.write_str("ModDodgePercent"),
Self::ModCriticalHealingAmount => f.write_str("ModCriticalHealingAmount"),
Self::ModBlockPercent => f.write_str("ModBlockPercent"),
Self::ModWeaponCritPercent => f.write_str("ModWeaponCritPercent"),
Self::PeriodicLeech => f.write_str("PeriodicLeech"),
Self::ModHitChance => f.write_str("ModHitChance"),
Self::ModSpellHitChance => f.write_str("ModSpellHitChance"),
Self::Transform => f.write_str("Transform"),
Self::ModSpellCritChance => f.write_str("ModSpellCritChance"),
Self::ModIncreaseSwimSpeed => f.write_str("ModIncreaseSwimSpeed"),
Self::ModDamageDoneCreature => f.write_str("ModDamageDoneCreature"),
Self::ModPacifySilence => f.write_str("ModPacifySilence"),
Self::ModScale => f.write_str("ModScale"),
Self::PeriodicHealthFunnel => f.write_str("PeriodicHealthFunnel"),
Self::Unknown63 => f.write_str("Unknown63"),
Self::PeriodicManaLeech => f.write_str("PeriodicManaLeech"),
Self::ModCastingSpeedNotStack => f.write_str("ModCastingSpeedNotStack"),
Self::FeignDeath => f.write_str("FeignDeath"),
Self::ModDisarm => f.write_str("ModDisarm"),
Self::ModStalked => f.write_str("ModStalked"),
Self::SchoolAbsorb => f.write_str("SchoolAbsorb"),
Self::ExtraAttacks => f.write_str("ExtraAttacks"),
Self::ModSpellCritChanceSchool => f.write_str("ModSpellCritChanceSchool"),
Self::ModPowerCostSchoolPct => f.write_str("ModPowerCostSchoolPct"),
Self::ModPowerCostSchool => f.write_str("ModPowerCostSchool"),
Self::ReflectSpellsSchool => f.write_str("ReflectSpellsSchool"),
Self::ModLanguage => f.write_str("ModLanguage"),
Self::FarSight => f.write_str("FarSight"),
Self::MechanicImmunity => f.write_str("MechanicImmunity"),
Self::Mounted => f.write_str("Mounted"),
Self::ModDamagePercentDone => f.write_str("ModDamagePercentDone"),
Self::ModPercentStat => f.write_str("ModPercentStat"),
Self::SplitDamagePct => f.write_str("SplitDamagePct"),
Self::WaterBreathing => f.write_str("WaterBreathing"),
Self::ModBaseResistance => f.write_str("ModBaseResistance"),
Self::ModRegen => f.write_str("ModRegen"),
Self::ModPowerRegen => f.write_str("ModPowerRegen"),
Self::ChannelDeathItem => f.write_str("ChannelDeathItem"),
Self::ModDamagePercentTaken => f.write_str("ModDamagePercentTaken"),
Self::ModHealthRegenPercent => f.write_str("ModHealthRegenPercent"),
Self::PeriodicDamagePercent => f.write_str("PeriodicDamagePercent"),
Self::Unknown90 => f.write_str("Unknown90"),
Self::ModDetectRange => f.write_str("ModDetectRange"),
Self::PreventsFleeing => f.write_str("PreventsFleeing"),
Self::ModUnattackable => f.write_str("ModUnattackable"),
Self::InterruptRegen => f.write_str("InterruptRegen"),
Self::Ghost => f.write_str("Ghost"),
Self::SpellMagnet => f.write_str("SpellMagnet"),
Self::ManaShield => f.write_str("ManaShield"),
Self::ModSkillTalent => f.write_str("ModSkillTalent"),
Self::ModAttackPower => f.write_str("ModAttackPower"),
Self::AurasVisible => f.write_str("AurasVisible"),
Self::ModResistancePct => f.write_str("ModResistancePct"),
Self::ModMeleeAttackPowerVersus => f.write_str("ModMeleeAttackPowerVersus"),
Self::ModTotalThreat => f.write_str("ModTotalThreat"),
Self::WaterWalk => f.write_str("WaterWalk"),
Self::FeatherFall => f.write_str("FeatherFall"),
Self::Hover => f.write_str("Hover"),
Self::AddFlatModifier => f.write_str("AddFlatModifier"),
Self::AddPctModifier => f.write_str("AddPctModifier"),
Self::AddTargetTrigger => f.write_str("AddTargetTrigger"),
Self::ModPowerRegenPercent => f.write_str("ModPowerRegenPercent"),
Self::AddCasterHitTrigger => f.write_str("AddCasterHitTrigger"),
Self::OverrideClassScripts => f.write_str("OverrideClassScripts"),
Self::ModRangedDamageTaken => f.write_str("ModRangedDamageTaken"),
Self::ModRangedDamageTakenPct => f.write_str("ModRangedDamageTakenPct"),
Self::ModHealing => f.write_str("ModHealing"),
Self::ModRegenDuringCombat => f.write_str("ModRegenDuringCombat"),
Self::ModMechanicResistance => f.write_str("ModMechanicResistance"),
Self::ModHealingPct => f.write_str("ModHealingPct"),
Self::Unknown119 => f.write_str("Unknown119"),
Self::Untrackable => f.write_str("Untrackable"),
Self::Empathy => f.write_str("Empathy"),
Self::ModOffhandDamagePct => f.write_str("ModOffhandDamagePct"),
Self::ModTargetResistance => f.write_str("ModTargetResistance"),
Self::ModRangedAttackPower => f.write_str("ModRangedAttackPower"),
Self::ModMeleeDamageTaken => f.write_str("ModMeleeDamageTaken"),
Self::ModMeleeDamageTakenPct => f.write_str("ModMeleeDamageTakenPct"),
Self::RangedAttackPowerAttackerBonus => f.write_str("RangedAttackPowerAttackerBonus"),
Self::ModPossessPet => f.write_str("ModPossessPet"),
Self::ModSpeedAlways => f.write_str("ModSpeedAlways"),
Self::ModMountedSpeedAlways => f.write_str("ModMountedSpeedAlways"),
Self::ModRangedAttackPowerVersus => f.write_str("ModRangedAttackPowerVersus"),
Self::ModIncreaseEnergyPercent => f.write_str("ModIncreaseEnergyPercent"),
Self::ModIncreaseHealthPercent => f.write_str("ModIncreaseHealthPercent"),
Self::ModManaRegenInterrupt => f.write_str("ModManaRegenInterrupt"),
Self::ModHealingDone => f.write_str("ModHealingDone"),
Self::ModHealingDonePercent => f.write_str("ModHealingDonePercent"),
Self::ModTotalStatPercentage => f.write_str("ModTotalStatPercentage"),
Self::ModMeleeHaste => f.write_str("ModMeleeHaste"),
Self::ForceReaction => f.write_str("ForceReaction"),
Self::ModRangedHaste => f.write_str("ModRangedHaste"),
Self::ModRangedAmmoHaste => f.write_str("ModRangedAmmoHaste"),
Self::ModBaseResistancePct => f.write_str("ModBaseResistancePct"),
Self::ModResistanceExclusive => f.write_str("ModResistanceExclusive"),
Self::SafeFall => f.write_str("SafeFall"),
Self::ModPetTalentPoints => f.write_str("ModPetTalentPoints"),
Self::AllowTamePetType => f.write_str("AllowTamePetType"),
Self::MechanicImmunityMask => f.write_str("MechanicImmunityMask"),
Self::RetainComboPoints => f.write_str("RetainComboPoints"),
Self::ReducePushback => f.write_str("ReducePushback"),
Self::ModShieldBlockvaluePct => f.write_str("ModShieldBlockvaluePct"),
Self::TrackStealthed => f.write_str("TrackStealthed"),
Self::ModDetectedRange => f.write_str("ModDetectedRange"),
Self::SplitDamageFlat => f.write_str("SplitDamageFlat"),
Self::ModStealthLevel => f.write_str("ModStealthLevel"),
Self::ModWaterBreathing => f.write_str("ModWaterBreathing"),
Self::ModReputationGain => f.write_str("ModReputationGain"),
Self::PetDamageMulti => f.write_str("PetDamageMulti"),
Self::ModShieldBlockvalue => f.write_str("ModShieldBlockvalue"),
Self::NoPvpCredit => f.write_str("NoPvpCredit"),
Self::ModAoeAvoidance => f.write_str("ModAoeAvoidance"),
Self::ModHealthRegenInCombat => f.write_str("ModHealthRegenInCombat"),
Self::PowerBurn => f.write_str("PowerBurn"),
Self::ModCritDamageBonus => f.write_str("ModCritDamageBonus"),
Self::Unknown164 => f.write_str("Unknown164"),
Self::MeleeAttackPowerAttackerBonus => f.write_str("MeleeAttackPowerAttackerBonus"),
Self::ModAttackPowerPct => f.write_str("ModAttackPowerPct"),
Self::ModRangedAttackPowerPct => f.write_str("ModRangedAttackPowerPct"),
Self::ModDamageDoneVersus => f.write_str("ModDamageDoneVersus"),
Self::ModCritPercentVersus => f.write_str("ModCritPercentVersus"),
Self::DetectAmore => f.write_str("DetectAmore"),
Self::ModSpeedNotStack => f.write_str("ModSpeedNotStack"),
Self::ModMountedSpeedNotStack => f.write_str("ModMountedSpeedNotStack"),
Self::Unknown173 => f.write_str("Unknown173"),
Self::ModSpellDamageOfStatPercent => f.write_str("ModSpellDamageOfStatPercent"),
Self::ModSpellHealingOfStatPercent => f.write_str("ModSpellHealingOfStatPercent"),
Self::SpiritOfRedemption => f.write_str("SpiritOfRedemption"),
Self::AoeCharm => f.write_str("AoeCharm"),
Self::ModDebuffResistance => f.write_str("ModDebuffResistance"),
Self::ModAttackerSpellCritChance => f.write_str("ModAttackerSpellCritChance"),
Self::ModFlatSpellDamageVersus => f.write_str("ModFlatSpellDamageVersus"),
Self::Unknown181 => f.write_str("Unknown181"),
Self::ModResistanceOfStatPercent => f.write_str("ModResistanceOfStatPercent"),
Self::ModCriticalThreat => f.write_str("ModCriticalThreat"),
Self::ModAttackerMeleeHitChance => f.write_str("ModAttackerMeleeHitChance"),
Self::ModAttackerRangedHitChance => f.write_str("ModAttackerRangedHitChance"),
Self::ModAttackerSpellHitChance => f.write_str("ModAttackerSpellHitChance"),
Self::ModAttackerMeleeCritChance => f.write_str("ModAttackerMeleeCritChance"),
Self::ModAttackerRangedCritChance => f.write_str("ModAttackerRangedCritChance"),
Self::ModRating => f.write_str("ModRating"),
Self::ModFactionReputationGain => f.write_str("ModFactionReputationGain"),
Self::UseNormalMovementSpeed => f.write_str("UseNormalMovementSpeed"),
Self::ModMeleeRangedHaste => f.write_str("ModMeleeRangedHaste"),
Self::MeleeSlow => f.write_str("MeleeSlow"),
Self::ModTargetAbsorbSchool => f.write_str("ModTargetAbsorbSchool"),
Self::ModTargetAbilityAbsorbSchool => f.write_str("ModTargetAbilityAbsorbSchool"),
Self::ModCooldown => f.write_str("ModCooldown"),
Self::ModAttackerSpellAndWeaponCritChance => f.write_str("ModAttackerSpellAndWeaponCritChance"),
Self::Unknown198 => f.write_str("Unknown198"),
Self::ModIncreasesSpellPctToHit => f.write_str("ModIncreasesSpellPctToHit"),
Self::ModXpPct => f.write_str("ModXpPct"),
Self::Fly => f.write_str("Fly"),
Self::IgnoreCombatResult => f.write_str("IgnoreCombatResult"),
Self::ModAttackerMeleeCritDamage => f.write_str("ModAttackerMeleeCritDamage"),
Self::ModAttackerRangedCritDamage => f.write_str("ModAttackerRangedCritDamage"),
Self::ModSchoolCritDmgTaken => f.write_str("ModSchoolCritDmgTaken"),
Self::ModIncreaseVehicleFlightSpeed => f.write_str("ModIncreaseVehicleFlightSpeed"),
Self::ModIncreaseMountedFlightSpeed => f.write_str("ModIncreaseMountedFlightSpeed"),
Self::ModIncreaseFlightSpeed => f.write_str("ModIncreaseFlightSpeed"),
Self::ModMountedFlightSpeedAlways => f.write_str("ModMountedFlightSpeedAlways"),
Self::ModVehicleSpeedAlways => f.write_str("ModVehicleSpeedAlways"),
Self::ModFlightSpeedNotStack => f.write_str("ModFlightSpeedNotStack"),
Self::ModRangedAttackPowerOfStatPercent => f.write_str("ModRangedAttackPowerOfStatPercent"),
Self::ModRageFromDamageDealt => f.write_str("ModRageFromDamageDealt"),
Self::Unknown214 => f.write_str("Unknown214"),
Self::ArenaPreparation => f.write_str("ArenaPreparation"),
Self::HasteSpells => f.write_str("HasteSpells"),
Self::ModMeleeHaste2 => f.write_str("ModMeleeHaste2"),
Self::HasteRanged => f.write_str("HasteRanged"),
Self::ModManaRegenFromStat => f.write_str("ModManaRegenFromStat"),
Self::ModRatingFromStat => f.write_str("ModRatingFromStat"),
Self::ModDetaunt => f.write_str("ModDetaunt"),
Self::Unknown222 => f.write_str("Unknown222"),
Self::RaidProcFromCharge => f.write_str("RaidProcFromCharge"),
Self::Unknown224 => f.write_str("Unknown224"),
Self::RaidProcFromChargeWithValue => f.write_str("RaidProcFromChargeWithValue"),
Self::PeriodicDummy => f.write_str("PeriodicDummy"),
Self::PeriodicTriggerSpellWithValue => f.write_str("PeriodicTriggerSpellWithValue"),
Self::DetectStealth => f.write_str("DetectStealth"),
Self::ModAoeDamageAvoidance => f.write_str("ModAoeDamageAvoidance"),
Self::Unknown230 => f.write_str("Unknown230"),
Self::ProcTriggerSpellWithValue => f.write_str("ProcTriggerSpellWithValue"),
Self::MechanicDurationMod => f.write_str("MechanicDurationMod"),
Self::ChangeModelForAllHumanoids => f.write_str("ChangeModelForAllHumanoids"),
Self::MechanicDurationModNotStack => f.write_str("MechanicDurationModNotStack"),
Self::ModDispelResist => f.write_str("ModDispelResist"),
Self::ControlVehicle => f.write_str("ControlVehicle"),
Self::ModSpellDamageOfAttackPower => f.write_str("ModSpellDamageOfAttackPower"),
Self::ModSpellHealingOfAttackPower => f.write_str("ModSpellHealingOfAttackPower"),
Self::ModScale2 => f.write_str("ModScale2"),
Self::ModExpertise => f.write_str("ModExpertise"),
Self::ForceMoveForward => f.write_str("ForceMoveForward"),
Self::ModSpellDamageFromHealing => f.write_str("ModSpellDamageFromHealing"),
Self::ModFaction => f.write_str("ModFaction"),
Self::ComprehendLanguage => f.write_str("ComprehendLanguage"),
Self::ModAuraDurationByDispel => f.write_str("ModAuraDurationByDispel"),
Self::ModAuraDurationByDispelNotStack => f.write_str("ModAuraDurationByDispelNotStack"),
Self::CloneCaster => f.write_str("CloneCaster"),
Self::ModCombatResultChance => f.write_str("ModCombatResultChance"),
Self::ConvertRune => f.write_str("ConvertRune"),
Self::ModIncreaseHealth2 => f.write_str("ModIncreaseHealth2"),
Self::ModEnemyDodge => f.write_str("ModEnemyDodge"),
Self::ModSpeedSlowAll => f.write_str("ModSpeedSlowAll"),
Self::ModBlockCritChance => f.write_str("ModBlockCritChance"),
Self::ModDisarmOffhand => f.write_str("ModDisarmOffhand"),
Self::ModMechanicDamageTakenPercent => f.write_str("ModMechanicDamageTakenPercent"),
Self::NoReagentUse => f.write_str("NoReagentUse"),
Self::ModTargetResistBySpellClass => f.write_str("ModTargetResistBySpellClass"),
Self::Unknown258 => f.write_str("Unknown258"),
Self::ModHotPct => f.write_str("ModHotPct"),
Self::ScreenEffect => f.write_str("ScreenEffect"),
Self::Phase => f.write_str("Phase"),
Self::AbilityIgnoreAurastate => f.write_str("AbilityIgnoreAurastate"),
Self::AllowOnlyAbility => f.write_str("AllowOnlyAbility"),
Self::Unknown264 => f.write_str("Unknown264"),
Self::Unknown265 => f.write_str("Unknown265"),
Self::Unknown266 => f.write_str("Unknown266"),
Self::ModImmuneAuraApplySchool => f.write_str("ModImmuneAuraApplySchool"),
Self::ModAttackPowerOfStatPercent => f.write_str("ModAttackPowerOfStatPercent"),
Self::ModIgnoreTargetResist => f.write_str("ModIgnoreTargetResist"),
Self::ModAbilityIgnoreTargetResist => f.write_str("ModAbilityIgnoreTargetResist"),
Self::ModDamageFromCaster => f.write_str("ModDamageFromCaster"),
Self::IgnoreMeleeReset => f.write_str("IgnoreMeleeReset"),
Self::XRay => f.write_str("XRay"),
Self::AbilityConsumeNoAmmo => f.write_str("AbilityConsumeNoAmmo"),
Self::ModIgnoreShapeshift => f.write_str("ModIgnoreShapeshift"),
Self::ModDamageDoneForMechanic => f.write_str("ModDamageDoneForMechanic"),
Self::ModMaxAffectedTargets => f.write_str("ModMaxAffectedTargets"),
Self::ModDisarmRanged => f.write_str("ModDisarmRanged"),
Self::InitializeImages => f.write_str("InitializeImages"),
Self::ModArmorPenetrationPct => f.write_str("ModArmorPenetrationPct"),
Self::ModHonorGainPct => f.write_str("ModHonorGainPct"),
Self::ModBaseHealthPct => f.write_str("ModBaseHealthPct"),
Self::ModHealingReceived => f.write_str("ModHealingReceived"),
Self::Linked => f.write_str("Linked"),
Self::ModAttackPowerOfArmor => f.write_str("ModAttackPowerOfArmor"),
Self::AbilityPeriodicCrit => f.write_str("AbilityPeriodicCrit"),
Self::DeflectSpells => f.write_str("DeflectSpells"),
Self::IgnoreHitDirection => f.write_str("IgnoreHitDirection"),
Self::PreventDurabilityLoss => f.write_str("PreventDurabilityLoss"),
Self::ModCritPct => f.write_str("ModCritPct"),
Self::ModXpQuestPct => f.write_str("ModXpQuestPct"),
Self::OpenStable => f.write_str("OpenStable"),
Self::OverrideSpells => f.write_str("OverrideSpells"),
Self::PreventRegeneratePower => f.write_str("PreventRegeneratePower"),
Self::Unknown295 => f.write_str("Unknown295"),
Self::SetVehicleId => f.write_str("SetVehicleId"),
Self::BlockSpellFamily => f.write_str("BlockSpellFamily"),
Self::Strangulate => f.write_str("Strangulate"),
Self::Unknown299 => f.write_str("Unknown299"),
Self::ShareDamagePct => f.write_str("ShareDamagePct"),
Self::SchoolHealAbsorb => f.write_str("SchoolHealAbsorb"),
Self::Unknown302 => f.write_str("Unknown302"),
Self::ModDamageDoneVersusAurastate => f.write_str("ModDamageDoneVersusAurastate"),
Self::ModFakeInebriate => f.write_str("ModFakeInebriate"),
Self::ModMinimumSpeed => f.write_str("ModMinimumSpeed"),
Self::Unknown306 => f.write_str("Unknown306"),
Self::HealAbsorbTest => f.write_str("HealAbsorbTest"),
Self::ModCritChanceForCaster => f.write_str("ModCritChanceForCaster"),
Self::Unknown309 => f.write_str("Unknown309"),
Self::ModCreatureAoeDamageAvoidance => f.write_str("ModCreatureAoeDamageAvoidance"),
Self::Unknown311 => f.write_str("Unknown311"),
Self::Unknown312 => f.write_str("Unknown312"),
Self::Unknown313 => f.write_str("Unknown313"),
Self::PreventResurrection => f.write_str("PreventResurrection"),
Self::UnderwaterWalking => f.write_str("UnderwaterWalking"),
Self::PeriodicHaste => f.write_str("PeriodicHaste"),
}
}
}
impl TryFrom<u32> for AuraMod {
type Error = crate::errors::EnumError;
fn try_from(value: u32) -> Result<Self, Self::Error> {
Self::from_int(value)
}
}
impl TryFrom<u8> for AuraMod {
type Error = crate::errors::EnumError;
fn try_from(value: u8) -> Result<Self, Self::Error> {
Self::from_int(value.into())
}
}
impl TryFrom<u16> for AuraMod {
type Error = crate::errors::EnumError;
fn try_from(value: u16) -> Result<Self, Self::Error> {
Self::from_int(value.into())
}
}
impl TryFrom<u64> for AuraMod {
type Error = crate::errors::EnumError;
fn try_from(value: u64) -> Result<Self, Self::Error> {
TryInto::<u32>::try_into(value)
.map_err(|_| crate::errors::EnumError::new(NAME, value.into()))?
.try_into()
}
}
impl TryFrom<i8> for AuraMod {
type Error = crate::errors::EnumError;
fn try_from(value: i8) -> Result<Self, Self::Error> {
TryInto::<u32>::try_into(value)
.map_err(|_| crate::errors::EnumError::new(NAME, value.into()))?
.try_into()
}
}
impl TryFrom<i16> for AuraMod {
type Error = crate::errors::EnumError;
fn try_from(value: i16) -> Result<Self, Self::Error> {
TryInto::<u32>::try_into(value)
.map_err(|_| crate::errors::EnumError::new(NAME, value.into()))?
.try_into()
}
}
impl TryFrom<i32> for AuraMod {
type Error = crate::errors::EnumError;
fn try_from(value: i32) -> Result<Self, Self::Error> {
let v = u32::from_le_bytes(value.to_le_bytes());
Self::from_int(v)
}
}
impl TryFrom<i64> for AuraMod {
type Error = crate::errors::EnumError;
fn try_from(value: i64) -> Result<Self, Self::Error> {
TryInto::<u32>::try_into(value)
.map_err(|_| crate::errors::EnumError::new(NAME, value.into()))?
.try_into()
}
}
impl TryFrom<usize> for AuraMod {
type Error = crate::errors::EnumError;
fn try_from(value: usize) -> Result<Self, Self::Error> {
TryInto::<u32>::try_into(value)
.map_err(|_| crate::errors::EnumError::new(NAME, value as i128))?
.try_into()
}
}