1#[derive(Debug, PartialEq, Eq, Hash, Ord, PartialOrd, Copy, Clone)]
324#[cfg_attr(feature = "serde", derive(serde::Deserialize, serde::Serialize))]
325pub enum AuraType {
326 None,
327 BindSight,
328 ModPossess,
329 PeriodicDamage,
330 Dummy,
331 ModConfuse,
332 ModCharm,
333 ModFear,
334 PeriodicHeal,
335 ModAttackspeed,
336 ModThreat,
337 ModTaunt,
338 ModStun,
339 ModDamageDone,
340 ModDamageTaken,
341 DamageShield,
342 ModStealth,
343 ModStealthDetect,
344 ModInvisibility,
345 ModInvisibilityDetect,
346 ObsModHealth,
348 ObsModPower,
349 ModResistance,
350 PeriodicTriggerSpell,
351 PeriodicEnergize,
352 ModPacify,
353 ModRoot,
354 ModSilence,
355 ReflectSpells,
356 ModStat,
357 ModSkill,
358 ModIncreaseSpeed,
359 ModIncreaseMountedSpeed,
360 ModDecreaseSpeed,
361 ModIncreaseHealth,
362 ModIncreaseEnergy,
363 ModShapeshift,
364 EffectImmunity,
365 StateImmunity,
366 SchoolImmunity,
367 DamageImmunity,
368 DispelImmunity,
369 ProcTriggerSpell,
370 ProcTriggerDamage,
371 TrackCreatures,
372 TrackResources,
373 Unknown46,
375 ModParryPercent,
376 PeriodicTriggerSpellFromClient,
378 ModDodgePercent,
379 ModCriticalHealingAmount,
380 ModBlockPercent,
381 ModWeaponCritPercent,
382 PeriodicLeech,
383 ModHitChance,
384 ModSpellHitChance,
385 Transform,
386 ModSpellCritChance,
387 ModIncreaseSwimSpeed,
388 ModDamageDoneCreature,
389 ModPacifySilence,
390 ModScale,
391 PeriodicHealthFunnel,
392 Unknown63,
394 PeriodicManaLeech,
395 ModCastingSpeedNotStack,
396 FeignDeath,
397 ModDisarm,
398 ModStalked,
399 SchoolAbsorb,
400 ExtraAttacks,
401 ModSpellCritChanceSchool,
402 ModPowerCostSchoolPct,
403 ModPowerCostSchool,
404 ReflectSpellsSchool,
405 ModLanguage,
406 FarSight,
407 MechanicImmunity,
408 Mounted,
409 ModDamagePercentDone,
410 ModPercentStat,
411 SplitDamagePct,
412 WaterBreathing,
413 ModBaseResistance,
414 ModRegen,
415 ModPowerRegen,
416 ChannelDeathItem,
417 ModDamagePercentTaken,
418 ModHealthRegenPercent,
419 PeriodicDamagePercent,
420 Unknown90,
422 ModDetectRange,
423 PreventsFleeing,
424 ModUnattackable,
425 InterruptRegen,
426 Ghost,
427 SpellMagnet,
428 ManaShield,
429 ModSkillTalent,
430 ModAttackPower,
431 AurasVisible,
432 ModResistancePct,
433 ModMeleeAttackPowerVersus,
434 ModTotalThreat,
435 WaterWalk,
436 FeatherFall,
437 Hover,
438 AddFlatModifier,
439 AddPctModifier,
440 AddTargetTrigger,
441 ModPowerRegenPercent,
442 AddCasterHitTrigger,
443 OverrideClassScripts,
444 ModRangedDamageTaken,
445 ModRangedDamageTakenPct,
446 ModHealing,
447 ModRegenDuringCombat,
448 ModMechanicResistance,
449 ModHealingPct,
450 Unknown119,
452 Untrackable,
453 Empathy,
454 ModOffhandDamagePct,
455 ModTargetResistance,
456 ModRangedAttackPower,
457 ModMeleeDamageTaken,
458 ModMeleeDamageTakenPct,
459 RangedAttackPowerAttackerBonus,
460 ModPossessPet,
461 ModSpeedAlways,
462 ModMountedSpeedAlways,
463 ModRangedAttackPowerVersus,
464 ModIncreaseEnergyPercent,
465 ModIncreaseHealthPercent,
466 ModManaRegenInterrupt,
467 ModHealingDone,
468 ModHealingDonePercent,
469 ModTotalStatPercentage,
470 ModMeleeHaste,
471 ForceReaction,
472 ModRangedHaste,
473 ModRangedAmmoHaste,
474 ModBaseResistancePct,
475 ModResistanceExclusive,
476 SafeFall,
477 ModPetTalentPoints,
478 AllowTamePetType,
479 MechanicImmunityMask,
480 RetainComboPoints,
481 ReducePushback,
483 ModShieldBlockvaluePct,
484 TrackStealthed,
486 ModDetectedRange,
488 SplitDamageFlat,
490 ModStealthLevel,
492 ModWaterBreathing,
494 ModReputationGain,
496 PetDamageMulti,
498 ModShieldBlockvalue,
499 NoPvpCredit,
500 ModAoeAvoidance,
501 ModHealthRegenInCombat,
502 PowerBurn,
503 ModCritDamageBonus,
504 Unknown164,
505 MeleeAttackPowerAttackerBonus,
506 ModAttackPowerPct,
507 ModRangedAttackPowerPct,
508 ModDamageDoneVersus,
509 ModCritPercentVersus,
510 DetectAmore,
511 ModSpeedNotStack,
512 ModMountedSpeedNotStack,
513 Unknown173,
515 ModSpellDamageOfStatPercent,
517 ModSpellHealingOfStatPercent,
518 SpiritOfRedemption,
519 AoeCharm,
520 ModDebuffResistance,
521 ModAttackerSpellCritChance,
522 ModFlatSpellDamageVersus,
523 Unknown181,
525 ModResistanceOfStatPercent,
526 ModCriticalThreat,
527 ModAttackerMeleeHitChance,
528 ModAttackerRangedHitChance,
529 ModAttackerSpellHitChance,
530 ModAttackerMeleeCritChance,
531 ModAttackerRangedCritChance,
532 ModRating,
533 ModFactionReputationGain,
534 UseNormalMovementSpeed,
535 ModMeleeRangedHaste,
536 MeleeSlow,
537 ModTargetAbsorbSchool,
538 ModTargetAbilityAbsorbSchool,
539 ModCooldown,
541 ModAttackerSpellAndWeaponCritChance,
542 Unknown198,
544 ModIncreasesSpellPctToHit,
545 ModXpPct,
546 Fly,
547 IgnoreCombatResult,
548 ModAttackerMeleeCritDamage,
549 ModAttackerRangedCritDamage,
550 ModSchoolCritDmgTaken,
551 ModIncreaseVehicleFlightSpeed,
552 ModIncreaseMountedFlightSpeed,
553 ModIncreaseFlightSpeed,
554 ModMountedFlightSpeedAlways,
555 ModVehicleSpeedAlways,
556 ModFlightSpeedNotStack,
557 ModRangedAttackPowerOfStatPercent,
558 ModRageFromDamageDealt,
559 Unknown214,
560 ArenaPreparation,
561 HasteSpells,
562 ModMeleeHaste2,
564 HasteRanged,
565 ModManaRegenFromStat,
566 ModRatingFromStat,
567 ModDetaunt,
568 Unknown222,
569 RaidProcFromCharge,
570 Unknown224,
571 RaidProcFromChargeWithValue,
572 PeriodicDummy,
573 PeriodicTriggerSpellWithValue,
574 DetectStealth,
575 ModAoeDamageAvoidance,
576 Unknown230,
577 ProcTriggerSpellWithValue,
578 MechanicDurationMod,
579 ChangeModelForAllHumanoids,
581 MechanicDurationModNotStack,
582 ModDispelResist,
583 ControlVehicle,
584 ModSpellDamageOfAttackPower,
585 ModSpellHealingOfAttackPower,
586 ModScale2,
587 ModExpertise,
588 ForceMoveForward,
589 ModSpellDamageFromHealing,
590 ModFaction,
591 ComprehendLanguage,
592 ModAuraDurationByDispel,
593 ModAuraDurationByDispelNotStack,
594 CloneCaster,
595 ModCombatResultChance,
596 ConvertRune,
597 ModIncreaseHealth2,
598 ModEnemyDodge,
599 ModSpeedSlowAll,
600 ModBlockCritChance,
601 ModDisarmOffhand,
602 ModMechanicDamageTakenPercent,
603 NoReagentUse,
604 ModTargetResistBySpellClass,
605 Unknown258,
606 ModHotPct,
607 ScreenEffect,
608 Phase,
609 AbilityIgnoreAurastate,
610 AllowOnlyAbility,
611 Unknown264,
612 Unknown265,
613 Unknown266,
614 ModImmuneAuraApplySchool,
615 ModAttackPowerOfStatPercent,
616 ModIgnoreTargetResist,
617 ModAbilityIgnoreTargetResist,
619 ModDamageFromCaster,
620 IgnoreMeleeReset,
621 XRay,
622 AbilityConsumeNoAmmo,
623 ModIgnoreShapeshift,
624 ModDamageDoneForMechanic,
626 ModMaxAffectedTargets,
627 ModDisarmRanged,
628 InitializeImages,
629 ModArmorPenetrationPct,
630 ModHonorGainPct,
631 ModBaseHealthPct,
632 ModHealingReceived,
634 Linked,
635 ModAttackPowerOfArmor,
636 AbilityPeriodicCrit,
637 DeflectSpells,
638 IgnoreHitDirection,
639 PreventDurabilityLoss,
640 ModCritPct,
641 ModXpQuestPct,
642 OpenStable,
643 OverrideSpells,
644 PreventRegeneratePower,
645 Unknown295,
646 SetVehicleId,
647 BlockSpellFamily,
648 Strangulate,
649 Unknown299,
650 ShareDamagePct,
651 SchoolHealAbsorb,
652 Unknown302,
653 ModDamageDoneVersusAurastate,
654 ModFakeInebriate,
655 ModMinimumSpeed,
656 Unknown306,
657 HealAbsorbTest,
658 ModCritChanceForCaster,
659 Unknown309,
660 ModCreatureAoeDamageAvoidance,
661 Unknown311,
662 Unknown312,
663 Unknown313,
664 PreventResurrection,
665 UnderwaterWalking,
666 PeriodicHaste,
667}
668
669impl AuraType {
670 pub const fn as_int(&self) -> u32 {
671 match self {
672 Self::None => 0x0,
673 Self::BindSight => 0x1,
674 Self::ModPossess => 0x2,
675 Self::PeriodicDamage => 0x3,
676 Self::Dummy => 0x4,
677 Self::ModConfuse => 0x5,
678 Self::ModCharm => 0x6,
679 Self::ModFear => 0x7,
680 Self::PeriodicHeal => 0x8,
681 Self::ModAttackspeed => 0x9,
682 Self::ModThreat => 0xa,
683 Self::ModTaunt => 0xb,
684 Self::ModStun => 0xc,
685 Self::ModDamageDone => 0xd,
686 Self::ModDamageTaken => 0xe,
687 Self::DamageShield => 0xf,
688 Self::ModStealth => 0x10,
689 Self::ModStealthDetect => 0x11,
690 Self::ModInvisibility => 0x12,
691 Self::ModInvisibilityDetect => 0x13,
692 Self::ObsModHealth => 0x14,
693 Self::ObsModPower => 0x15,
694 Self::ModResistance => 0x16,
695 Self::PeriodicTriggerSpell => 0x17,
696 Self::PeriodicEnergize => 0x18,
697 Self::ModPacify => 0x19,
698 Self::ModRoot => 0x1a,
699 Self::ModSilence => 0x1b,
700 Self::ReflectSpells => 0x1c,
701 Self::ModStat => 0x1d,
702 Self::ModSkill => 0x1e,
703 Self::ModIncreaseSpeed => 0x1f,
704 Self::ModIncreaseMountedSpeed => 0x20,
705 Self::ModDecreaseSpeed => 0x21,
706 Self::ModIncreaseHealth => 0x22,
707 Self::ModIncreaseEnergy => 0x23,
708 Self::ModShapeshift => 0x24,
709 Self::EffectImmunity => 0x25,
710 Self::StateImmunity => 0x26,
711 Self::SchoolImmunity => 0x27,
712 Self::DamageImmunity => 0x28,
713 Self::DispelImmunity => 0x29,
714 Self::ProcTriggerSpell => 0x2a,
715 Self::ProcTriggerDamage => 0x2b,
716 Self::TrackCreatures => 0x2c,
717 Self::TrackResources => 0x2d,
718 Self::Unknown46 => 0x2e,
719 Self::ModParryPercent => 0x2f,
720 Self::PeriodicTriggerSpellFromClient => 0x30,
721 Self::ModDodgePercent => 0x31,
722 Self::ModCriticalHealingAmount => 0x32,
723 Self::ModBlockPercent => 0x33,
724 Self::ModWeaponCritPercent => 0x34,
725 Self::PeriodicLeech => 0x35,
726 Self::ModHitChance => 0x36,
727 Self::ModSpellHitChance => 0x37,
728 Self::Transform => 0x38,
729 Self::ModSpellCritChance => 0x39,
730 Self::ModIncreaseSwimSpeed => 0x3a,
731 Self::ModDamageDoneCreature => 0x3b,
732 Self::ModPacifySilence => 0x3c,
733 Self::ModScale => 0x3d,
734 Self::PeriodicHealthFunnel => 0x3e,
735 Self::Unknown63 => 0x3f,
736 Self::PeriodicManaLeech => 0x40,
737 Self::ModCastingSpeedNotStack => 0x41,
738 Self::FeignDeath => 0x42,
739 Self::ModDisarm => 0x43,
740 Self::ModStalked => 0x44,
741 Self::SchoolAbsorb => 0x45,
742 Self::ExtraAttacks => 0x46,
743 Self::ModSpellCritChanceSchool => 0x47,
744 Self::ModPowerCostSchoolPct => 0x48,
745 Self::ModPowerCostSchool => 0x49,
746 Self::ReflectSpellsSchool => 0x4a,
747 Self::ModLanguage => 0x4b,
748 Self::FarSight => 0x4c,
749 Self::MechanicImmunity => 0x4d,
750 Self::Mounted => 0x4e,
751 Self::ModDamagePercentDone => 0x4f,
752 Self::ModPercentStat => 0x50,
753 Self::SplitDamagePct => 0x51,
754 Self::WaterBreathing => 0x52,
755 Self::ModBaseResistance => 0x53,
756 Self::ModRegen => 0x54,
757 Self::ModPowerRegen => 0x55,
758 Self::ChannelDeathItem => 0x56,
759 Self::ModDamagePercentTaken => 0x57,
760 Self::ModHealthRegenPercent => 0x58,
761 Self::PeriodicDamagePercent => 0x59,
762 Self::Unknown90 => 0x5a,
763 Self::ModDetectRange => 0x5b,
764 Self::PreventsFleeing => 0x5c,
765 Self::ModUnattackable => 0x5d,
766 Self::InterruptRegen => 0x5e,
767 Self::Ghost => 0x5f,
768 Self::SpellMagnet => 0x60,
769 Self::ManaShield => 0x61,
770 Self::ModSkillTalent => 0x62,
771 Self::ModAttackPower => 0x63,
772 Self::AurasVisible => 0x64,
773 Self::ModResistancePct => 0x65,
774 Self::ModMeleeAttackPowerVersus => 0x66,
775 Self::ModTotalThreat => 0x67,
776 Self::WaterWalk => 0x68,
777 Self::FeatherFall => 0x69,
778 Self::Hover => 0x6a,
779 Self::AddFlatModifier => 0x6b,
780 Self::AddPctModifier => 0x6c,
781 Self::AddTargetTrigger => 0x6d,
782 Self::ModPowerRegenPercent => 0x6e,
783 Self::AddCasterHitTrigger => 0x6f,
784 Self::OverrideClassScripts => 0x70,
785 Self::ModRangedDamageTaken => 0x71,
786 Self::ModRangedDamageTakenPct => 0x72,
787 Self::ModHealing => 0x73,
788 Self::ModRegenDuringCombat => 0x74,
789 Self::ModMechanicResistance => 0x75,
790 Self::ModHealingPct => 0x76,
791 Self::Unknown119 => 0x77,
792 Self::Untrackable => 0x78,
793 Self::Empathy => 0x79,
794 Self::ModOffhandDamagePct => 0x7a,
795 Self::ModTargetResistance => 0x7b,
796 Self::ModRangedAttackPower => 0x7c,
797 Self::ModMeleeDamageTaken => 0x7d,
798 Self::ModMeleeDamageTakenPct => 0x7e,
799 Self::RangedAttackPowerAttackerBonus => 0x7f,
800 Self::ModPossessPet => 0x80,
801 Self::ModSpeedAlways => 0x81,
802 Self::ModMountedSpeedAlways => 0x82,
803 Self::ModRangedAttackPowerVersus => 0x83,
804 Self::ModIncreaseEnergyPercent => 0x84,
805 Self::ModIncreaseHealthPercent => 0x85,
806 Self::ModManaRegenInterrupt => 0x86,
807 Self::ModHealingDone => 0x87,
808 Self::ModHealingDonePercent => 0x88,
809 Self::ModTotalStatPercentage => 0x89,
810 Self::ModMeleeHaste => 0x8a,
811 Self::ForceReaction => 0x8b,
812 Self::ModRangedHaste => 0x8c,
813 Self::ModRangedAmmoHaste => 0x8d,
814 Self::ModBaseResistancePct => 0x8e,
815 Self::ModResistanceExclusive => 0x8f,
816 Self::SafeFall => 0x90,
817 Self::ModPetTalentPoints => 0x91,
818 Self::AllowTamePetType => 0x92,
819 Self::MechanicImmunityMask => 0x93,
820 Self::RetainComboPoints => 0x94,
821 Self::ReducePushback => 0x95,
822 Self::ModShieldBlockvaluePct => 0x96,
823 Self::TrackStealthed => 0x97,
824 Self::ModDetectedRange => 0x98,
825 Self::SplitDamageFlat => 0x99,
826 Self::ModStealthLevel => 0x9a,
827 Self::ModWaterBreathing => 0x9b,
828 Self::ModReputationGain => 0x9c,
829 Self::PetDamageMulti => 0x9d,
830 Self::ModShieldBlockvalue => 0x9e,
831 Self::NoPvpCredit => 0x9f,
832 Self::ModAoeAvoidance => 0xa0,
833 Self::ModHealthRegenInCombat => 0xa1,
834 Self::PowerBurn => 0xa2,
835 Self::ModCritDamageBonus => 0xa3,
836 Self::Unknown164 => 0xa4,
837 Self::MeleeAttackPowerAttackerBonus => 0xa5,
838 Self::ModAttackPowerPct => 0xa6,
839 Self::ModRangedAttackPowerPct => 0xa7,
840 Self::ModDamageDoneVersus => 0xa8,
841 Self::ModCritPercentVersus => 0xa9,
842 Self::DetectAmore => 0xaa,
843 Self::ModSpeedNotStack => 0xab,
844 Self::ModMountedSpeedNotStack => 0xac,
845 Self::Unknown173 => 0xad,
846 Self::ModSpellDamageOfStatPercent => 0xae,
847 Self::ModSpellHealingOfStatPercent => 0xaf,
848 Self::SpiritOfRedemption => 0xb0,
849 Self::AoeCharm => 0xb1,
850 Self::ModDebuffResistance => 0xb2,
851 Self::ModAttackerSpellCritChance => 0xb3,
852 Self::ModFlatSpellDamageVersus => 0xb4,
853 Self::Unknown181 => 0xb5,
854 Self::ModResistanceOfStatPercent => 0xb6,
855 Self::ModCriticalThreat => 0xb7,
856 Self::ModAttackerMeleeHitChance => 0xb8,
857 Self::ModAttackerRangedHitChance => 0xb9,
858 Self::ModAttackerSpellHitChance => 0xba,
859 Self::ModAttackerMeleeCritChance => 0xbb,
860 Self::ModAttackerRangedCritChance => 0xbc,
861 Self::ModRating => 0xbd,
862 Self::ModFactionReputationGain => 0xbe,
863 Self::UseNormalMovementSpeed => 0xbf,
864 Self::ModMeleeRangedHaste => 0xc0,
865 Self::MeleeSlow => 0xc1,
866 Self::ModTargetAbsorbSchool => 0xc2,
867 Self::ModTargetAbilityAbsorbSchool => 0xc3,
868 Self::ModCooldown => 0xc4,
869 Self::ModAttackerSpellAndWeaponCritChance => 0xc5,
870 Self::Unknown198 => 0xc6,
871 Self::ModIncreasesSpellPctToHit => 0xc7,
872 Self::ModXpPct => 0xc8,
873 Self::Fly => 0xc9,
874 Self::IgnoreCombatResult => 0xca,
875 Self::ModAttackerMeleeCritDamage => 0xcb,
876 Self::ModAttackerRangedCritDamage => 0xcc,
877 Self::ModSchoolCritDmgTaken => 0xcd,
878 Self::ModIncreaseVehicleFlightSpeed => 0xce,
879 Self::ModIncreaseMountedFlightSpeed => 0xcf,
880 Self::ModIncreaseFlightSpeed => 0xd0,
881 Self::ModMountedFlightSpeedAlways => 0xd1,
882 Self::ModVehicleSpeedAlways => 0xd2,
883 Self::ModFlightSpeedNotStack => 0xd3,
884 Self::ModRangedAttackPowerOfStatPercent => 0xd4,
885 Self::ModRageFromDamageDealt => 0xd5,
886 Self::Unknown214 => 0xd6,
887 Self::ArenaPreparation => 0xd7,
888 Self::HasteSpells => 0xd8,
889 Self::ModMeleeHaste2 => 0xd9,
890 Self::HasteRanged => 0xda,
891 Self::ModManaRegenFromStat => 0xdb,
892 Self::ModRatingFromStat => 0xdc,
893 Self::ModDetaunt => 0xdd,
894 Self::Unknown222 => 0xde,
895 Self::RaidProcFromCharge => 0xdf,
896 Self::Unknown224 => 0xe0,
897 Self::RaidProcFromChargeWithValue => 0xe1,
898 Self::PeriodicDummy => 0xe2,
899 Self::PeriodicTriggerSpellWithValue => 0xe3,
900 Self::DetectStealth => 0xe4,
901 Self::ModAoeDamageAvoidance => 0xe5,
902 Self::Unknown230 => 0xe6,
903 Self::ProcTriggerSpellWithValue => 0xe7,
904 Self::MechanicDurationMod => 0xe8,
905 Self::ChangeModelForAllHumanoids => 0xe9,
906 Self::MechanicDurationModNotStack => 0xea,
907 Self::ModDispelResist => 0xeb,
908 Self::ControlVehicle => 0xec,
909 Self::ModSpellDamageOfAttackPower => 0xed,
910 Self::ModSpellHealingOfAttackPower => 0xee,
911 Self::ModScale2 => 0xef,
912 Self::ModExpertise => 0xf0,
913 Self::ForceMoveForward => 0xf1,
914 Self::ModSpellDamageFromHealing => 0xf2,
915 Self::ModFaction => 0xf3,
916 Self::ComprehendLanguage => 0xf4,
917 Self::ModAuraDurationByDispel => 0xf5,
918 Self::ModAuraDurationByDispelNotStack => 0xf6,
919 Self::CloneCaster => 0xf7,
920 Self::ModCombatResultChance => 0xf8,
921 Self::ConvertRune => 0xf9,
922 Self::ModIncreaseHealth2 => 0xfa,
923 Self::ModEnemyDodge => 0xfb,
924 Self::ModSpeedSlowAll => 0xfc,
925 Self::ModBlockCritChance => 0xfd,
926 Self::ModDisarmOffhand => 0xfe,
927 Self::ModMechanicDamageTakenPercent => 0xff,
928 Self::NoReagentUse => 0x100,
929 Self::ModTargetResistBySpellClass => 0x101,
930 Self::Unknown258 => 0x102,
931 Self::ModHotPct => 0x103,
932 Self::ScreenEffect => 0x104,
933 Self::Phase => 0x105,
934 Self::AbilityIgnoreAurastate => 0x106,
935 Self::AllowOnlyAbility => 0x107,
936 Self::Unknown264 => 0x108,
937 Self::Unknown265 => 0x109,
938 Self::Unknown266 => 0x10a,
939 Self::ModImmuneAuraApplySchool => 0x10b,
940 Self::ModAttackPowerOfStatPercent => 0x10c,
941 Self::ModIgnoreTargetResist => 0x10d,
942 Self::ModAbilityIgnoreTargetResist => 0x10e,
943 Self::ModDamageFromCaster => 0x10f,
944 Self::IgnoreMeleeReset => 0x110,
945 Self::XRay => 0x111,
946 Self::AbilityConsumeNoAmmo => 0x112,
947 Self::ModIgnoreShapeshift => 0x113,
948 Self::ModDamageDoneForMechanic => 0x114,
949 Self::ModMaxAffectedTargets => 0x115,
950 Self::ModDisarmRanged => 0x116,
951 Self::InitializeImages => 0x117,
952 Self::ModArmorPenetrationPct => 0x118,
953 Self::ModHonorGainPct => 0x119,
954 Self::ModBaseHealthPct => 0x11a,
955 Self::ModHealingReceived => 0x11b,
956 Self::Linked => 0x11c,
957 Self::ModAttackPowerOfArmor => 0x11d,
958 Self::AbilityPeriodicCrit => 0x11e,
959 Self::DeflectSpells => 0x11f,
960 Self::IgnoreHitDirection => 0x120,
961 Self::PreventDurabilityLoss => 0x121,
962 Self::ModCritPct => 0x122,
963 Self::ModXpQuestPct => 0x123,
964 Self::OpenStable => 0x124,
965 Self::OverrideSpells => 0x125,
966 Self::PreventRegeneratePower => 0x126,
967 Self::Unknown295 => 0x127,
968 Self::SetVehicleId => 0x128,
969 Self::BlockSpellFamily => 0x129,
970 Self::Strangulate => 0x12a,
971 Self::Unknown299 => 0x12b,
972 Self::ShareDamagePct => 0x12c,
973 Self::SchoolHealAbsorb => 0x12d,
974 Self::Unknown302 => 0x12e,
975 Self::ModDamageDoneVersusAurastate => 0x12f,
976 Self::ModFakeInebriate => 0x130,
977 Self::ModMinimumSpeed => 0x131,
978 Self::Unknown306 => 0x132,
979 Self::HealAbsorbTest => 0x133,
980 Self::ModCritChanceForCaster => 0x134,
981 Self::Unknown309 => 0x135,
982 Self::ModCreatureAoeDamageAvoidance => 0x136,
983 Self::Unknown311 => 0x137,
984 Self::Unknown312 => 0x138,
985 Self::Unknown313 => 0x139,
986 Self::PreventResurrection => 0x13a,
987 Self::UnderwaterWalking => 0x13b,
988 Self::PeriodicHaste => 0x13c,
989 }
990 }
991
992 pub const fn variants() -> [Self; 317] {
993 [
994 Self::None,
995 Self::BindSight,
996 Self::ModPossess,
997 Self::PeriodicDamage,
998 Self::Dummy,
999 Self::ModConfuse,
1000 Self::ModCharm,
1001 Self::ModFear,
1002 Self::PeriodicHeal,
1003 Self::ModAttackspeed,
1004 Self::ModThreat,
1005 Self::ModTaunt,
1006 Self::ModStun,
1007 Self::ModDamageDone,
1008 Self::ModDamageTaken,
1009 Self::DamageShield,
1010 Self::ModStealth,
1011 Self::ModStealthDetect,
1012 Self::ModInvisibility,
1013 Self::ModInvisibilityDetect,
1014 Self::ObsModHealth,
1015 Self::ObsModPower,
1016 Self::ModResistance,
1017 Self::PeriodicTriggerSpell,
1018 Self::PeriodicEnergize,
1019 Self::ModPacify,
1020 Self::ModRoot,
1021 Self::ModSilence,
1022 Self::ReflectSpells,
1023 Self::ModStat,
1024 Self::ModSkill,
1025 Self::ModIncreaseSpeed,
1026 Self::ModIncreaseMountedSpeed,
1027 Self::ModDecreaseSpeed,
1028 Self::ModIncreaseHealth,
1029 Self::ModIncreaseEnergy,
1030 Self::ModShapeshift,
1031 Self::EffectImmunity,
1032 Self::StateImmunity,
1033 Self::SchoolImmunity,
1034 Self::DamageImmunity,
1035 Self::DispelImmunity,
1036 Self::ProcTriggerSpell,
1037 Self::ProcTriggerDamage,
1038 Self::TrackCreatures,
1039 Self::TrackResources,
1040 Self::Unknown46,
1041 Self::ModParryPercent,
1042 Self::PeriodicTriggerSpellFromClient,
1043 Self::ModDodgePercent,
1044 Self::ModCriticalHealingAmount,
1045 Self::ModBlockPercent,
1046 Self::ModWeaponCritPercent,
1047 Self::PeriodicLeech,
1048 Self::ModHitChance,
1049 Self::ModSpellHitChance,
1050 Self::Transform,
1051 Self::ModSpellCritChance,
1052 Self::ModIncreaseSwimSpeed,
1053 Self::ModDamageDoneCreature,
1054 Self::ModPacifySilence,
1055 Self::ModScale,
1056 Self::PeriodicHealthFunnel,
1057 Self::Unknown63,
1058 Self::PeriodicManaLeech,
1059 Self::ModCastingSpeedNotStack,
1060 Self::FeignDeath,
1061 Self::ModDisarm,
1062 Self::ModStalked,
1063 Self::SchoolAbsorb,
1064 Self::ExtraAttacks,
1065 Self::ModSpellCritChanceSchool,
1066 Self::ModPowerCostSchoolPct,
1067 Self::ModPowerCostSchool,
1068 Self::ReflectSpellsSchool,
1069 Self::ModLanguage,
1070 Self::FarSight,
1071 Self::MechanicImmunity,
1072 Self::Mounted,
1073 Self::ModDamagePercentDone,
1074 Self::ModPercentStat,
1075 Self::SplitDamagePct,
1076 Self::WaterBreathing,
1077 Self::ModBaseResistance,
1078 Self::ModRegen,
1079 Self::ModPowerRegen,
1080 Self::ChannelDeathItem,
1081 Self::ModDamagePercentTaken,
1082 Self::ModHealthRegenPercent,
1083 Self::PeriodicDamagePercent,
1084 Self::Unknown90,
1085 Self::ModDetectRange,
1086 Self::PreventsFleeing,
1087 Self::ModUnattackable,
1088 Self::InterruptRegen,
1089 Self::Ghost,
1090 Self::SpellMagnet,
1091 Self::ManaShield,
1092 Self::ModSkillTalent,
1093 Self::ModAttackPower,
1094 Self::AurasVisible,
1095 Self::ModResistancePct,
1096 Self::ModMeleeAttackPowerVersus,
1097 Self::ModTotalThreat,
1098 Self::WaterWalk,
1099 Self::FeatherFall,
1100 Self::Hover,
1101 Self::AddFlatModifier,
1102 Self::AddPctModifier,
1103 Self::AddTargetTrigger,
1104 Self::ModPowerRegenPercent,
1105 Self::AddCasterHitTrigger,
1106 Self::OverrideClassScripts,
1107 Self::ModRangedDamageTaken,
1108 Self::ModRangedDamageTakenPct,
1109 Self::ModHealing,
1110 Self::ModRegenDuringCombat,
1111 Self::ModMechanicResistance,
1112 Self::ModHealingPct,
1113 Self::Unknown119,
1114 Self::Untrackable,
1115 Self::Empathy,
1116 Self::ModOffhandDamagePct,
1117 Self::ModTargetResistance,
1118 Self::ModRangedAttackPower,
1119 Self::ModMeleeDamageTaken,
1120 Self::ModMeleeDamageTakenPct,
1121 Self::RangedAttackPowerAttackerBonus,
1122 Self::ModPossessPet,
1123 Self::ModSpeedAlways,
1124 Self::ModMountedSpeedAlways,
1125 Self::ModRangedAttackPowerVersus,
1126 Self::ModIncreaseEnergyPercent,
1127 Self::ModIncreaseHealthPercent,
1128 Self::ModManaRegenInterrupt,
1129 Self::ModHealingDone,
1130 Self::ModHealingDonePercent,
1131 Self::ModTotalStatPercentage,
1132 Self::ModMeleeHaste,
1133 Self::ForceReaction,
1134 Self::ModRangedHaste,
1135 Self::ModRangedAmmoHaste,
1136 Self::ModBaseResistancePct,
1137 Self::ModResistanceExclusive,
1138 Self::SafeFall,
1139 Self::ModPetTalentPoints,
1140 Self::AllowTamePetType,
1141 Self::MechanicImmunityMask,
1142 Self::RetainComboPoints,
1143 Self::ReducePushback,
1144 Self::ModShieldBlockvaluePct,
1145 Self::TrackStealthed,
1146 Self::ModDetectedRange,
1147 Self::SplitDamageFlat,
1148 Self::ModStealthLevel,
1149 Self::ModWaterBreathing,
1150 Self::ModReputationGain,
1151 Self::PetDamageMulti,
1152 Self::ModShieldBlockvalue,
1153 Self::NoPvpCredit,
1154 Self::ModAoeAvoidance,
1155 Self::ModHealthRegenInCombat,
1156 Self::PowerBurn,
1157 Self::ModCritDamageBonus,
1158 Self::Unknown164,
1159 Self::MeleeAttackPowerAttackerBonus,
1160 Self::ModAttackPowerPct,
1161 Self::ModRangedAttackPowerPct,
1162 Self::ModDamageDoneVersus,
1163 Self::ModCritPercentVersus,
1164 Self::DetectAmore,
1165 Self::ModSpeedNotStack,
1166 Self::ModMountedSpeedNotStack,
1167 Self::Unknown173,
1168 Self::ModSpellDamageOfStatPercent,
1169 Self::ModSpellHealingOfStatPercent,
1170 Self::SpiritOfRedemption,
1171 Self::AoeCharm,
1172 Self::ModDebuffResistance,
1173 Self::ModAttackerSpellCritChance,
1174 Self::ModFlatSpellDamageVersus,
1175 Self::Unknown181,
1176 Self::ModResistanceOfStatPercent,
1177 Self::ModCriticalThreat,
1178 Self::ModAttackerMeleeHitChance,
1179 Self::ModAttackerRangedHitChance,
1180 Self::ModAttackerSpellHitChance,
1181 Self::ModAttackerMeleeCritChance,
1182 Self::ModAttackerRangedCritChance,
1183 Self::ModRating,
1184 Self::ModFactionReputationGain,
1185 Self::UseNormalMovementSpeed,
1186 Self::ModMeleeRangedHaste,
1187 Self::MeleeSlow,
1188 Self::ModTargetAbsorbSchool,
1189 Self::ModTargetAbilityAbsorbSchool,
1190 Self::ModCooldown,
1191 Self::ModAttackerSpellAndWeaponCritChance,
1192 Self::Unknown198,
1193 Self::ModIncreasesSpellPctToHit,
1194 Self::ModXpPct,
1195 Self::Fly,
1196 Self::IgnoreCombatResult,
1197 Self::ModAttackerMeleeCritDamage,
1198 Self::ModAttackerRangedCritDamage,
1199 Self::ModSchoolCritDmgTaken,
1200 Self::ModIncreaseVehicleFlightSpeed,
1201 Self::ModIncreaseMountedFlightSpeed,
1202 Self::ModIncreaseFlightSpeed,
1203 Self::ModMountedFlightSpeedAlways,
1204 Self::ModVehicleSpeedAlways,
1205 Self::ModFlightSpeedNotStack,
1206 Self::ModRangedAttackPowerOfStatPercent,
1207 Self::ModRageFromDamageDealt,
1208 Self::Unknown214,
1209 Self::ArenaPreparation,
1210 Self::HasteSpells,
1211 Self::ModMeleeHaste2,
1212 Self::HasteRanged,
1213 Self::ModManaRegenFromStat,
1214 Self::ModRatingFromStat,
1215 Self::ModDetaunt,
1216 Self::Unknown222,
1217 Self::RaidProcFromCharge,
1218 Self::Unknown224,
1219 Self::RaidProcFromChargeWithValue,
1220 Self::PeriodicDummy,
1221 Self::PeriodicTriggerSpellWithValue,
1222 Self::DetectStealth,
1223 Self::ModAoeDamageAvoidance,
1224 Self::Unknown230,
1225 Self::ProcTriggerSpellWithValue,
1226 Self::MechanicDurationMod,
1227 Self::ChangeModelForAllHumanoids,
1228 Self::MechanicDurationModNotStack,
1229 Self::ModDispelResist,
1230 Self::ControlVehicle,
1231 Self::ModSpellDamageOfAttackPower,
1232 Self::ModSpellHealingOfAttackPower,
1233 Self::ModScale2,
1234 Self::ModExpertise,
1235 Self::ForceMoveForward,
1236 Self::ModSpellDamageFromHealing,
1237 Self::ModFaction,
1238 Self::ComprehendLanguage,
1239 Self::ModAuraDurationByDispel,
1240 Self::ModAuraDurationByDispelNotStack,
1241 Self::CloneCaster,
1242 Self::ModCombatResultChance,
1243 Self::ConvertRune,
1244 Self::ModIncreaseHealth2,
1245 Self::ModEnemyDodge,
1246 Self::ModSpeedSlowAll,
1247 Self::ModBlockCritChance,
1248 Self::ModDisarmOffhand,
1249 Self::ModMechanicDamageTakenPercent,
1250 Self::NoReagentUse,
1251 Self::ModTargetResistBySpellClass,
1252 Self::Unknown258,
1253 Self::ModHotPct,
1254 Self::ScreenEffect,
1255 Self::Phase,
1256 Self::AbilityIgnoreAurastate,
1257 Self::AllowOnlyAbility,
1258 Self::Unknown264,
1259 Self::Unknown265,
1260 Self::Unknown266,
1261 Self::ModImmuneAuraApplySchool,
1262 Self::ModAttackPowerOfStatPercent,
1263 Self::ModIgnoreTargetResist,
1264 Self::ModAbilityIgnoreTargetResist,
1265 Self::ModDamageFromCaster,
1266 Self::IgnoreMeleeReset,
1267 Self::XRay,
1268 Self::AbilityConsumeNoAmmo,
1269 Self::ModIgnoreShapeshift,
1270 Self::ModDamageDoneForMechanic,
1271 Self::ModMaxAffectedTargets,
1272 Self::ModDisarmRanged,
1273 Self::InitializeImages,
1274 Self::ModArmorPenetrationPct,
1275 Self::ModHonorGainPct,
1276 Self::ModBaseHealthPct,
1277 Self::ModHealingReceived,
1278 Self::Linked,
1279 Self::ModAttackPowerOfArmor,
1280 Self::AbilityPeriodicCrit,
1281 Self::DeflectSpells,
1282 Self::IgnoreHitDirection,
1283 Self::PreventDurabilityLoss,
1284 Self::ModCritPct,
1285 Self::ModXpQuestPct,
1286 Self::OpenStable,
1287 Self::OverrideSpells,
1288 Self::PreventRegeneratePower,
1289 Self::Unknown295,
1290 Self::SetVehicleId,
1291 Self::BlockSpellFamily,
1292 Self::Strangulate,
1293 Self::Unknown299,
1294 Self::ShareDamagePct,
1295 Self::SchoolHealAbsorb,
1296 Self::Unknown302,
1297 Self::ModDamageDoneVersusAurastate,
1298 Self::ModFakeInebriate,
1299 Self::ModMinimumSpeed,
1300 Self::Unknown306,
1301 Self::HealAbsorbTest,
1302 Self::ModCritChanceForCaster,
1303 Self::Unknown309,
1304 Self::ModCreatureAoeDamageAvoidance,
1305 Self::Unknown311,
1306 Self::Unknown312,
1307 Self::Unknown313,
1308 Self::PreventResurrection,
1309 Self::UnderwaterWalking,
1310 Self::PeriodicHaste,
1311 ]
1312 }
1313
1314 pub const fn from_int(value: u32) -> Result<Self, crate::errors::EnumError> {
1315 match value {
1316 0 => Ok(Self::None),
1317 1 => Ok(Self::BindSight),
1318 2 => Ok(Self::ModPossess),
1319 3 => Ok(Self::PeriodicDamage),
1320 4 => Ok(Self::Dummy),
1321 5 => Ok(Self::ModConfuse),
1322 6 => Ok(Self::ModCharm),
1323 7 => Ok(Self::ModFear),
1324 8 => Ok(Self::PeriodicHeal),
1325 9 => Ok(Self::ModAttackspeed),
1326 10 => Ok(Self::ModThreat),
1327 11 => Ok(Self::ModTaunt),
1328 12 => Ok(Self::ModStun),
1329 13 => Ok(Self::ModDamageDone),
1330 14 => Ok(Self::ModDamageTaken),
1331 15 => Ok(Self::DamageShield),
1332 16 => Ok(Self::ModStealth),
1333 17 => Ok(Self::ModStealthDetect),
1334 18 => Ok(Self::ModInvisibility),
1335 19 => Ok(Self::ModInvisibilityDetect),
1336 20 => Ok(Self::ObsModHealth),
1337 21 => Ok(Self::ObsModPower),
1338 22 => Ok(Self::ModResistance),
1339 23 => Ok(Self::PeriodicTriggerSpell),
1340 24 => Ok(Self::PeriodicEnergize),
1341 25 => Ok(Self::ModPacify),
1342 26 => Ok(Self::ModRoot),
1343 27 => Ok(Self::ModSilence),
1344 28 => Ok(Self::ReflectSpells),
1345 29 => Ok(Self::ModStat),
1346 30 => Ok(Self::ModSkill),
1347 31 => Ok(Self::ModIncreaseSpeed),
1348 32 => Ok(Self::ModIncreaseMountedSpeed),
1349 33 => Ok(Self::ModDecreaseSpeed),
1350 34 => Ok(Self::ModIncreaseHealth),
1351 35 => Ok(Self::ModIncreaseEnergy),
1352 36 => Ok(Self::ModShapeshift),
1353 37 => Ok(Self::EffectImmunity),
1354 38 => Ok(Self::StateImmunity),
1355 39 => Ok(Self::SchoolImmunity),
1356 40 => Ok(Self::DamageImmunity),
1357 41 => Ok(Self::DispelImmunity),
1358 42 => Ok(Self::ProcTriggerSpell),
1359 43 => Ok(Self::ProcTriggerDamage),
1360 44 => Ok(Self::TrackCreatures),
1361 45 => Ok(Self::TrackResources),
1362 46 => Ok(Self::Unknown46),
1363 47 => Ok(Self::ModParryPercent),
1364 48 => Ok(Self::PeriodicTriggerSpellFromClient),
1365 49 => Ok(Self::ModDodgePercent),
1366 50 => Ok(Self::ModCriticalHealingAmount),
1367 51 => Ok(Self::ModBlockPercent),
1368 52 => Ok(Self::ModWeaponCritPercent),
1369 53 => Ok(Self::PeriodicLeech),
1370 54 => Ok(Self::ModHitChance),
1371 55 => Ok(Self::ModSpellHitChance),
1372 56 => Ok(Self::Transform),
1373 57 => Ok(Self::ModSpellCritChance),
1374 58 => Ok(Self::ModIncreaseSwimSpeed),
1375 59 => Ok(Self::ModDamageDoneCreature),
1376 60 => Ok(Self::ModPacifySilence),
1377 61 => Ok(Self::ModScale),
1378 62 => Ok(Self::PeriodicHealthFunnel),
1379 63 => Ok(Self::Unknown63),
1380 64 => Ok(Self::PeriodicManaLeech),
1381 65 => Ok(Self::ModCastingSpeedNotStack),
1382 66 => Ok(Self::FeignDeath),
1383 67 => Ok(Self::ModDisarm),
1384 68 => Ok(Self::ModStalked),
1385 69 => Ok(Self::SchoolAbsorb),
1386 70 => Ok(Self::ExtraAttacks),
1387 71 => Ok(Self::ModSpellCritChanceSchool),
1388 72 => Ok(Self::ModPowerCostSchoolPct),
1389 73 => Ok(Self::ModPowerCostSchool),
1390 74 => Ok(Self::ReflectSpellsSchool),
1391 75 => Ok(Self::ModLanguage),
1392 76 => Ok(Self::FarSight),
1393 77 => Ok(Self::MechanicImmunity),
1394 78 => Ok(Self::Mounted),
1395 79 => Ok(Self::ModDamagePercentDone),
1396 80 => Ok(Self::ModPercentStat),
1397 81 => Ok(Self::SplitDamagePct),
1398 82 => Ok(Self::WaterBreathing),
1399 83 => Ok(Self::ModBaseResistance),
1400 84 => Ok(Self::ModRegen),
1401 85 => Ok(Self::ModPowerRegen),
1402 86 => Ok(Self::ChannelDeathItem),
1403 87 => Ok(Self::ModDamagePercentTaken),
1404 88 => Ok(Self::ModHealthRegenPercent),
1405 89 => Ok(Self::PeriodicDamagePercent),
1406 90 => Ok(Self::Unknown90),
1407 91 => Ok(Self::ModDetectRange),
1408 92 => Ok(Self::PreventsFleeing),
1409 93 => Ok(Self::ModUnattackable),
1410 94 => Ok(Self::InterruptRegen),
1411 95 => Ok(Self::Ghost),
1412 96 => Ok(Self::SpellMagnet),
1413 97 => Ok(Self::ManaShield),
1414 98 => Ok(Self::ModSkillTalent),
1415 99 => Ok(Self::ModAttackPower),
1416 100 => Ok(Self::AurasVisible),
1417 101 => Ok(Self::ModResistancePct),
1418 102 => Ok(Self::ModMeleeAttackPowerVersus),
1419 103 => Ok(Self::ModTotalThreat),
1420 104 => Ok(Self::WaterWalk),
1421 105 => Ok(Self::FeatherFall),
1422 106 => Ok(Self::Hover),
1423 107 => Ok(Self::AddFlatModifier),
1424 108 => Ok(Self::AddPctModifier),
1425 109 => Ok(Self::AddTargetTrigger),
1426 110 => Ok(Self::ModPowerRegenPercent),
1427 111 => Ok(Self::AddCasterHitTrigger),
1428 112 => Ok(Self::OverrideClassScripts),
1429 113 => Ok(Self::ModRangedDamageTaken),
1430 114 => Ok(Self::ModRangedDamageTakenPct),
1431 115 => Ok(Self::ModHealing),
1432 116 => Ok(Self::ModRegenDuringCombat),
1433 117 => Ok(Self::ModMechanicResistance),
1434 118 => Ok(Self::ModHealingPct),
1435 119 => Ok(Self::Unknown119),
1436 120 => Ok(Self::Untrackable),
1437 121 => Ok(Self::Empathy),
1438 122 => Ok(Self::ModOffhandDamagePct),
1439 123 => Ok(Self::ModTargetResistance),
1440 124 => Ok(Self::ModRangedAttackPower),
1441 125 => Ok(Self::ModMeleeDamageTaken),
1442 126 => Ok(Self::ModMeleeDamageTakenPct),
1443 127 => Ok(Self::RangedAttackPowerAttackerBonus),
1444 128 => Ok(Self::ModPossessPet),
1445 129 => Ok(Self::ModSpeedAlways),
1446 130 => Ok(Self::ModMountedSpeedAlways),
1447 131 => Ok(Self::ModRangedAttackPowerVersus),
1448 132 => Ok(Self::ModIncreaseEnergyPercent),
1449 133 => Ok(Self::ModIncreaseHealthPercent),
1450 134 => Ok(Self::ModManaRegenInterrupt),
1451 135 => Ok(Self::ModHealingDone),
1452 136 => Ok(Self::ModHealingDonePercent),
1453 137 => Ok(Self::ModTotalStatPercentage),
1454 138 => Ok(Self::ModMeleeHaste),
1455 139 => Ok(Self::ForceReaction),
1456 140 => Ok(Self::ModRangedHaste),
1457 141 => Ok(Self::ModRangedAmmoHaste),
1458 142 => Ok(Self::ModBaseResistancePct),
1459 143 => Ok(Self::ModResistanceExclusive),
1460 144 => Ok(Self::SafeFall),
1461 145 => Ok(Self::ModPetTalentPoints),
1462 146 => Ok(Self::AllowTamePetType),
1463 147 => Ok(Self::MechanicImmunityMask),
1464 148 => Ok(Self::RetainComboPoints),
1465 149 => Ok(Self::ReducePushback),
1466 150 => Ok(Self::ModShieldBlockvaluePct),
1467 151 => Ok(Self::TrackStealthed),
1468 152 => Ok(Self::ModDetectedRange),
1469 153 => Ok(Self::SplitDamageFlat),
1470 154 => Ok(Self::ModStealthLevel),
1471 155 => Ok(Self::ModWaterBreathing),
1472 156 => Ok(Self::ModReputationGain),
1473 157 => Ok(Self::PetDamageMulti),
1474 158 => Ok(Self::ModShieldBlockvalue),
1475 159 => Ok(Self::NoPvpCredit),
1476 160 => Ok(Self::ModAoeAvoidance),
1477 161 => Ok(Self::ModHealthRegenInCombat),
1478 162 => Ok(Self::PowerBurn),
1479 163 => Ok(Self::ModCritDamageBonus),
1480 164 => Ok(Self::Unknown164),
1481 165 => Ok(Self::MeleeAttackPowerAttackerBonus),
1482 166 => Ok(Self::ModAttackPowerPct),
1483 167 => Ok(Self::ModRangedAttackPowerPct),
1484 168 => Ok(Self::ModDamageDoneVersus),
1485 169 => Ok(Self::ModCritPercentVersus),
1486 170 => Ok(Self::DetectAmore),
1487 171 => Ok(Self::ModSpeedNotStack),
1488 172 => Ok(Self::ModMountedSpeedNotStack),
1489 173 => Ok(Self::Unknown173),
1490 174 => Ok(Self::ModSpellDamageOfStatPercent),
1491 175 => Ok(Self::ModSpellHealingOfStatPercent),
1492 176 => Ok(Self::SpiritOfRedemption),
1493 177 => Ok(Self::AoeCharm),
1494 178 => Ok(Self::ModDebuffResistance),
1495 179 => Ok(Self::ModAttackerSpellCritChance),
1496 180 => Ok(Self::ModFlatSpellDamageVersus),
1497 181 => Ok(Self::Unknown181),
1498 182 => Ok(Self::ModResistanceOfStatPercent),
1499 183 => Ok(Self::ModCriticalThreat),
1500 184 => Ok(Self::ModAttackerMeleeHitChance),
1501 185 => Ok(Self::ModAttackerRangedHitChance),
1502 186 => Ok(Self::ModAttackerSpellHitChance),
1503 187 => Ok(Self::ModAttackerMeleeCritChance),
1504 188 => Ok(Self::ModAttackerRangedCritChance),
1505 189 => Ok(Self::ModRating),
1506 190 => Ok(Self::ModFactionReputationGain),
1507 191 => Ok(Self::UseNormalMovementSpeed),
1508 192 => Ok(Self::ModMeleeRangedHaste),
1509 193 => Ok(Self::MeleeSlow),
1510 194 => Ok(Self::ModTargetAbsorbSchool),
1511 195 => Ok(Self::ModTargetAbilityAbsorbSchool),
1512 196 => Ok(Self::ModCooldown),
1513 197 => Ok(Self::ModAttackerSpellAndWeaponCritChance),
1514 198 => Ok(Self::Unknown198),
1515 199 => Ok(Self::ModIncreasesSpellPctToHit),
1516 200 => Ok(Self::ModXpPct),
1517 201 => Ok(Self::Fly),
1518 202 => Ok(Self::IgnoreCombatResult),
1519 203 => Ok(Self::ModAttackerMeleeCritDamage),
1520 204 => Ok(Self::ModAttackerRangedCritDamage),
1521 205 => Ok(Self::ModSchoolCritDmgTaken),
1522 206 => Ok(Self::ModIncreaseVehicleFlightSpeed),
1523 207 => Ok(Self::ModIncreaseMountedFlightSpeed),
1524 208 => Ok(Self::ModIncreaseFlightSpeed),
1525 209 => Ok(Self::ModMountedFlightSpeedAlways),
1526 210 => Ok(Self::ModVehicleSpeedAlways),
1527 211 => Ok(Self::ModFlightSpeedNotStack),
1528 212 => Ok(Self::ModRangedAttackPowerOfStatPercent),
1529 213 => Ok(Self::ModRageFromDamageDealt),
1530 214 => Ok(Self::Unknown214),
1531 215 => Ok(Self::ArenaPreparation),
1532 216 => Ok(Self::HasteSpells),
1533 217 => Ok(Self::ModMeleeHaste2),
1534 218 => Ok(Self::HasteRanged),
1535 219 => Ok(Self::ModManaRegenFromStat),
1536 220 => Ok(Self::ModRatingFromStat),
1537 221 => Ok(Self::ModDetaunt),
1538 222 => Ok(Self::Unknown222),
1539 223 => Ok(Self::RaidProcFromCharge),
1540 224 => Ok(Self::Unknown224),
1541 225 => Ok(Self::RaidProcFromChargeWithValue),
1542 226 => Ok(Self::PeriodicDummy),
1543 227 => Ok(Self::PeriodicTriggerSpellWithValue),
1544 228 => Ok(Self::DetectStealth),
1545 229 => Ok(Self::ModAoeDamageAvoidance),
1546 230 => Ok(Self::Unknown230),
1547 231 => Ok(Self::ProcTriggerSpellWithValue),
1548 232 => Ok(Self::MechanicDurationMod),
1549 233 => Ok(Self::ChangeModelForAllHumanoids),
1550 234 => Ok(Self::MechanicDurationModNotStack),
1551 235 => Ok(Self::ModDispelResist),
1552 236 => Ok(Self::ControlVehicle),
1553 237 => Ok(Self::ModSpellDamageOfAttackPower),
1554 238 => Ok(Self::ModSpellHealingOfAttackPower),
1555 239 => Ok(Self::ModScale2),
1556 240 => Ok(Self::ModExpertise),
1557 241 => Ok(Self::ForceMoveForward),
1558 242 => Ok(Self::ModSpellDamageFromHealing),
1559 243 => Ok(Self::ModFaction),
1560 244 => Ok(Self::ComprehendLanguage),
1561 245 => Ok(Self::ModAuraDurationByDispel),
1562 246 => Ok(Self::ModAuraDurationByDispelNotStack),
1563 247 => Ok(Self::CloneCaster),
1564 248 => Ok(Self::ModCombatResultChance),
1565 249 => Ok(Self::ConvertRune),
1566 250 => Ok(Self::ModIncreaseHealth2),
1567 251 => Ok(Self::ModEnemyDodge),
1568 252 => Ok(Self::ModSpeedSlowAll),
1569 253 => Ok(Self::ModBlockCritChance),
1570 254 => Ok(Self::ModDisarmOffhand),
1571 255 => Ok(Self::ModMechanicDamageTakenPercent),
1572 256 => Ok(Self::NoReagentUse),
1573 257 => Ok(Self::ModTargetResistBySpellClass),
1574 258 => Ok(Self::Unknown258),
1575 259 => Ok(Self::ModHotPct),
1576 260 => Ok(Self::ScreenEffect),
1577 261 => Ok(Self::Phase),
1578 262 => Ok(Self::AbilityIgnoreAurastate),
1579 263 => Ok(Self::AllowOnlyAbility),
1580 264 => Ok(Self::Unknown264),
1581 265 => Ok(Self::Unknown265),
1582 266 => Ok(Self::Unknown266),
1583 267 => Ok(Self::ModImmuneAuraApplySchool),
1584 268 => Ok(Self::ModAttackPowerOfStatPercent),
1585 269 => Ok(Self::ModIgnoreTargetResist),
1586 270 => Ok(Self::ModAbilityIgnoreTargetResist),
1587 271 => Ok(Self::ModDamageFromCaster),
1588 272 => Ok(Self::IgnoreMeleeReset),
1589 273 => Ok(Self::XRay),
1590 274 => Ok(Self::AbilityConsumeNoAmmo),
1591 275 => Ok(Self::ModIgnoreShapeshift),
1592 276 => Ok(Self::ModDamageDoneForMechanic),
1593 277 => Ok(Self::ModMaxAffectedTargets),
1594 278 => Ok(Self::ModDisarmRanged),
1595 279 => Ok(Self::InitializeImages),
1596 280 => Ok(Self::ModArmorPenetrationPct),
1597 281 => Ok(Self::ModHonorGainPct),
1598 282 => Ok(Self::ModBaseHealthPct),
1599 283 => Ok(Self::ModHealingReceived),
1600 284 => Ok(Self::Linked),
1601 285 => Ok(Self::ModAttackPowerOfArmor),
1602 286 => Ok(Self::AbilityPeriodicCrit),
1603 287 => Ok(Self::DeflectSpells),
1604 288 => Ok(Self::IgnoreHitDirection),
1605 289 => Ok(Self::PreventDurabilityLoss),
1606 290 => Ok(Self::ModCritPct),
1607 291 => Ok(Self::ModXpQuestPct),
1608 292 => Ok(Self::OpenStable),
1609 293 => Ok(Self::OverrideSpells),
1610 294 => Ok(Self::PreventRegeneratePower),
1611 295 => Ok(Self::Unknown295),
1612 296 => Ok(Self::SetVehicleId),
1613 297 => Ok(Self::BlockSpellFamily),
1614 298 => Ok(Self::Strangulate),
1615 299 => Ok(Self::Unknown299),
1616 300 => Ok(Self::ShareDamagePct),
1617 301 => Ok(Self::SchoolHealAbsorb),
1618 302 => Ok(Self::Unknown302),
1619 303 => Ok(Self::ModDamageDoneVersusAurastate),
1620 304 => Ok(Self::ModFakeInebriate),
1621 305 => Ok(Self::ModMinimumSpeed),
1622 306 => Ok(Self::Unknown306),
1623 307 => Ok(Self::HealAbsorbTest),
1624 308 => Ok(Self::ModCritChanceForCaster),
1625 309 => Ok(Self::Unknown309),
1626 310 => Ok(Self::ModCreatureAoeDamageAvoidance),
1627 311 => Ok(Self::Unknown311),
1628 312 => Ok(Self::Unknown312),
1629 313 => Ok(Self::Unknown313),
1630 314 => Ok(Self::PreventResurrection),
1631 315 => Ok(Self::UnderwaterWalking),
1632 316 => Ok(Self::PeriodicHaste),
1633 v => Err(crate::errors::EnumError::new(NAME, v as i128),)
1634 }
1635 }
1636}
1637
1638#[cfg(feature = "print-testcase")]
1639impl AuraType {
1640 pub const fn as_test_case_value(&self) -> &'static str {
1641 match self {
1642 Self::None => "NONE",
1643 Self::BindSight => "BIND_SIGHT",
1644 Self::ModPossess => "MOD_POSSESS",
1645 Self::PeriodicDamage => "PERIODIC_DAMAGE",
1646 Self::Dummy => "DUMMY",
1647 Self::ModConfuse => "MOD_CONFUSE",
1648 Self::ModCharm => "MOD_CHARM",
1649 Self::ModFear => "MOD_FEAR",
1650 Self::PeriodicHeal => "PERIODIC_HEAL",
1651 Self::ModAttackspeed => "MOD_ATTACKSPEED",
1652 Self::ModThreat => "MOD_THREAT",
1653 Self::ModTaunt => "MOD_TAUNT",
1654 Self::ModStun => "MOD_STUN",
1655 Self::ModDamageDone => "MOD_DAMAGE_DONE",
1656 Self::ModDamageTaken => "MOD_DAMAGE_TAKEN",
1657 Self::DamageShield => "DAMAGE_SHIELD",
1658 Self::ModStealth => "MOD_STEALTH",
1659 Self::ModStealthDetect => "MOD_STEALTH_DETECT",
1660 Self::ModInvisibility => "MOD_INVISIBILITY",
1661 Self::ModInvisibilityDetect => "MOD_INVISIBILITY_DETECT",
1662 Self::ObsModHealth => "OBS_MOD_HEALTH",
1663 Self::ObsModPower => "OBS_MOD_POWER",
1664 Self::ModResistance => "MOD_RESISTANCE",
1665 Self::PeriodicTriggerSpell => "PERIODIC_TRIGGER_SPELL",
1666 Self::PeriodicEnergize => "PERIODIC_ENERGIZE",
1667 Self::ModPacify => "MOD_PACIFY",
1668 Self::ModRoot => "MOD_ROOT",
1669 Self::ModSilence => "MOD_SILENCE",
1670 Self::ReflectSpells => "REFLECT_SPELLS",
1671 Self::ModStat => "MOD_STAT",
1672 Self::ModSkill => "MOD_SKILL",
1673 Self::ModIncreaseSpeed => "MOD_INCREASE_SPEED",
1674 Self::ModIncreaseMountedSpeed => "MOD_INCREASE_MOUNTED_SPEED",
1675 Self::ModDecreaseSpeed => "MOD_DECREASE_SPEED",
1676 Self::ModIncreaseHealth => "MOD_INCREASE_HEALTH",
1677 Self::ModIncreaseEnergy => "MOD_INCREASE_ENERGY",
1678 Self::ModShapeshift => "MOD_SHAPESHIFT",
1679 Self::EffectImmunity => "EFFECT_IMMUNITY",
1680 Self::StateImmunity => "STATE_IMMUNITY",
1681 Self::SchoolImmunity => "SCHOOL_IMMUNITY",
1682 Self::DamageImmunity => "DAMAGE_IMMUNITY",
1683 Self::DispelImmunity => "DISPEL_IMMUNITY",
1684 Self::ProcTriggerSpell => "PROC_TRIGGER_SPELL",
1685 Self::ProcTriggerDamage => "PROC_TRIGGER_DAMAGE",
1686 Self::TrackCreatures => "TRACK_CREATURES",
1687 Self::TrackResources => "TRACK_RESOURCES",
1688 Self::Unknown46 => "UNKNOWN46",
1689 Self::ModParryPercent => "MOD_PARRY_PERCENT",
1690 Self::PeriodicTriggerSpellFromClient => "PERIODIC_TRIGGER_SPELL_FROM_CLIENT",
1691 Self::ModDodgePercent => "MOD_DODGE_PERCENT",
1692 Self::ModCriticalHealingAmount => "MOD_CRITICAL_HEALING_AMOUNT",
1693 Self::ModBlockPercent => "MOD_BLOCK_PERCENT",
1694 Self::ModWeaponCritPercent => "MOD_WEAPON_CRIT_PERCENT",
1695 Self::PeriodicLeech => "PERIODIC_LEECH",
1696 Self::ModHitChance => "MOD_HIT_CHANCE",
1697 Self::ModSpellHitChance => "MOD_SPELL_HIT_CHANCE",
1698 Self::Transform => "TRANSFORM",
1699 Self::ModSpellCritChance => "MOD_SPELL_CRIT_CHANCE",
1700 Self::ModIncreaseSwimSpeed => "MOD_INCREASE_SWIM_SPEED",
1701 Self::ModDamageDoneCreature => "MOD_DAMAGE_DONE_CREATURE",
1702 Self::ModPacifySilence => "MOD_PACIFY_SILENCE",
1703 Self::ModScale => "MOD_SCALE",
1704 Self::PeriodicHealthFunnel => "PERIODIC_HEALTH_FUNNEL",
1705 Self::Unknown63 => "UNKNOWN63",
1706 Self::PeriodicManaLeech => "PERIODIC_MANA_LEECH",
1707 Self::ModCastingSpeedNotStack => "MOD_CASTING_SPEED_NOT_STACK",
1708 Self::FeignDeath => "FEIGN_DEATH",
1709 Self::ModDisarm => "MOD_DISARM",
1710 Self::ModStalked => "MOD_STALKED",
1711 Self::SchoolAbsorb => "SCHOOL_ABSORB",
1712 Self::ExtraAttacks => "EXTRA_ATTACKS",
1713 Self::ModSpellCritChanceSchool => "MOD_SPELL_CRIT_CHANCE_SCHOOL",
1714 Self::ModPowerCostSchoolPct => "MOD_POWER_COST_SCHOOL_PCT",
1715 Self::ModPowerCostSchool => "MOD_POWER_COST_SCHOOL",
1716 Self::ReflectSpellsSchool => "REFLECT_SPELLS_SCHOOL",
1717 Self::ModLanguage => "MOD_LANGUAGE",
1718 Self::FarSight => "FAR_SIGHT",
1719 Self::MechanicImmunity => "MECHANIC_IMMUNITY",
1720 Self::Mounted => "MOUNTED",
1721 Self::ModDamagePercentDone => "MOD_DAMAGE_PERCENT_DONE",
1722 Self::ModPercentStat => "MOD_PERCENT_STAT",
1723 Self::SplitDamagePct => "SPLIT_DAMAGE_PCT",
1724 Self::WaterBreathing => "WATER_BREATHING",
1725 Self::ModBaseResistance => "MOD_BASE_RESISTANCE",
1726 Self::ModRegen => "MOD_REGEN",
1727 Self::ModPowerRegen => "MOD_POWER_REGEN",
1728 Self::ChannelDeathItem => "CHANNEL_DEATH_ITEM",
1729 Self::ModDamagePercentTaken => "MOD_DAMAGE_PERCENT_TAKEN",
1730 Self::ModHealthRegenPercent => "MOD_HEALTH_REGEN_PERCENT",
1731 Self::PeriodicDamagePercent => "PERIODIC_DAMAGE_PERCENT",
1732 Self::Unknown90 => "UNKNOWN90",
1733 Self::ModDetectRange => "MOD_DETECT_RANGE",
1734 Self::PreventsFleeing => "PREVENTS_FLEEING",
1735 Self::ModUnattackable => "MOD_UNATTACKABLE",
1736 Self::InterruptRegen => "INTERRUPT_REGEN",
1737 Self::Ghost => "GHOST",
1738 Self::SpellMagnet => "SPELL_MAGNET",
1739 Self::ManaShield => "MANA_SHIELD",
1740 Self::ModSkillTalent => "MOD_SKILL_TALENT",
1741 Self::ModAttackPower => "MOD_ATTACK_POWER",
1742 Self::AurasVisible => "AURAS_VISIBLE",
1743 Self::ModResistancePct => "MOD_RESISTANCE_PCT",
1744 Self::ModMeleeAttackPowerVersus => "MOD_MELEE_ATTACK_POWER_VERSUS",
1745 Self::ModTotalThreat => "MOD_TOTAL_THREAT",
1746 Self::WaterWalk => "WATER_WALK",
1747 Self::FeatherFall => "FEATHER_FALL",
1748 Self::Hover => "HOVER",
1749 Self::AddFlatModifier => "ADD_FLAT_MODIFIER",
1750 Self::AddPctModifier => "ADD_PCT_MODIFIER",
1751 Self::AddTargetTrigger => "ADD_TARGET_TRIGGER",
1752 Self::ModPowerRegenPercent => "MOD_POWER_REGEN_PERCENT",
1753 Self::AddCasterHitTrigger => "ADD_CASTER_HIT_TRIGGER",
1754 Self::OverrideClassScripts => "OVERRIDE_CLASS_SCRIPTS",
1755 Self::ModRangedDamageTaken => "MOD_RANGED_DAMAGE_TAKEN",
1756 Self::ModRangedDamageTakenPct => "MOD_RANGED_DAMAGE_TAKEN_PCT",
1757 Self::ModHealing => "MOD_HEALING",
1758 Self::ModRegenDuringCombat => "MOD_REGEN_DURING_COMBAT",
1759 Self::ModMechanicResistance => "MOD_MECHANIC_RESISTANCE",
1760 Self::ModHealingPct => "MOD_HEALING_PCT",
1761 Self::Unknown119 => "UNKNOWN119",
1762 Self::Untrackable => "UNTRACKABLE",
1763 Self::Empathy => "EMPATHY",
1764 Self::ModOffhandDamagePct => "MOD_OFFHAND_DAMAGE_PCT",
1765 Self::ModTargetResistance => "MOD_TARGET_RESISTANCE",
1766 Self::ModRangedAttackPower => "MOD_RANGED_ATTACK_POWER",
1767 Self::ModMeleeDamageTaken => "MOD_MELEE_DAMAGE_TAKEN",
1768 Self::ModMeleeDamageTakenPct => "MOD_MELEE_DAMAGE_TAKEN_PCT",
1769 Self::RangedAttackPowerAttackerBonus => "RANGED_ATTACK_POWER_ATTACKER_BONUS",
1770 Self::ModPossessPet => "MOD_POSSESS_PET",
1771 Self::ModSpeedAlways => "MOD_SPEED_ALWAYS",
1772 Self::ModMountedSpeedAlways => "MOD_MOUNTED_SPEED_ALWAYS",
1773 Self::ModRangedAttackPowerVersus => "MOD_RANGED_ATTACK_POWER_VERSUS",
1774 Self::ModIncreaseEnergyPercent => "MOD_INCREASE_ENERGY_PERCENT",
1775 Self::ModIncreaseHealthPercent => "MOD_INCREASE_HEALTH_PERCENT",
1776 Self::ModManaRegenInterrupt => "MOD_MANA_REGEN_INTERRUPT",
1777 Self::ModHealingDone => "MOD_HEALING_DONE",
1778 Self::ModHealingDonePercent => "MOD_HEALING_DONE_PERCENT",
1779 Self::ModTotalStatPercentage => "MOD_TOTAL_STAT_PERCENTAGE",
1780 Self::ModMeleeHaste => "MOD_MELEE_HASTE",
1781 Self::ForceReaction => "FORCE_REACTION",
1782 Self::ModRangedHaste => "MOD_RANGED_HASTE",
1783 Self::ModRangedAmmoHaste => "MOD_RANGED_AMMO_HASTE",
1784 Self::ModBaseResistancePct => "MOD_BASE_RESISTANCE_PCT",
1785 Self::ModResistanceExclusive => "MOD_RESISTANCE_EXCLUSIVE",
1786 Self::SafeFall => "SAFE_FALL",
1787 Self::ModPetTalentPoints => "MOD_PET_TALENT_POINTS",
1788 Self::AllowTamePetType => "ALLOW_TAME_PET_TYPE",
1789 Self::MechanicImmunityMask => "MECHANIC_IMMUNITY_MASK",
1790 Self::RetainComboPoints => "RETAIN_COMBO_POINTS",
1791 Self::ReducePushback => "REDUCE_PUSHBACK",
1792 Self::ModShieldBlockvaluePct => "MOD_SHIELD_BLOCKVALUE_PCT",
1793 Self::TrackStealthed => "TRACK_STEALTHED",
1794 Self::ModDetectedRange => "MOD_DETECTED_RANGE",
1795 Self::SplitDamageFlat => "SPLIT_DAMAGE_FLAT",
1796 Self::ModStealthLevel => "MOD_STEALTH_LEVEL",
1797 Self::ModWaterBreathing => "MOD_WATER_BREATHING",
1798 Self::ModReputationGain => "MOD_REPUTATION_GAIN",
1799 Self::PetDamageMulti => "PET_DAMAGE_MULTI",
1800 Self::ModShieldBlockvalue => "MOD_SHIELD_BLOCKVALUE",
1801 Self::NoPvpCredit => "NO_PVP_CREDIT",
1802 Self::ModAoeAvoidance => "MOD_AOE_AVOIDANCE",
1803 Self::ModHealthRegenInCombat => "MOD_HEALTH_REGEN_IN_COMBAT",
1804 Self::PowerBurn => "POWER_BURN",
1805 Self::ModCritDamageBonus => "MOD_CRIT_DAMAGE_BONUS",
1806 Self::Unknown164 => "UNKNOWN164",
1807 Self::MeleeAttackPowerAttackerBonus => "MELEE_ATTACK_POWER_ATTACKER_BONUS",
1808 Self::ModAttackPowerPct => "MOD_ATTACK_POWER_PCT",
1809 Self::ModRangedAttackPowerPct => "MOD_RANGED_ATTACK_POWER_PCT",
1810 Self::ModDamageDoneVersus => "MOD_DAMAGE_DONE_VERSUS",
1811 Self::ModCritPercentVersus => "MOD_CRIT_PERCENT_VERSUS",
1812 Self::DetectAmore => "DETECT_AMORE",
1813 Self::ModSpeedNotStack => "MOD_SPEED_NOT_STACK",
1814 Self::ModMountedSpeedNotStack => "MOD_MOUNTED_SPEED_NOT_STACK",
1815 Self::Unknown173 => "UNKNOWN173",
1816 Self::ModSpellDamageOfStatPercent => "MOD_SPELL_DAMAGE_OF_STAT_PERCENT",
1817 Self::ModSpellHealingOfStatPercent => "MOD_SPELL_HEALING_OF_STAT_PERCENT",
1818 Self::SpiritOfRedemption => "SPIRIT_OF_REDEMPTION",
1819 Self::AoeCharm => "AOE_CHARM",
1820 Self::ModDebuffResistance => "MOD_DEBUFF_RESISTANCE",
1821 Self::ModAttackerSpellCritChance => "MOD_ATTACKER_SPELL_CRIT_CHANCE",
1822 Self::ModFlatSpellDamageVersus => "MOD_FLAT_SPELL_DAMAGE_VERSUS",
1823 Self::Unknown181 => "UNKNOWN181",
1824 Self::ModResistanceOfStatPercent => "MOD_RESISTANCE_OF_STAT_PERCENT",
1825 Self::ModCriticalThreat => "MOD_CRITICAL_THREAT",
1826 Self::ModAttackerMeleeHitChance => "MOD_ATTACKER_MELEE_HIT_CHANCE",
1827 Self::ModAttackerRangedHitChance => "MOD_ATTACKER_RANGED_HIT_CHANCE",
1828 Self::ModAttackerSpellHitChance => "MOD_ATTACKER_SPELL_HIT_CHANCE",
1829 Self::ModAttackerMeleeCritChance => "MOD_ATTACKER_MELEE_CRIT_CHANCE",
1830 Self::ModAttackerRangedCritChance => "MOD_ATTACKER_RANGED_CRIT_CHANCE",
1831 Self::ModRating => "MOD_RATING",
1832 Self::ModFactionReputationGain => "MOD_FACTION_REPUTATION_GAIN",
1833 Self::UseNormalMovementSpeed => "USE_NORMAL_MOVEMENT_SPEED",
1834 Self::ModMeleeRangedHaste => "MOD_MELEE_RANGED_HASTE",
1835 Self::MeleeSlow => "MELEE_SLOW",
1836 Self::ModTargetAbsorbSchool => "MOD_TARGET_ABSORB_SCHOOL",
1837 Self::ModTargetAbilityAbsorbSchool => "MOD_TARGET_ABILITY_ABSORB_SCHOOL",
1838 Self::ModCooldown => "MOD_COOLDOWN",
1839 Self::ModAttackerSpellAndWeaponCritChance => "MOD_ATTACKER_SPELL_AND_WEAPON_CRIT_CHANCE",
1840 Self::Unknown198 => "UNKNOWN198",
1841 Self::ModIncreasesSpellPctToHit => "MOD_INCREASES_SPELL_PCT_TO_HIT",
1842 Self::ModXpPct => "MOD_XP_PCT",
1843 Self::Fly => "FLY",
1844 Self::IgnoreCombatResult => "IGNORE_COMBAT_RESULT",
1845 Self::ModAttackerMeleeCritDamage => "MOD_ATTACKER_MELEE_CRIT_DAMAGE",
1846 Self::ModAttackerRangedCritDamage => "MOD_ATTACKER_RANGED_CRIT_DAMAGE",
1847 Self::ModSchoolCritDmgTaken => "MOD_SCHOOL_CRIT_DMG_TAKEN",
1848 Self::ModIncreaseVehicleFlightSpeed => "MOD_INCREASE_VEHICLE_FLIGHT_SPEED",
1849 Self::ModIncreaseMountedFlightSpeed => "MOD_INCREASE_MOUNTED_FLIGHT_SPEED",
1850 Self::ModIncreaseFlightSpeed => "MOD_INCREASE_FLIGHT_SPEED",
1851 Self::ModMountedFlightSpeedAlways => "MOD_MOUNTED_FLIGHT_SPEED_ALWAYS",
1852 Self::ModVehicleSpeedAlways => "MOD_VEHICLE_SPEED_ALWAYS",
1853 Self::ModFlightSpeedNotStack => "MOD_FLIGHT_SPEED_NOT_STACK",
1854 Self::ModRangedAttackPowerOfStatPercent => "MOD_RANGED_ATTACK_POWER_OF_STAT_PERCENT",
1855 Self::ModRageFromDamageDealt => "MOD_RAGE_FROM_DAMAGE_DEALT",
1856 Self::Unknown214 => "UNKNOWN214",
1857 Self::ArenaPreparation => "ARENA_PREPARATION",
1858 Self::HasteSpells => "HASTE_SPELLS",
1859 Self::ModMeleeHaste2 => "MOD_MELEE_HASTE_2",
1860 Self::HasteRanged => "HASTE_RANGED",
1861 Self::ModManaRegenFromStat => "MOD_MANA_REGEN_FROM_STAT",
1862 Self::ModRatingFromStat => "MOD_RATING_FROM_STAT",
1863 Self::ModDetaunt => "MOD_DETAUNT",
1864 Self::Unknown222 => "UNKNOWN222",
1865 Self::RaidProcFromCharge => "RAID_PROC_FROM_CHARGE",
1866 Self::Unknown224 => "UNKNOWN224",
1867 Self::RaidProcFromChargeWithValue => "RAID_PROC_FROM_CHARGE_WITH_VALUE",
1868 Self::PeriodicDummy => "PERIODIC_DUMMY",
1869 Self::PeriodicTriggerSpellWithValue => "PERIODIC_TRIGGER_SPELL_WITH_VALUE",
1870 Self::DetectStealth => "DETECT_STEALTH",
1871 Self::ModAoeDamageAvoidance => "MOD_AOE_DAMAGE_AVOIDANCE",
1872 Self::Unknown230 => "UNKNOWN230",
1873 Self::ProcTriggerSpellWithValue => "PROC_TRIGGER_SPELL_WITH_VALUE",
1874 Self::MechanicDurationMod => "MECHANIC_DURATION_MOD",
1875 Self::ChangeModelForAllHumanoids => "CHANGE_MODEL_FOR_ALL_HUMANOIDS",
1876 Self::MechanicDurationModNotStack => "MECHANIC_DURATION_MOD_NOT_STACK",
1877 Self::ModDispelResist => "MOD_DISPEL_RESIST",
1878 Self::ControlVehicle => "CONTROL_VEHICLE",
1879 Self::ModSpellDamageOfAttackPower => "MOD_SPELL_DAMAGE_OF_ATTACK_POWER",
1880 Self::ModSpellHealingOfAttackPower => "MOD_SPELL_HEALING_OF_ATTACK_POWER",
1881 Self::ModScale2 => "MOD_SCALE_2",
1882 Self::ModExpertise => "MOD_EXPERTISE",
1883 Self::ForceMoveForward => "FORCE_MOVE_FORWARD",
1884 Self::ModSpellDamageFromHealing => "MOD_SPELL_DAMAGE_FROM_HEALING",
1885 Self::ModFaction => "MOD_FACTION",
1886 Self::ComprehendLanguage => "COMPREHEND_LANGUAGE",
1887 Self::ModAuraDurationByDispel => "MOD_AURA_DURATION_BY_DISPEL",
1888 Self::ModAuraDurationByDispelNotStack => "MOD_AURA_DURATION_BY_DISPEL_NOT_STACK",
1889 Self::CloneCaster => "CLONE_CASTER",
1890 Self::ModCombatResultChance => "MOD_COMBAT_RESULT_CHANCE",
1891 Self::ConvertRune => "CONVERT_RUNE",
1892 Self::ModIncreaseHealth2 => "MOD_INCREASE_HEALTH_2",
1893 Self::ModEnemyDodge => "MOD_ENEMY_DODGE",
1894 Self::ModSpeedSlowAll => "MOD_SPEED_SLOW_ALL",
1895 Self::ModBlockCritChance => "MOD_BLOCK_CRIT_CHANCE",
1896 Self::ModDisarmOffhand => "MOD_DISARM_OFFHAND",
1897 Self::ModMechanicDamageTakenPercent => "MOD_MECHANIC_DAMAGE_TAKEN_PERCENT",
1898 Self::NoReagentUse => "NO_REAGENT_USE",
1899 Self::ModTargetResistBySpellClass => "MOD_TARGET_RESIST_BY_SPELL_CLASS",
1900 Self::Unknown258 => "UNKNOWN258",
1901 Self::ModHotPct => "MOD_HOT_PCT",
1902 Self::ScreenEffect => "SCREEN_EFFECT",
1903 Self::Phase => "PHASE",
1904 Self::AbilityIgnoreAurastate => "ABILITY_IGNORE_AURASTATE",
1905 Self::AllowOnlyAbility => "ALLOW_ONLY_ABILITY",
1906 Self::Unknown264 => "UNKNOWN264",
1907 Self::Unknown265 => "UNKNOWN265",
1908 Self::Unknown266 => "UNKNOWN266",
1909 Self::ModImmuneAuraApplySchool => "MOD_IMMUNE_AURA_APPLY_SCHOOL",
1910 Self::ModAttackPowerOfStatPercent => "MOD_ATTACK_POWER_OF_STAT_PERCENT",
1911 Self::ModIgnoreTargetResist => "MOD_IGNORE_TARGET_RESIST",
1912 Self::ModAbilityIgnoreTargetResist => "MOD_ABILITY_IGNORE_TARGET_RESIST",
1913 Self::ModDamageFromCaster => "MOD_DAMAGE_FROM_CASTER",
1914 Self::IgnoreMeleeReset => "IGNORE_MELEE_RESET",
1915 Self::XRay => "X_RAY",
1916 Self::AbilityConsumeNoAmmo => "ABILITY_CONSUME_NO_AMMO",
1917 Self::ModIgnoreShapeshift => "MOD_IGNORE_SHAPESHIFT",
1918 Self::ModDamageDoneForMechanic => "MOD_DAMAGE_DONE_FOR_MECHANIC",
1919 Self::ModMaxAffectedTargets => "MOD_MAX_AFFECTED_TARGETS",
1920 Self::ModDisarmRanged => "MOD_DISARM_RANGED",
1921 Self::InitializeImages => "INITIALIZE_IMAGES",
1922 Self::ModArmorPenetrationPct => "MOD_ARMOR_PENETRATION_PCT",
1923 Self::ModHonorGainPct => "MOD_HONOR_GAIN_PCT",
1924 Self::ModBaseHealthPct => "MOD_BASE_HEALTH_PCT",
1925 Self::ModHealingReceived => "MOD_HEALING_RECEIVED",
1926 Self::Linked => "LINKED",
1927 Self::ModAttackPowerOfArmor => "MOD_ATTACK_POWER_OF_ARMOR",
1928 Self::AbilityPeriodicCrit => "ABILITY_PERIODIC_CRIT",
1929 Self::DeflectSpells => "DEFLECT_SPELLS",
1930 Self::IgnoreHitDirection => "IGNORE_HIT_DIRECTION",
1931 Self::PreventDurabilityLoss => "PREVENT_DURABILITY_LOSS",
1932 Self::ModCritPct => "MOD_CRIT_PCT",
1933 Self::ModXpQuestPct => "MOD_XP_QUEST_PCT",
1934 Self::OpenStable => "OPEN_STABLE",
1935 Self::OverrideSpells => "OVERRIDE_SPELLS",
1936 Self::PreventRegeneratePower => "PREVENT_REGENERATE_POWER",
1937 Self::Unknown295 => "UNKNOWN295",
1938 Self::SetVehicleId => "SET_VEHICLE_ID",
1939 Self::BlockSpellFamily => "BLOCK_SPELL_FAMILY",
1940 Self::Strangulate => "STRANGULATE",
1941 Self::Unknown299 => "UNKNOWN299",
1942 Self::ShareDamagePct => "SHARE_DAMAGE_PCT",
1943 Self::SchoolHealAbsorb => "SCHOOL_HEAL_ABSORB",
1944 Self::Unknown302 => "UNKNOWN302",
1945 Self::ModDamageDoneVersusAurastate => "MOD_DAMAGE_DONE_VERSUS_AURASTATE",
1946 Self::ModFakeInebriate => "MOD_FAKE_INEBRIATE",
1947 Self::ModMinimumSpeed => "MOD_MINIMUM_SPEED",
1948 Self::Unknown306 => "UNKNOWN306",
1949 Self::HealAbsorbTest => "HEAL_ABSORB_TEST",
1950 Self::ModCritChanceForCaster => "MOD_CRIT_CHANCE_FOR_CASTER",
1951 Self::Unknown309 => "UNKNOWN309",
1952 Self::ModCreatureAoeDamageAvoidance => "MOD_CREATURE_AOE_DAMAGE_AVOIDANCE",
1953 Self::Unknown311 => "UNKNOWN311",
1954 Self::Unknown312 => "UNKNOWN312",
1955 Self::Unknown313 => "UNKNOWN313",
1956 Self::PreventResurrection => "PREVENT_RESURRECTION",
1957 Self::UnderwaterWalking => "UNDERWATER_WALKING",
1958 Self::PeriodicHaste => "PERIODIC_HASTE",
1959 }
1960 }
1961
1962}
1963
1964const NAME: &str = "AuraType";
1965
1966impl Default for AuraType {
1967 fn default() -> Self {
1968 Self::None
1969 }
1970}
1971
1972impl std::fmt::Display for AuraType {
1973 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1974 match self {
1975 Self::None => f.write_str("None"),
1976 Self::BindSight => f.write_str("BindSight"),
1977 Self::ModPossess => f.write_str("ModPossess"),
1978 Self::PeriodicDamage => f.write_str("PeriodicDamage"),
1979 Self::Dummy => f.write_str("Dummy"),
1980 Self::ModConfuse => f.write_str("ModConfuse"),
1981 Self::ModCharm => f.write_str("ModCharm"),
1982 Self::ModFear => f.write_str("ModFear"),
1983 Self::PeriodicHeal => f.write_str("PeriodicHeal"),
1984 Self::ModAttackspeed => f.write_str("ModAttackspeed"),
1985 Self::ModThreat => f.write_str("ModThreat"),
1986 Self::ModTaunt => f.write_str("ModTaunt"),
1987 Self::ModStun => f.write_str("ModStun"),
1988 Self::ModDamageDone => f.write_str("ModDamageDone"),
1989 Self::ModDamageTaken => f.write_str("ModDamageTaken"),
1990 Self::DamageShield => f.write_str("DamageShield"),
1991 Self::ModStealth => f.write_str("ModStealth"),
1992 Self::ModStealthDetect => f.write_str("ModStealthDetect"),
1993 Self::ModInvisibility => f.write_str("ModInvisibility"),
1994 Self::ModInvisibilityDetect => f.write_str("ModInvisibilityDetect"),
1995 Self::ObsModHealth => f.write_str("ObsModHealth"),
1996 Self::ObsModPower => f.write_str("ObsModPower"),
1997 Self::ModResistance => f.write_str("ModResistance"),
1998 Self::PeriodicTriggerSpell => f.write_str("PeriodicTriggerSpell"),
1999 Self::PeriodicEnergize => f.write_str("PeriodicEnergize"),
2000 Self::ModPacify => f.write_str("ModPacify"),
2001 Self::ModRoot => f.write_str("ModRoot"),
2002 Self::ModSilence => f.write_str("ModSilence"),
2003 Self::ReflectSpells => f.write_str("ReflectSpells"),
2004 Self::ModStat => f.write_str("ModStat"),
2005 Self::ModSkill => f.write_str("ModSkill"),
2006 Self::ModIncreaseSpeed => f.write_str("ModIncreaseSpeed"),
2007 Self::ModIncreaseMountedSpeed => f.write_str("ModIncreaseMountedSpeed"),
2008 Self::ModDecreaseSpeed => f.write_str("ModDecreaseSpeed"),
2009 Self::ModIncreaseHealth => f.write_str("ModIncreaseHealth"),
2010 Self::ModIncreaseEnergy => f.write_str("ModIncreaseEnergy"),
2011 Self::ModShapeshift => f.write_str("ModShapeshift"),
2012 Self::EffectImmunity => f.write_str("EffectImmunity"),
2013 Self::StateImmunity => f.write_str("StateImmunity"),
2014 Self::SchoolImmunity => f.write_str("SchoolImmunity"),
2015 Self::DamageImmunity => f.write_str("DamageImmunity"),
2016 Self::DispelImmunity => f.write_str("DispelImmunity"),
2017 Self::ProcTriggerSpell => f.write_str("ProcTriggerSpell"),
2018 Self::ProcTriggerDamage => f.write_str("ProcTriggerDamage"),
2019 Self::TrackCreatures => f.write_str("TrackCreatures"),
2020 Self::TrackResources => f.write_str("TrackResources"),
2021 Self::Unknown46 => f.write_str("Unknown46"),
2022 Self::ModParryPercent => f.write_str("ModParryPercent"),
2023 Self::PeriodicTriggerSpellFromClient => f.write_str("PeriodicTriggerSpellFromClient"),
2024 Self::ModDodgePercent => f.write_str("ModDodgePercent"),
2025 Self::ModCriticalHealingAmount => f.write_str("ModCriticalHealingAmount"),
2026 Self::ModBlockPercent => f.write_str("ModBlockPercent"),
2027 Self::ModWeaponCritPercent => f.write_str("ModWeaponCritPercent"),
2028 Self::PeriodicLeech => f.write_str("PeriodicLeech"),
2029 Self::ModHitChance => f.write_str("ModHitChance"),
2030 Self::ModSpellHitChance => f.write_str("ModSpellHitChance"),
2031 Self::Transform => f.write_str("Transform"),
2032 Self::ModSpellCritChance => f.write_str("ModSpellCritChance"),
2033 Self::ModIncreaseSwimSpeed => f.write_str("ModIncreaseSwimSpeed"),
2034 Self::ModDamageDoneCreature => f.write_str("ModDamageDoneCreature"),
2035 Self::ModPacifySilence => f.write_str("ModPacifySilence"),
2036 Self::ModScale => f.write_str("ModScale"),
2037 Self::PeriodicHealthFunnel => f.write_str("PeriodicHealthFunnel"),
2038 Self::Unknown63 => f.write_str("Unknown63"),
2039 Self::PeriodicManaLeech => f.write_str("PeriodicManaLeech"),
2040 Self::ModCastingSpeedNotStack => f.write_str("ModCastingSpeedNotStack"),
2041 Self::FeignDeath => f.write_str("FeignDeath"),
2042 Self::ModDisarm => f.write_str("ModDisarm"),
2043 Self::ModStalked => f.write_str("ModStalked"),
2044 Self::SchoolAbsorb => f.write_str("SchoolAbsorb"),
2045 Self::ExtraAttacks => f.write_str("ExtraAttacks"),
2046 Self::ModSpellCritChanceSchool => f.write_str("ModSpellCritChanceSchool"),
2047 Self::ModPowerCostSchoolPct => f.write_str("ModPowerCostSchoolPct"),
2048 Self::ModPowerCostSchool => f.write_str("ModPowerCostSchool"),
2049 Self::ReflectSpellsSchool => f.write_str("ReflectSpellsSchool"),
2050 Self::ModLanguage => f.write_str("ModLanguage"),
2051 Self::FarSight => f.write_str("FarSight"),
2052 Self::MechanicImmunity => f.write_str("MechanicImmunity"),
2053 Self::Mounted => f.write_str("Mounted"),
2054 Self::ModDamagePercentDone => f.write_str("ModDamagePercentDone"),
2055 Self::ModPercentStat => f.write_str("ModPercentStat"),
2056 Self::SplitDamagePct => f.write_str("SplitDamagePct"),
2057 Self::WaterBreathing => f.write_str("WaterBreathing"),
2058 Self::ModBaseResistance => f.write_str("ModBaseResistance"),
2059 Self::ModRegen => f.write_str("ModRegen"),
2060 Self::ModPowerRegen => f.write_str("ModPowerRegen"),
2061 Self::ChannelDeathItem => f.write_str("ChannelDeathItem"),
2062 Self::ModDamagePercentTaken => f.write_str("ModDamagePercentTaken"),
2063 Self::ModHealthRegenPercent => f.write_str("ModHealthRegenPercent"),
2064 Self::PeriodicDamagePercent => f.write_str("PeriodicDamagePercent"),
2065 Self::Unknown90 => f.write_str("Unknown90"),
2066 Self::ModDetectRange => f.write_str("ModDetectRange"),
2067 Self::PreventsFleeing => f.write_str("PreventsFleeing"),
2068 Self::ModUnattackable => f.write_str("ModUnattackable"),
2069 Self::InterruptRegen => f.write_str("InterruptRegen"),
2070 Self::Ghost => f.write_str("Ghost"),
2071 Self::SpellMagnet => f.write_str("SpellMagnet"),
2072 Self::ManaShield => f.write_str("ManaShield"),
2073 Self::ModSkillTalent => f.write_str("ModSkillTalent"),
2074 Self::ModAttackPower => f.write_str("ModAttackPower"),
2075 Self::AurasVisible => f.write_str("AurasVisible"),
2076 Self::ModResistancePct => f.write_str("ModResistancePct"),
2077 Self::ModMeleeAttackPowerVersus => f.write_str("ModMeleeAttackPowerVersus"),
2078 Self::ModTotalThreat => f.write_str("ModTotalThreat"),
2079 Self::WaterWalk => f.write_str("WaterWalk"),
2080 Self::FeatherFall => f.write_str("FeatherFall"),
2081 Self::Hover => f.write_str("Hover"),
2082 Self::AddFlatModifier => f.write_str("AddFlatModifier"),
2083 Self::AddPctModifier => f.write_str("AddPctModifier"),
2084 Self::AddTargetTrigger => f.write_str("AddTargetTrigger"),
2085 Self::ModPowerRegenPercent => f.write_str("ModPowerRegenPercent"),
2086 Self::AddCasterHitTrigger => f.write_str("AddCasterHitTrigger"),
2087 Self::OverrideClassScripts => f.write_str("OverrideClassScripts"),
2088 Self::ModRangedDamageTaken => f.write_str("ModRangedDamageTaken"),
2089 Self::ModRangedDamageTakenPct => f.write_str("ModRangedDamageTakenPct"),
2090 Self::ModHealing => f.write_str("ModHealing"),
2091 Self::ModRegenDuringCombat => f.write_str("ModRegenDuringCombat"),
2092 Self::ModMechanicResistance => f.write_str("ModMechanicResistance"),
2093 Self::ModHealingPct => f.write_str("ModHealingPct"),
2094 Self::Unknown119 => f.write_str("Unknown119"),
2095 Self::Untrackable => f.write_str("Untrackable"),
2096 Self::Empathy => f.write_str("Empathy"),
2097 Self::ModOffhandDamagePct => f.write_str("ModOffhandDamagePct"),
2098 Self::ModTargetResistance => f.write_str("ModTargetResistance"),
2099 Self::ModRangedAttackPower => f.write_str("ModRangedAttackPower"),
2100 Self::ModMeleeDamageTaken => f.write_str("ModMeleeDamageTaken"),
2101 Self::ModMeleeDamageTakenPct => f.write_str("ModMeleeDamageTakenPct"),
2102 Self::RangedAttackPowerAttackerBonus => f.write_str("RangedAttackPowerAttackerBonus"),
2103 Self::ModPossessPet => f.write_str("ModPossessPet"),
2104 Self::ModSpeedAlways => f.write_str("ModSpeedAlways"),
2105 Self::ModMountedSpeedAlways => f.write_str("ModMountedSpeedAlways"),
2106 Self::ModRangedAttackPowerVersus => f.write_str("ModRangedAttackPowerVersus"),
2107 Self::ModIncreaseEnergyPercent => f.write_str("ModIncreaseEnergyPercent"),
2108 Self::ModIncreaseHealthPercent => f.write_str("ModIncreaseHealthPercent"),
2109 Self::ModManaRegenInterrupt => f.write_str("ModManaRegenInterrupt"),
2110 Self::ModHealingDone => f.write_str("ModHealingDone"),
2111 Self::ModHealingDonePercent => f.write_str("ModHealingDonePercent"),
2112 Self::ModTotalStatPercentage => f.write_str("ModTotalStatPercentage"),
2113 Self::ModMeleeHaste => f.write_str("ModMeleeHaste"),
2114 Self::ForceReaction => f.write_str("ForceReaction"),
2115 Self::ModRangedHaste => f.write_str("ModRangedHaste"),
2116 Self::ModRangedAmmoHaste => f.write_str("ModRangedAmmoHaste"),
2117 Self::ModBaseResistancePct => f.write_str("ModBaseResistancePct"),
2118 Self::ModResistanceExclusive => f.write_str("ModResistanceExclusive"),
2119 Self::SafeFall => f.write_str("SafeFall"),
2120 Self::ModPetTalentPoints => f.write_str("ModPetTalentPoints"),
2121 Self::AllowTamePetType => f.write_str("AllowTamePetType"),
2122 Self::MechanicImmunityMask => f.write_str("MechanicImmunityMask"),
2123 Self::RetainComboPoints => f.write_str("RetainComboPoints"),
2124 Self::ReducePushback => f.write_str("ReducePushback"),
2125 Self::ModShieldBlockvaluePct => f.write_str("ModShieldBlockvaluePct"),
2126 Self::TrackStealthed => f.write_str("TrackStealthed"),
2127 Self::ModDetectedRange => f.write_str("ModDetectedRange"),
2128 Self::SplitDamageFlat => f.write_str("SplitDamageFlat"),
2129 Self::ModStealthLevel => f.write_str("ModStealthLevel"),
2130 Self::ModWaterBreathing => f.write_str("ModWaterBreathing"),
2131 Self::ModReputationGain => f.write_str("ModReputationGain"),
2132 Self::PetDamageMulti => f.write_str("PetDamageMulti"),
2133 Self::ModShieldBlockvalue => f.write_str("ModShieldBlockvalue"),
2134 Self::NoPvpCredit => f.write_str("NoPvpCredit"),
2135 Self::ModAoeAvoidance => f.write_str("ModAoeAvoidance"),
2136 Self::ModHealthRegenInCombat => f.write_str("ModHealthRegenInCombat"),
2137 Self::PowerBurn => f.write_str("PowerBurn"),
2138 Self::ModCritDamageBonus => f.write_str("ModCritDamageBonus"),
2139 Self::Unknown164 => f.write_str("Unknown164"),
2140 Self::MeleeAttackPowerAttackerBonus => f.write_str("MeleeAttackPowerAttackerBonus"),
2141 Self::ModAttackPowerPct => f.write_str("ModAttackPowerPct"),
2142 Self::ModRangedAttackPowerPct => f.write_str("ModRangedAttackPowerPct"),
2143 Self::ModDamageDoneVersus => f.write_str("ModDamageDoneVersus"),
2144 Self::ModCritPercentVersus => f.write_str("ModCritPercentVersus"),
2145 Self::DetectAmore => f.write_str("DetectAmore"),
2146 Self::ModSpeedNotStack => f.write_str("ModSpeedNotStack"),
2147 Self::ModMountedSpeedNotStack => f.write_str("ModMountedSpeedNotStack"),
2148 Self::Unknown173 => f.write_str("Unknown173"),
2149 Self::ModSpellDamageOfStatPercent => f.write_str("ModSpellDamageOfStatPercent"),
2150 Self::ModSpellHealingOfStatPercent => f.write_str("ModSpellHealingOfStatPercent"),
2151 Self::SpiritOfRedemption => f.write_str("SpiritOfRedemption"),
2152 Self::AoeCharm => f.write_str("AoeCharm"),
2153 Self::ModDebuffResistance => f.write_str("ModDebuffResistance"),
2154 Self::ModAttackerSpellCritChance => f.write_str("ModAttackerSpellCritChance"),
2155 Self::ModFlatSpellDamageVersus => f.write_str("ModFlatSpellDamageVersus"),
2156 Self::Unknown181 => f.write_str("Unknown181"),
2157 Self::ModResistanceOfStatPercent => f.write_str("ModResistanceOfStatPercent"),
2158 Self::ModCriticalThreat => f.write_str("ModCriticalThreat"),
2159 Self::ModAttackerMeleeHitChance => f.write_str("ModAttackerMeleeHitChance"),
2160 Self::ModAttackerRangedHitChance => f.write_str("ModAttackerRangedHitChance"),
2161 Self::ModAttackerSpellHitChance => f.write_str("ModAttackerSpellHitChance"),
2162 Self::ModAttackerMeleeCritChance => f.write_str("ModAttackerMeleeCritChance"),
2163 Self::ModAttackerRangedCritChance => f.write_str("ModAttackerRangedCritChance"),
2164 Self::ModRating => f.write_str("ModRating"),
2165 Self::ModFactionReputationGain => f.write_str("ModFactionReputationGain"),
2166 Self::UseNormalMovementSpeed => f.write_str("UseNormalMovementSpeed"),
2167 Self::ModMeleeRangedHaste => f.write_str("ModMeleeRangedHaste"),
2168 Self::MeleeSlow => f.write_str("MeleeSlow"),
2169 Self::ModTargetAbsorbSchool => f.write_str("ModTargetAbsorbSchool"),
2170 Self::ModTargetAbilityAbsorbSchool => f.write_str("ModTargetAbilityAbsorbSchool"),
2171 Self::ModCooldown => f.write_str("ModCooldown"),
2172 Self::ModAttackerSpellAndWeaponCritChance => f.write_str("ModAttackerSpellAndWeaponCritChance"),
2173 Self::Unknown198 => f.write_str("Unknown198"),
2174 Self::ModIncreasesSpellPctToHit => f.write_str("ModIncreasesSpellPctToHit"),
2175 Self::ModXpPct => f.write_str("ModXpPct"),
2176 Self::Fly => f.write_str("Fly"),
2177 Self::IgnoreCombatResult => f.write_str("IgnoreCombatResult"),
2178 Self::ModAttackerMeleeCritDamage => f.write_str("ModAttackerMeleeCritDamage"),
2179 Self::ModAttackerRangedCritDamage => f.write_str("ModAttackerRangedCritDamage"),
2180 Self::ModSchoolCritDmgTaken => f.write_str("ModSchoolCritDmgTaken"),
2181 Self::ModIncreaseVehicleFlightSpeed => f.write_str("ModIncreaseVehicleFlightSpeed"),
2182 Self::ModIncreaseMountedFlightSpeed => f.write_str("ModIncreaseMountedFlightSpeed"),
2183 Self::ModIncreaseFlightSpeed => f.write_str("ModIncreaseFlightSpeed"),
2184 Self::ModMountedFlightSpeedAlways => f.write_str("ModMountedFlightSpeedAlways"),
2185 Self::ModVehicleSpeedAlways => f.write_str("ModVehicleSpeedAlways"),
2186 Self::ModFlightSpeedNotStack => f.write_str("ModFlightSpeedNotStack"),
2187 Self::ModRangedAttackPowerOfStatPercent => f.write_str("ModRangedAttackPowerOfStatPercent"),
2188 Self::ModRageFromDamageDealt => f.write_str("ModRageFromDamageDealt"),
2189 Self::Unknown214 => f.write_str("Unknown214"),
2190 Self::ArenaPreparation => f.write_str("ArenaPreparation"),
2191 Self::HasteSpells => f.write_str("HasteSpells"),
2192 Self::ModMeleeHaste2 => f.write_str("ModMeleeHaste2"),
2193 Self::HasteRanged => f.write_str("HasteRanged"),
2194 Self::ModManaRegenFromStat => f.write_str("ModManaRegenFromStat"),
2195 Self::ModRatingFromStat => f.write_str("ModRatingFromStat"),
2196 Self::ModDetaunt => f.write_str("ModDetaunt"),
2197 Self::Unknown222 => f.write_str("Unknown222"),
2198 Self::RaidProcFromCharge => f.write_str("RaidProcFromCharge"),
2199 Self::Unknown224 => f.write_str("Unknown224"),
2200 Self::RaidProcFromChargeWithValue => f.write_str("RaidProcFromChargeWithValue"),
2201 Self::PeriodicDummy => f.write_str("PeriodicDummy"),
2202 Self::PeriodicTriggerSpellWithValue => f.write_str("PeriodicTriggerSpellWithValue"),
2203 Self::DetectStealth => f.write_str("DetectStealth"),
2204 Self::ModAoeDamageAvoidance => f.write_str("ModAoeDamageAvoidance"),
2205 Self::Unknown230 => f.write_str("Unknown230"),
2206 Self::ProcTriggerSpellWithValue => f.write_str("ProcTriggerSpellWithValue"),
2207 Self::MechanicDurationMod => f.write_str("MechanicDurationMod"),
2208 Self::ChangeModelForAllHumanoids => f.write_str("ChangeModelForAllHumanoids"),
2209 Self::MechanicDurationModNotStack => f.write_str("MechanicDurationModNotStack"),
2210 Self::ModDispelResist => f.write_str("ModDispelResist"),
2211 Self::ControlVehicle => f.write_str("ControlVehicle"),
2212 Self::ModSpellDamageOfAttackPower => f.write_str("ModSpellDamageOfAttackPower"),
2213 Self::ModSpellHealingOfAttackPower => f.write_str("ModSpellHealingOfAttackPower"),
2214 Self::ModScale2 => f.write_str("ModScale2"),
2215 Self::ModExpertise => f.write_str("ModExpertise"),
2216 Self::ForceMoveForward => f.write_str("ForceMoveForward"),
2217 Self::ModSpellDamageFromHealing => f.write_str("ModSpellDamageFromHealing"),
2218 Self::ModFaction => f.write_str("ModFaction"),
2219 Self::ComprehendLanguage => f.write_str("ComprehendLanguage"),
2220 Self::ModAuraDurationByDispel => f.write_str("ModAuraDurationByDispel"),
2221 Self::ModAuraDurationByDispelNotStack => f.write_str("ModAuraDurationByDispelNotStack"),
2222 Self::CloneCaster => f.write_str("CloneCaster"),
2223 Self::ModCombatResultChance => f.write_str("ModCombatResultChance"),
2224 Self::ConvertRune => f.write_str("ConvertRune"),
2225 Self::ModIncreaseHealth2 => f.write_str("ModIncreaseHealth2"),
2226 Self::ModEnemyDodge => f.write_str("ModEnemyDodge"),
2227 Self::ModSpeedSlowAll => f.write_str("ModSpeedSlowAll"),
2228 Self::ModBlockCritChance => f.write_str("ModBlockCritChance"),
2229 Self::ModDisarmOffhand => f.write_str("ModDisarmOffhand"),
2230 Self::ModMechanicDamageTakenPercent => f.write_str("ModMechanicDamageTakenPercent"),
2231 Self::NoReagentUse => f.write_str("NoReagentUse"),
2232 Self::ModTargetResistBySpellClass => f.write_str("ModTargetResistBySpellClass"),
2233 Self::Unknown258 => f.write_str("Unknown258"),
2234 Self::ModHotPct => f.write_str("ModHotPct"),
2235 Self::ScreenEffect => f.write_str("ScreenEffect"),
2236 Self::Phase => f.write_str("Phase"),
2237 Self::AbilityIgnoreAurastate => f.write_str("AbilityIgnoreAurastate"),
2238 Self::AllowOnlyAbility => f.write_str("AllowOnlyAbility"),
2239 Self::Unknown264 => f.write_str("Unknown264"),
2240 Self::Unknown265 => f.write_str("Unknown265"),
2241 Self::Unknown266 => f.write_str("Unknown266"),
2242 Self::ModImmuneAuraApplySchool => f.write_str("ModImmuneAuraApplySchool"),
2243 Self::ModAttackPowerOfStatPercent => f.write_str("ModAttackPowerOfStatPercent"),
2244 Self::ModIgnoreTargetResist => f.write_str("ModIgnoreTargetResist"),
2245 Self::ModAbilityIgnoreTargetResist => f.write_str("ModAbilityIgnoreTargetResist"),
2246 Self::ModDamageFromCaster => f.write_str("ModDamageFromCaster"),
2247 Self::IgnoreMeleeReset => f.write_str("IgnoreMeleeReset"),
2248 Self::XRay => f.write_str("XRay"),
2249 Self::AbilityConsumeNoAmmo => f.write_str("AbilityConsumeNoAmmo"),
2250 Self::ModIgnoreShapeshift => f.write_str("ModIgnoreShapeshift"),
2251 Self::ModDamageDoneForMechanic => f.write_str("ModDamageDoneForMechanic"),
2252 Self::ModMaxAffectedTargets => f.write_str("ModMaxAffectedTargets"),
2253 Self::ModDisarmRanged => f.write_str("ModDisarmRanged"),
2254 Self::InitializeImages => f.write_str("InitializeImages"),
2255 Self::ModArmorPenetrationPct => f.write_str("ModArmorPenetrationPct"),
2256 Self::ModHonorGainPct => f.write_str("ModHonorGainPct"),
2257 Self::ModBaseHealthPct => f.write_str("ModBaseHealthPct"),
2258 Self::ModHealingReceived => f.write_str("ModHealingReceived"),
2259 Self::Linked => f.write_str("Linked"),
2260 Self::ModAttackPowerOfArmor => f.write_str("ModAttackPowerOfArmor"),
2261 Self::AbilityPeriodicCrit => f.write_str("AbilityPeriodicCrit"),
2262 Self::DeflectSpells => f.write_str("DeflectSpells"),
2263 Self::IgnoreHitDirection => f.write_str("IgnoreHitDirection"),
2264 Self::PreventDurabilityLoss => f.write_str("PreventDurabilityLoss"),
2265 Self::ModCritPct => f.write_str("ModCritPct"),
2266 Self::ModXpQuestPct => f.write_str("ModXpQuestPct"),
2267 Self::OpenStable => f.write_str("OpenStable"),
2268 Self::OverrideSpells => f.write_str("OverrideSpells"),
2269 Self::PreventRegeneratePower => f.write_str("PreventRegeneratePower"),
2270 Self::Unknown295 => f.write_str("Unknown295"),
2271 Self::SetVehicleId => f.write_str("SetVehicleId"),
2272 Self::BlockSpellFamily => f.write_str("BlockSpellFamily"),
2273 Self::Strangulate => f.write_str("Strangulate"),
2274 Self::Unknown299 => f.write_str("Unknown299"),
2275 Self::ShareDamagePct => f.write_str("ShareDamagePct"),
2276 Self::SchoolHealAbsorb => f.write_str("SchoolHealAbsorb"),
2277 Self::Unknown302 => f.write_str("Unknown302"),
2278 Self::ModDamageDoneVersusAurastate => f.write_str("ModDamageDoneVersusAurastate"),
2279 Self::ModFakeInebriate => f.write_str("ModFakeInebriate"),
2280 Self::ModMinimumSpeed => f.write_str("ModMinimumSpeed"),
2281 Self::Unknown306 => f.write_str("Unknown306"),
2282 Self::HealAbsorbTest => f.write_str("HealAbsorbTest"),
2283 Self::ModCritChanceForCaster => f.write_str("ModCritChanceForCaster"),
2284 Self::Unknown309 => f.write_str("Unknown309"),
2285 Self::ModCreatureAoeDamageAvoidance => f.write_str("ModCreatureAoeDamageAvoidance"),
2286 Self::Unknown311 => f.write_str("Unknown311"),
2287 Self::Unknown312 => f.write_str("Unknown312"),
2288 Self::Unknown313 => f.write_str("Unknown313"),
2289 Self::PreventResurrection => f.write_str("PreventResurrection"),
2290 Self::UnderwaterWalking => f.write_str("UnderwaterWalking"),
2291 Self::PeriodicHaste => f.write_str("PeriodicHaste"),
2292 }
2293 }
2294}
2295
2296impl TryFrom<u32> for AuraType {
2297 type Error = crate::errors::EnumError;
2298 fn try_from(value: u32) -> Result<Self, Self::Error> {
2299 Self::from_int(value)
2300 }
2301}
2302
2303impl TryFrom<u8> for AuraType {
2304 type Error = crate::errors::EnumError;
2305 fn try_from(value: u8) -> Result<Self, Self::Error> {
2306 Self::from_int(value.into())
2307 }
2308}
2309
2310impl TryFrom<u16> for AuraType {
2311 type Error = crate::errors::EnumError;
2312 fn try_from(value: u16) -> Result<Self, Self::Error> {
2313 Self::from_int(value.into())
2314 }
2315}
2316
2317impl TryFrom<u64> for AuraType {
2318 type Error = crate::errors::EnumError;
2319 fn try_from(value: u64) -> Result<Self, Self::Error> {
2320 TryInto::<u32>::try_into(value)
2321 .map_err(|_| crate::errors::EnumError::new(NAME, value.into()))?
2322 .try_into()
2323 }
2324}
2325
2326impl TryFrom<i8> for AuraType {
2327 type Error = crate::errors::EnumError;
2328 fn try_from(value: i8) -> Result<Self, Self::Error> {
2329 TryInto::<u32>::try_into(value)
2330 .map_err(|_| crate::errors::EnumError::new(NAME, value.into()))?
2331 .try_into()
2332 }
2333}
2334
2335impl TryFrom<i16> for AuraType {
2336 type Error = crate::errors::EnumError;
2337 fn try_from(value: i16) -> Result<Self, Self::Error> {
2338 TryInto::<u32>::try_into(value)
2339 .map_err(|_| crate::errors::EnumError::new(NAME, value.into()))?
2340 .try_into()
2341 }
2342}
2343
2344impl TryFrom<i32> for AuraType {
2345 type Error = crate::errors::EnumError;
2346 fn try_from(value: i32) -> Result<Self, Self::Error> {
2347 let v = u32::from_le_bytes(value.to_le_bytes());
2348 Self::from_int(v)
2349 }
2350}
2351
2352impl TryFrom<i64> for AuraType {
2353 type Error = crate::errors::EnumError;
2354 fn try_from(value: i64) -> Result<Self, Self::Error> {
2355 TryInto::<u32>::try_into(value)
2356 .map_err(|_| crate::errors::EnumError::new(NAME, value.into()))?
2357 .try_into()
2358 }
2359}
2360
2361impl TryFrom<usize> for AuraType {
2362 type Error = crate::errors::EnumError;
2363 fn try_from(value: usize) -> Result<Self, Self::Error> {
2364 TryInto::<u32>::try_into(value)
2365 .map_err(|_| crate::errors::EnumError::new(NAME, value as i128))?
2366 .try_into()
2367 }
2368}
2369