diff options
Diffstat (limited to 'src/server/shared/enuminfo_SharedDefines.cpp')
-rw-r--r-- | src/server/shared/enuminfo_SharedDefines.cpp | 675 |
1 files changed, 672 insertions, 3 deletions
diff --git a/src/server/shared/enuminfo_SharedDefines.cpp b/src/server/shared/enuminfo_SharedDefines.cpp index c2fa150bcf6..d3a684a6bd5 100644 --- a/src/server/shared/enuminfo_SharedDefines.cpp +++ b/src/server/shared/enuminfo_SharedDefines.cpp @@ -20,9 +20,7 @@ #include "SmartEnum.h" #include <stdexcept> -namespace Trinity -{ -namespace Impl +namespace Trinity::Impl { /*************************************************************\ @@ -69,6 +67,25 @@ TC_API_EXPORT Races EnumUtils<Races>::FromIndex(size_t index) } } +template <> +TC_API_EXPORT size_t EnumUtils<Races>::ToIndex(Races value) +{ + switch (value) + { + case RACE_HUMAN: return 0; + case RACE_ORC: return 1; + case RACE_DWARF: return 2; + case RACE_NIGHTELF: return 3; + case RACE_UNDEAD_PLAYER: return 4; + case RACE_TAUREN: return 5; + case RACE_GNOME: return 6; + case RACE_TROLL: return 7; + case RACE_BLOODELF: return 8; + case RACE_DRAENEI: return 9; + default: throw std::out_of_range("value"); + } +} + /***************************************************************\ |* data for enum 'Classes' in 'SharedDefines.h' auto-generated *| \***************************************************************/ @@ -113,6 +130,25 @@ TC_API_EXPORT Classes EnumUtils<Classes>::FromIndex(size_t index) } } +template <> +TC_API_EXPORT size_t EnumUtils<Classes>::ToIndex(Classes value) +{ + switch (value) + { + case CLASS_WARRIOR: return 0; + case CLASS_PALADIN: return 1; + case CLASS_HUNTER: return 2; + case CLASS_ROGUE: return 3; + case CLASS_PRIEST: return 4; + case CLASS_DEATH_KNIGHT: return 5; + case CLASS_SHAMAN: return 6; + case CLASS_MAGE: return 7; + case CLASS_WARLOCK: return 8; + case CLASS_DRUID: return 9; + default: throw std::out_of_range("value"); + } +} + /**************************************************************\ |* data for enum 'Powers' in 'SharedDefines.h' auto-generated *| \**************************************************************/ @@ -153,6 +189,23 @@ TC_API_EXPORT Powers EnumUtils<Powers>::FromIndex(size_t index) } } +template <> +TC_API_EXPORT size_t EnumUtils<Powers>::ToIndex(Powers value) +{ + switch (value) + { + case POWER_HEALTH: return 0; + case POWER_MANA: return 1; + case POWER_RAGE: return 2; + case POWER_FOCUS: return 3; + case POWER_ENERGY: return 4; + case POWER_HAPPINESS: return 5; + case POWER_RUNE: return 6; + case POWER_RUNIC_POWER: return 7; + default: throw std::out_of_range("value"); + } +} + /********************************************************************\ |* data for enum 'SpellSchools' in 'SharedDefines.h' auto-generated *| \********************************************************************/ @@ -191,6 +244,22 @@ TC_API_EXPORT SpellSchools EnumUtils<SpellSchools>::FromIndex(size_t index) } } +template <> +TC_API_EXPORT size_t EnumUtils<SpellSchools>::ToIndex(SpellSchools value) +{ + switch (value) + { + case SPELL_SCHOOL_NORMAL: return 0; + case SPELL_SCHOOL_HOLY: return 1; + case SPELL_SCHOOL_FIRE: return 2; + case SPELL_SCHOOL_NATURE: return 3; + case SPELL_SCHOOL_FROST: return 4; + case SPELL_SCHOOL_SHADOW: return 5; + case SPELL_SCHOOL_ARCANE: return 6; + default: throw std::out_of_range("value"); + } +} + /******************************************************************\ |* data for enum 'SpellAttr0' in 'SharedDefines.h' auto-generated *| \******************************************************************/ @@ -279,6 +348,47 @@ TC_API_EXPORT SpellAttr0 EnumUtils<SpellAttr0>::FromIndex(size_t index) } } +template <> +TC_API_EXPORT size_t EnumUtils<SpellAttr0>::ToIndex(SpellAttr0 value) +{ + switch (value) + { + case SPELL_ATTR0_UNK0: return 0; + case SPELL_ATTR0_REQ_AMMO: return 1; + case SPELL_ATTR0_ON_NEXT_SWING: return 2; + case SPELL_ATTR0_IS_REPLENISHMENT: return 3; + case SPELL_ATTR0_ABILITY: return 4; + case SPELL_ATTR0_TRADESPELL: return 5; + case SPELL_ATTR0_PASSIVE: return 6; + case SPELL_ATTR0_HIDDEN_CLIENTSIDE: return 7; + case SPELL_ATTR0_HIDE_IN_COMBAT_LOG: return 8; + case SPELL_ATTR0_TARGET_MAINHAND_ITEM: return 9; + case SPELL_ATTR0_ON_NEXT_SWING_2: return 10; + case SPELL_ATTR0_UNK11: return 11; + case SPELL_ATTR0_DAYTIME_ONLY: return 12; + case SPELL_ATTR0_NIGHT_ONLY: return 13; + case SPELL_ATTR0_INDOORS_ONLY: return 14; + case SPELL_ATTR0_OUTDOORS_ONLY: return 15; + case SPELL_ATTR0_NOT_SHAPESHIFT: return 16; + case SPELL_ATTR0_ONLY_STEALTHED: return 17; + case SPELL_ATTR0_DONT_AFFECT_SHEATH_STATE: return 18; + case SPELL_ATTR0_LEVEL_DAMAGE_CALCULATION: return 19; + case SPELL_ATTR0_STOP_ATTACK_TARGET: return 20; + case SPELL_ATTR0_IMPOSSIBLE_DODGE_PARRY_BLOCK: return 21; + case SPELL_ATTR0_CAST_TRACK_TARGET: return 22; + case SPELL_ATTR0_CASTABLE_WHILE_DEAD: return 23; + case SPELL_ATTR0_CASTABLE_WHILE_MOUNTED: return 24; + case SPELL_ATTR0_DISABLED_WHILE_ACTIVE: return 25; + case SPELL_ATTR0_NEGATIVE_1: return 26; + case SPELL_ATTR0_CASTABLE_WHILE_SITTING: return 27; + case SPELL_ATTR0_CANT_USED_IN_COMBAT: return 28; + case SPELL_ATTR0_UNAFFECTED_BY_INVULNERABILITY: return 29; + case SPELL_ATTR0_HEARTBEAT_RESIST_CHECK: return 30; + case SPELL_ATTR0_CANT_CANCEL: return 31; + default: throw std::out_of_range("value"); + } +} + /******************************************************************\ |* data for enum 'SpellAttr1' in 'SharedDefines.h' auto-generated *| \******************************************************************/ @@ -367,6 +477,47 @@ TC_API_EXPORT SpellAttr1 EnumUtils<SpellAttr1>::FromIndex(size_t index) } } +template <> +TC_API_EXPORT size_t EnumUtils<SpellAttr1>::ToIndex(SpellAttr1 value) +{ + switch (value) + { + case SPELL_ATTR1_DISMISS_PET: return 0; + case SPELL_ATTR1_DRAIN_ALL_POWER: return 1; + case SPELL_ATTR1_CHANNELED_1: return 2; + case SPELL_ATTR1_CANT_BE_REDIRECTED: return 3; + case SPELL_ATTR1_UNK4: return 4; + case SPELL_ATTR1_NOT_BREAK_STEALTH: return 5; + case SPELL_ATTR1_CHANNELED_2: return 6; + case SPELL_ATTR1_CANT_BE_REFLECTED: return 7; + case SPELL_ATTR1_CANT_TARGET_IN_COMBAT: return 8; + case SPELL_ATTR1_MELEE_COMBAT_START: return 9; + case SPELL_ATTR1_NO_THREAT: return 10; + case SPELL_ATTR1_UNK11: return 11; + case SPELL_ATTR1_IS_PICKPOCKET: return 12; + case SPELL_ATTR1_FARSIGHT: return 13; + case SPELL_ATTR1_CHANNEL_TRACK_TARGET: return 14; + case SPELL_ATTR1_DISPEL_AURAS_ON_IMMUNITY: return 15; + case SPELL_ATTR1_UNAFFECTED_BY_SCHOOL_IMMUNE: return 16; + case SPELL_ATTR1_UNAUTOCASTABLE_BY_PET: return 17; + case SPELL_ATTR1_UNK18: return 18; + case SPELL_ATTR1_CANT_TARGET_SELF: return 19; + case SPELL_ATTR1_REQ_COMBO_POINTS1: return 20; + case SPELL_ATTR1_UNK21: return 21; + case SPELL_ATTR1_REQ_COMBO_POINTS2: return 22; + case SPELL_ATTR1_UNK23: return 23; + case SPELL_ATTR1_IS_FISHING: return 24; + case SPELL_ATTR1_UNK25: return 25; + case SPELL_ATTR1_UNK26: return 26; + case SPELL_ATTR1_UNK27: return 27; + case SPELL_ATTR1_DONT_DISPLAY_IN_AURA_BAR: return 28; + case SPELL_ATTR1_CHANNEL_DISPLAY_SPELL_NAME: return 29; + case SPELL_ATTR1_ENABLE_AT_DODGE: return 30; + case SPELL_ATTR1_UNK31: return 31; + default: throw std::out_of_range("value"); + } +} + /******************************************************************\ |* data for enum 'SpellAttr2' in 'SharedDefines.h' auto-generated *| \******************************************************************/ @@ -455,6 +606,47 @@ TC_API_EXPORT SpellAttr2 EnumUtils<SpellAttr2>::FromIndex(size_t index) } } +template <> +TC_API_EXPORT size_t EnumUtils<SpellAttr2>::ToIndex(SpellAttr2 value) +{ + switch (value) + { + case SPELL_ATTR2_CAN_TARGET_DEAD: return 0; + case SPELL_ATTR2_UNK1: return 1; + case SPELL_ATTR2_CAN_TARGET_NOT_IN_LOS: return 2; + case SPELL_ATTR2_UNK3: return 3; + case SPELL_ATTR2_DISPLAY_IN_STANCE_BAR: return 4; + case SPELL_ATTR2_AUTOREPEAT_FLAG: return 5; + case SPELL_ATTR2_CANT_TARGET_TAPPED: return 6; + case SPELL_ATTR2_UNK7: return 7; + case SPELL_ATTR2_UNK8: return 8; + case SPELL_ATTR2_UNK9: return 9; + case SPELL_ATTR2_UNK10: return 10; + case SPELL_ATTR2_HEALTH_FUNNEL: return 11; + case SPELL_ATTR2_UNK12: return 12; + case SPELL_ATTR2_PRESERVE_ENCHANT_IN_ARENA: return 13; + case SPELL_ATTR2_UNK14: return 14; + case SPELL_ATTR2_UNK15: return 15; + case SPELL_ATTR2_TAME_BEAST: return 16; + case SPELL_ATTR2_NOT_RESET_AUTO_ACTIONS: return 17; + case SPELL_ATTR2_REQ_DEAD_PET: return 18; + case SPELL_ATTR2_NOT_NEED_SHAPESHIFT: return 19; + case SPELL_ATTR2_UNK20: return 20; + case SPELL_ATTR2_DAMAGE_REDUCED_SHIELD: return 21; + case SPELL_ATTR2_UNK22: return 22; + case SPELL_ATTR2_IS_ARCANE_CONCENTRATION: return 23; + case SPELL_ATTR2_UNK24: return 24; + case SPELL_ATTR2_UNK25: return 25; + case SPELL_ATTR2_UNAFFECTED_BY_AURA_SCHOOL_IMMUNE: return 26; + case SPELL_ATTR2_UNK27: return 27; + case SPELL_ATTR2_UNK28: return 28; + case SPELL_ATTR2_CANT_CRIT: return 29; + case SPELL_ATTR2_TRIGGERED_CAN_TRIGGER_PROC: return 30; + case SPELL_ATTR2_FOOD_BUFF: return 31; + default: throw std::out_of_range("value"); + } +} + /******************************************************************\ |* data for enum 'SpellAttr3' in 'SharedDefines.h' auto-generated *| \******************************************************************/ @@ -543,6 +735,47 @@ TC_API_EXPORT SpellAttr3 EnumUtils<SpellAttr3>::FromIndex(size_t index) } } +template <> +TC_API_EXPORT size_t EnumUtils<SpellAttr3>::ToIndex(SpellAttr3 value) +{ + switch (value) + { + case SPELL_ATTR3_UNK0: return 0; + case SPELL_ATTR3_IGNORE_PROC_SUBCLASS_MASK: return 1; + case SPELL_ATTR3_UNK2: return 2; + case SPELL_ATTR3_BLOCKABLE_SPELL: return 3; + case SPELL_ATTR3_IGNORE_RESURRECTION_TIMER: return 4; + case SPELL_ATTR3_UNK5: return 5; + case SPELL_ATTR3_UNK6: return 6; + case SPELL_ATTR3_STACK_FOR_DIFF_CASTERS: return 7; + case SPELL_ATTR3_ONLY_TARGET_PLAYERS: return 8; + case SPELL_ATTR3_TRIGGERED_CAN_TRIGGER_PROC_2: return 9; + case SPELL_ATTR3_MAIN_HAND: return 10; + case SPELL_ATTR3_BATTLEGROUND: return 11; + case SPELL_ATTR3_ONLY_TARGET_GHOSTS: return 12; + case SPELL_ATTR3_DONT_DISPLAY_CHANNEL_BAR: return 13; + case SPELL_ATTR3_IS_HONORLESS_TARGET: return 14; + case SPELL_ATTR3_UNK15: return 15; + case SPELL_ATTR3_CANT_TRIGGER_PROC: return 16; + case SPELL_ATTR3_NO_INITIAL_AGGRO: return 17; + case SPELL_ATTR3_IGNORE_HIT_RESULT: return 18; + case SPELL_ATTR3_DISABLE_PROC: return 19; + case SPELL_ATTR3_DEATH_PERSISTENT: return 20; + case SPELL_ATTR3_UNK21: return 21; + case SPELL_ATTR3_REQ_WAND: return 22; + case SPELL_ATTR3_UNK23: return 23; + case SPELL_ATTR3_REQ_OFFHAND: return 24; + case SPELL_ATTR3_TREAT_AS_PERIODIC: return 25; + case SPELL_ATTR3_CAN_PROC_WITH_TRIGGERED: return 26; + case SPELL_ATTR3_DRAIN_SOUL: return 27; + case SPELL_ATTR3_UNK28: return 28; + case SPELL_ATTR3_NO_DONE_BONUS: return 29; + case SPELL_ATTR3_DONT_DISPLAY_RANGE: return 30; + case SPELL_ATTR3_UNK31: return 31; + default: throw std::out_of_range("value"); + } +} + /******************************************************************\ |* data for enum 'SpellAttr4' in 'SharedDefines.h' auto-generated *| \******************************************************************/ @@ -631,6 +864,47 @@ TC_API_EXPORT SpellAttr4 EnumUtils<SpellAttr4>::FromIndex(size_t index) } } +template <> +TC_API_EXPORT size_t EnumUtils<SpellAttr4>::ToIndex(SpellAttr4 value) +{ + switch (value) + { + case SPELL_ATTR4_IGNORE_RESISTANCES: return 0; + case SPELL_ATTR4_PROC_ONLY_ON_CASTER: return 1; + case SPELL_ATTR4_FADES_WHILE_LOGGED_OUT: return 2; + case SPELL_ATTR4_UNK3: return 3; + case SPELL_ATTR4_UNK4: return 4; + case SPELL_ATTR4_UNK5: return 5; + case SPELL_ATTR4_NOT_STEALABLE: return 6; + case SPELL_ATTR4_CAN_CAST_WHILE_CASTING: return 7; + case SPELL_ATTR4_FIXED_DAMAGE: return 8; + case SPELL_ATTR4_TRIGGER_ACTIVATE: return 9; + case SPELL_ATTR4_SPELL_VS_EXTEND_COST: return 10; + case SPELL_ATTR4_UNK11: return 11; + case SPELL_ATTR4_UNK12: return 12; + case SPELL_ATTR4_UNK13: return 13; + case SPELL_ATTR4_DAMAGE_DOESNT_BREAK_AURAS: return 14; + case SPELL_ATTR4_UNK15: return 15; + case SPELL_ATTR4_NOT_USABLE_IN_ARENA: return 16; + case SPELL_ATTR4_USABLE_IN_ARENA: return 17; + case SPELL_ATTR4_AREA_TARGET_CHAIN: return 18; + case SPELL_ATTR4_UNK19: return 19; + case SPELL_ATTR4_NOT_CHECK_SELFCAST_POWER: return 20; + case SPELL_ATTR4_UNK21: return 21; + case SPELL_ATTR4_UNK22: return 22; + case SPELL_ATTR4_CANT_TRIGGER_ITEM_SPELLS: return 23; + case SPELL_ATTR4_UNK24: return 24; + case SPELL_ATTR4_IS_PET_SCALING: return 25; + case SPELL_ATTR4_CAST_ONLY_IN_OUTLAND: return 26; + case SPELL_ATTR4_INHERIT_CRIT_FROM_AURA: return 27; + case SPELL_ATTR4_UNK28: return 28; + case SPELL_ATTR4_UNK29: return 29; + case SPELL_ATTR4_UNK30: return 30; + case SPELL_ATTR4_UNK31: return 31; + default: throw std::out_of_range("value"); + } +} + /******************************************************************\ |* data for enum 'SpellAttr5' in 'SharedDefines.h' auto-generated *| \******************************************************************/ @@ -719,6 +993,47 @@ TC_API_EXPORT SpellAttr5 EnumUtils<SpellAttr5>::FromIndex(size_t index) } } +template <> +TC_API_EXPORT size_t EnumUtils<SpellAttr5>::ToIndex(SpellAttr5 value) +{ + switch (value) + { + case SPELL_ATTR5_CAN_CHANNEL_WHEN_MOVING: return 0; + case SPELL_ATTR5_NO_REAGENT_WHILE_PREP: return 1; + case SPELL_ATTR5_REMOVE_ON_ARENA_ENTER: return 2; + case SPELL_ATTR5_USABLE_WHILE_STUNNED: return 3; + case SPELL_ATTR5_UNK4: return 4; + case SPELL_ATTR5_SINGLE_TARGET_SPELL: return 5; + case SPELL_ATTR5_UNK6: return 6; + case SPELL_ATTR5_UNK7: return 7; + case SPELL_ATTR5_UNK8: return 8; + case SPELL_ATTR5_START_PERIODIC_AT_APPLY: return 9; + case SPELL_ATTR5_HIDE_DURATION: return 10; + case SPELL_ATTR5_ALLOW_TARGET_OF_TARGET_AS_TARGET: return 11; + case SPELL_ATTR5_UNK12: return 12; + case SPELL_ATTR5_HASTE_AFFECT_DURATION: return 13; + case SPELL_ATTR5_UNK14: return 14; + case SPELL_ATTR5_UNK15: return 15; + case SPELL_ATTR5_UNK16: return 16; + case SPELL_ATTR5_USABLE_WHILE_FEARED: return 17; + case SPELL_ATTR5_USABLE_WHILE_CONFUSED: return 18; + case SPELL_ATTR5_DONT_TURN_DURING_CAST: return 19; + case SPELL_ATTR5_UNK20: return 20; + case SPELL_ATTR5_UNK21: return 21; + case SPELL_ATTR5_UNK22: return 22; + case SPELL_ATTR5_UNK23: return 23; + case SPELL_ATTR5_UNK24: return 24; + case SPELL_ATTR5_UNK25: return 25; + case SPELL_ATTR5_SKIP_CHECKCAST_LOS_CHECK: return 26; + case SPELL_ATTR5_DONT_SHOW_AURA_IF_SELF_CAST: return 27; + case SPELL_ATTR5_DONT_SHOW_AURA_IF_NOT_SELF_CAST: return 28; + case SPELL_ATTR5_UNK29: return 29; + case SPELL_ATTR5_UNK30: return 30; + case SPELL_ATTR5_UNK31: return 31; + default: throw std::out_of_range("value"); + } +} + /******************************************************************\ |* data for enum 'SpellAttr6' in 'SharedDefines.h' auto-generated *| \******************************************************************/ @@ -807,6 +1122,47 @@ TC_API_EXPORT SpellAttr6 EnumUtils<SpellAttr6>::FromIndex(size_t index) } } +template <> +TC_API_EXPORT size_t EnumUtils<SpellAttr6>::ToIndex(SpellAttr6 value) +{ + switch (value) + { + case SPELL_ATTR6_DONT_DISPLAY_COOLDOWN: return 0; + case SPELL_ATTR6_ONLY_IN_ARENA: return 1; + case SPELL_ATTR6_IGNORE_CASTER_AURAS: return 2; + case SPELL_ATTR6_ASSIST_IGNORE_IMMUNE_FLAG: return 3; + case SPELL_ATTR6_UNK4: return 4; + case SPELL_ATTR6_DONT_CONSUME_PROC_CHARGES: return 5; + case SPELL_ATTR6_USE_SPELL_CAST_EVENT: return 6; + case SPELL_ATTR6_UNK7: return 7; + case SPELL_ATTR6_CANT_TARGET_CROWD_CONTROLLED: return 8; + case SPELL_ATTR6_UNK9: return 9; + case SPELL_ATTR6_CAN_TARGET_POSSESSED_FRIENDS: return 10; + case SPELL_ATTR6_NOT_IN_RAID_INSTANCE: return 11; + case SPELL_ATTR6_CASTABLE_WHILE_ON_VEHICLE: return 12; + case SPELL_ATTR6_CAN_TARGET_INVISIBLE: return 13; + case SPELL_ATTR6_UNK14: return 14; + case SPELL_ATTR6_UNK15: return 15; + case SPELL_ATTR6_UNK16: return 16; + case SPELL_ATTR6_UNK17: return 17; + case SPELL_ATTR6_CAST_BY_CHARMER: return 18; + case SPELL_ATTR6_UNK19: return 19; + case SPELL_ATTR6_ONLY_VISIBLE_TO_CASTER: return 20; + case SPELL_ATTR6_CLIENT_UI_TARGET_EFFECTS: return 21; + case SPELL_ATTR6_UNK22: return 22; + case SPELL_ATTR6_UNK23: return 23; + case SPELL_ATTR6_CAN_TARGET_UNTARGETABLE: return 24; + case SPELL_ATTR6_NOT_RESET_SWING_IF_INSTANT: return 25; + case SPELL_ATTR6_UNK26: return 26; + case SPELL_ATTR6_LIMIT_PCT_HEALING_MODS: return 27; + case SPELL_ATTR6_UNK28: return 28; + case SPELL_ATTR6_LIMIT_PCT_DAMAGE_MODS: return 29; + case SPELL_ATTR6_UNK30: return 30; + case SPELL_ATTR6_IGNORE_CATEGORY_COOLDOWN_MODS: return 31; + default: throw std::out_of_range("value"); + } +} + /******************************************************************\ |* data for enum 'SpellAttr7' in 'SharedDefines.h' auto-generated *| \******************************************************************/ @@ -895,6 +1251,47 @@ TC_API_EXPORT SpellAttr7 EnumUtils<SpellAttr7>::FromIndex(size_t index) } } +template <> +TC_API_EXPORT size_t EnumUtils<SpellAttr7>::ToIndex(SpellAttr7 value) +{ + switch (value) + { + case SPELL_ATTR7_UNK0: return 0; + case SPELL_ATTR7_IGNORE_DURATION_MODS: return 1; + case SPELL_ATTR7_REACTIVATE_AT_RESURRECT: return 2; + case SPELL_ATTR7_IS_CHEAT_SPELL: return 3; + case SPELL_ATTR7_UNK4: return 4; + case SPELL_ATTR7_SUMMON_PLAYER_TOTEM: return 5; + case SPELL_ATTR7_NO_PUSHBACK_ON_DAMAGE: return 6; + case SPELL_ATTR7_UNK7: return 7; + case SPELL_ATTR7_HORDE_ONLY: return 8; + case SPELL_ATTR7_ALLIANCE_ONLY: return 9; + case SPELL_ATTR7_DISPEL_CHARGES: return 10; + case SPELL_ATTR7_INTERRUPT_ONLY_NONPLAYER: return 11; + case SPELL_ATTR7_UNK12: return 12; + case SPELL_ATTR7_UNK13: return 13; + case SPELL_ATTR7_UNK14: return 14; + case SPELL_ATTR7_UNK15: return 15; + case SPELL_ATTR7_CAN_RESTORE_SECONDARY_POWER: return 16; + case SPELL_ATTR7_UNK17: return 17; + case SPELL_ATTR7_HAS_CHARGE_EFFECT: return 18; + case SPELL_ATTR7_ZONE_TELEPORT: return 19; + case SPELL_ATTR7_UNK20: return 20; + case SPELL_ATTR7_UNK21: return 21; + case SPELL_ATTR7_IGNORE_COLD_WEATHER_FLYING: return 22; + case SPELL_ATTR7_UNK23: return 23; + case SPELL_ATTR7_UNK24: return 24; + case SPELL_ATTR7_UNK25: return 25; + case SPELL_ATTR7_UNK26: return 26; + case SPELL_ATTR7_UNK27: return 27; + case SPELL_ATTR7_CONSOLIDATED_RAID_BUFF: return 28; + case SPELL_ATTR7_UNK29: return 29; + case SPELL_ATTR7_UNK30: return 30; + case SPELL_ATTR7_CLIENT_INDICATOR: return 31; + default: throw std::out_of_range("value"); + } +} + /*****************************************************************\ |* data for enum 'Mechanics' in 'SharedDefines.h' auto-generated *| \*****************************************************************/ @@ -983,6 +1380,47 @@ TC_API_EXPORT Mechanics EnumUtils<Mechanics>::FromIndex(size_t index) } } +template <> +TC_API_EXPORT size_t EnumUtils<Mechanics>::ToIndex(Mechanics value) +{ + switch (value) + { + case MECHANIC_NONE: return 0; + case MECHANIC_CHARM: return 1; + case MECHANIC_DISORIENTED: return 2; + case MECHANIC_DISARM: return 3; + case MECHANIC_DISTRACT: return 4; + case MECHANIC_FEAR: return 5; + case MECHANIC_GRIP: return 6; + case MECHANIC_ROOT: return 7; + case MECHANIC_SLOW_ATTACK: return 8; + case MECHANIC_SILENCE: return 9; + case MECHANIC_SLEEP: return 10; + case MECHANIC_SNARE: return 11; + case MECHANIC_STUN: return 12; + case MECHANIC_FREEZE: return 13; + case MECHANIC_KNOCKOUT: return 14; + case MECHANIC_BLEED: return 15; + case MECHANIC_BANDAGE: return 16; + case MECHANIC_POLYMORPH: return 17; + case MECHANIC_BANISH: return 18; + case MECHANIC_SHIELD: return 19; + case MECHANIC_SHACKLE: return 20; + case MECHANIC_MOUNT: return 21; + case MECHANIC_INFECTED: return 22; + case MECHANIC_TURN: return 23; + case MECHANIC_HORROR: return 24; + case MECHANIC_INVULNERABILITY: return 25; + case MECHANIC_INTERRUPT: return 26; + case MECHANIC_DAZE: return 27; + case MECHANIC_DISCOVERY: return 28; + case MECHANIC_IMMUNE_SHIELD: return 29; + case MECHANIC_SAPPED: return 30; + case MECHANIC_ENRAGED: return 31; + default: throw std::out_of_range("value"); + } +} + /*********************************************************************\ |* data for enum 'SpellDmgClass' in 'SharedDefines.h' auto-generated *| \*********************************************************************/ @@ -1015,6 +1453,19 @@ TC_API_EXPORT SpellDmgClass EnumUtils<SpellDmgClass>::FromIndex(size_t index) } } +template <> +TC_API_EXPORT size_t EnumUtils<SpellDmgClass>::ToIndex(SpellDmgClass value) +{ + switch (value) + { + case SPELL_DAMAGE_CLASS_NONE: return 0; + case SPELL_DAMAGE_CLASS_MAGIC: return 1; + case SPELL_DAMAGE_CLASS_MELEE: return 2; + case SPELL_DAMAGE_CLASS_RANGED: return 3; + default: throw std::out_of_range("value"); + } +} + /***************************************************************************\ |* data for enum 'SpellPreventionType' in 'SharedDefines.h' auto-generated *| \***************************************************************************/ @@ -1045,6 +1496,18 @@ TC_API_EXPORT SpellPreventionType EnumUtils<SpellPreventionType>::FromIndex(size } } +template <> +TC_API_EXPORT size_t EnumUtils<SpellPreventionType>::ToIndex(SpellPreventionType value) +{ + switch (value) + { + case SPELL_PREVENTION_TYPE_NONE: return 0; + case SPELL_PREVENTION_TYPE_SILENCE: return 1; + case SPELL_PREVENTION_TYPE_PACIFY: return 2; + default: throw std::out_of_range("value"); + } +} + /*************************************************************\ |* data for enum 'Emote' in 'SharedDefines.h' auto-generated *| \*************************************************************/ @@ -1417,6 +1880,189 @@ TC_API_EXPORT Emote EnumUtils<Emote>::FromIndex(size_t index) } } +template <> +TC_API_EXPORT size_t EnumUtils<Emote>::ToIndex(Emote value) +{ + switch (value) + { + case EMOTE_ONESHOT_TALK: return 0; + case EMOTE_ONESHOT_BOW: return 1; + case EMOTE_ONESHOT_WAVE: return 2; + case EMOTE_ONESHOT_CHEER: return 3; + case EMOTE_ONESHOT_EXCLAMATION: return 4; + case EMOTE_ONESHOT_QUESTION: return 5; + case EMOTE_ONESHOT_EAT: return 6; + case EMOTE_STATE_DANCE: return 7; + case EMOTE_ONESHOT_LAUGH: return 8; + case EMOTE_STATE_SLEEP: return 9; + case EMOTE_STATE_SIT: return 10; + case EMOTE_ONESHOT_RUDE: return 11; + case EMOTE_ONESHOT_ROAR: return 12; + case EMOTE_ONESHOT_KNEEL: return 13; + case EMOTE_ONESHOT_KISS: return 14; + case EMOTE_ONESHOT_CRY: return 15; + case EMOTE_ONESHOT_CHICKEN: return 16; + case EMOTE_ONESHOT_BEG: return 17; + case EMOTE_ONESHOT_APPLAUD: return 18; + case EMOTE_ONESHOT_SHOUT: return 19; + case EMOTE_ONESHOT_FLEX: return 20; + case EMOTE_ONESHOT_SHY: return 21; + case EMOTE_ONESHOT_POINT: return 22; + case EMOTE_STATE_STAND: return 23; + case EMOTE_STATE_READY_UNARMED: return 24; + case EMOTE_STATE_WORK_SHEATHED: return 25; + case EMOTE_STATE_POINT: return 26; + case EMOTE_STATE_NONE: return 27; + case EMOTE_ONESHOT_WOUND: return 28; + case EMOTE_ONESHOT_WOUND_CRITICAL: return 29; + case EMOTE_ONESHOT_ATTACK_UNARMED: return 30; + case EMOTE_ONESHOT_ATTACK1H: return 31; + case EMOTE_ONESHOT_ATTACK2HTIGHT: return 32; + case EMOTE_ONESHOT_ATTACK2H_LOOSE: return 33; + case EMOTE_ONESHOT_PARRY_UNARMED: return 34; + case EMOTE_ONESHOT_PARRY_SHIELD: return 35; + case EMOTE_ONESHOT_READY_UNARMED: return 36; + case EMOTE_ONESHOT_READY1H: return 37; + case EMOTE_ONESHOT_READY_BOW: return 38; + case EMOTE_ONESHOT_SPELL_PRECAST: return 39; + case EMOTE_ONESHOT_SPELL_CAST: return 40; + case EMOTE_ONESHOT_BATTLE_ROAR: return 41; + case EMOTE_ONESHOT_SPECIALATTACK1H: return 42; + case EMOTE_ONESHOT_KICK: return 43; + case EMOTE_ONESHOT_ATTACK_THROWN: return 44; + case EMOTE_STATE_STUN: return 45; + case EMOTE_STATE_DEAD: return 46; + case EMOTE_ONESHOT_SALUTE: return 47; + case EMOTE_STATE_KNEEL: return 48; + case EMOTE_STATE_USE_STANDING: return 49; + case EMOTE_ONESHOT_WAVE_NO_SHEATHE: return 50; + case EMOTE_ONESHOT_CHEER_NO_SHEATHE: return 51; + case EMOTE_ONESHOT_EAT_NO_SHEATHE: return 52; + case EMOTE_STATE_STUN_NO_SHEATHE: return 53; + case EMOTE_ONESHOT_DANCE: return 54; + case EMOTE_ONESHOT_SALUTE_NO_SHEATH: return 55; + case EMOTE_STATE_USE_STANDING_NO_SHEATHE: return 56; + case EMOTE_ONESHOT_LAUGH_NO_SHEATHE: return 57; + case EMOTE_STATE_WORK: return 58; + case EMOTE_STATE_SPELL_PRECAST: return 59; + case EMOTE_ONESHOT_READY_RIFLE: return 60; + case EMOTE_STATE_READY_RIFLE: return 61; + case EMOTE_STATE_WORK_MINING: return 62; + case EMOTE_STATE_WORK_CHOPWOOD: return 63; + case EMOTE_STATE_APPLAUD: return 64; + case EMOTE_ONESHOT_LIFTOFF: return 65; + case EMOTE_ONESHOT_YES: return 66; + case EMOTE_ONESHOT_NO: return 67; + case EMOTE_ONESHOT_TRAIN: return 68; + case EMOTE_ONESHOT_LAND: return 69; + case EMOTE_STATE_AT_EASE: return 70; + case EMOTE_STATE_READY1H: return 71; + case EMOTE_STATE_SPELL_KNEEL_START: return 72; + case EMOTE_STATE_SUBMERGED: return 73; + case EMOTE_ONESHOT_SUBMERGE: return 74; + case EMOTE_STATE_READY2H: return 75; + case EMOTE_STATE_READY_BOW: return 76; + case EMOTE_ONESHOT_MOUNT_SPECIAL: return 77; + case EMOTE_STATE_TALK: return 78; + case EMOTE_STATE_FISHING: return 79; + case EMOTE_ONESHOT_FISHING: return 80; + case EMOTE_ONESHOT_LOOT: return 81; + case EMOTE_STATE_WHIRLWIND: return 82; + case EMOTE_STATE_DROWNED: return 83; + case EMOTE_STATE_HOLD_BOW: return 84; + case EMOTE_STATE_HOLD_RIFLE: return 85; + case EMOTE_STATE_HOLD_THROWN: return 86; + case EMOTE_ONESHOT_DROWN: return 87; + case EMOTE_ONESHOT_STOMP: return 88; + case EMOTE_ONESHOT_ATTACK_OFF: return 89; + case EMOTE_ONESHOT_ATTACK_OFF_PIERCE: return 90; + case EMOTE_STATE_ROAR: return 91; + case EMOTE_STATE_LAUGH: return 92; + case EMOTE_ONESHOT_CREATURE_SPECIAL: return 93; + case EMOTE_ONESHOT_JUMPLANDRUN: return 94; + case EMOTE_ONESHOT_JUMPEND: return 95; + case EMOTE_ONESHOT_TALK_NO_SHEATHE: return 96; + case EMOTE_ONESHOT_POINT_NO_SHEATHE: return 97; + case EMOTE_STATE_CANNIBALIZE: return 98; + case EMOTE_ONESHOT_JUMPSTART: return 99; + case EMOTE_STATE_DANCESPECIAL: return 100; + case EMOTE_ONESHOT_DANCESPECIAL: return 101; + case EMOTE_ONESHOT_CUSTOM_SPELL_01: return 102; + case EMOTE_ONESHOT_CUSTOM_SPELL_02: return 103; + case EMOTE_ONESHOT_CUSTOM_SPELL_03: return 104; + case EMOTE_ONESHOT_CUSTOM_SPELL_04: return 105; + case EMOTE_ONESHOT_CUSTOM_SPELL_05: return 106; + case EMOTE_ONESHOT_CUSTOM_SPELL_06: return 107; + case EMOTE_ONESHOT_CUSTOM_SPELL_07: return 108; + case EMOTE_ONESHOT_CUSTOM_SPELL_08: return 109; + case EMOTE_ONESHOT_CUSTOM_SPELL_09: return 110; + case EMOTE_ONESHOT_CUSTOM_SPELL_10: return 111; + case EMOTE_STATE_EXCLAIM: return 112; + case EMOTE_STATE_DANCE_CUSTOM: return 113; + case EMOTE_STATE_SIT_CHAIR_MED: return 114; + case EMOTE_STATE_CUSTOM_SPELL_01: return 115; + case EMOTE_STATE_CUSTOM_SPELL_02: return 116; + case EMOTE_STATE_EAT: return 117; + case EMOTE_STATE_CUSTOM_SPELL_04: return 118; + case EMOTE_STATE_CUSTOM_SPELL_03: return 119; + case EMOTE_STATE_CUSTOM_SPELL_05: return 120; + case EMOTE_STATE_SPELLEFFECT_HOLD: return 121; + case EMOTE_STATE_EAT_NO_SHEATHE: return 122; + case EMOTE_STATE_MOUNT: return 123; + case EMOTE_STATE_READY2HL: return 124; + case EMOTE_STATE_SIT_CHAIR_HIGH: return 125; + case EMOTE_STATE_FALL: return 126; + case EMOTE_STATE_LOOT: return 127; + case EMOTE_STATE_SUBMERGED_NEW: return 128; + case EMOTE_ONESHOT_COWER: return 129; + case EMOTE_STATE_COWER: return 130; + case EMOTE_ONESHOT_USE_STANDING: return 131; + case EMOTE_STATE_STEALTH_STAND: return 132; + case EMOTE_ONESHOT_OMNICAST_GHOUL: return 133; + case EMOTE_ONESHOT_ATTACK_BOW: return 134; + case EMOTE_ONESHOT_ATTACK_RIFLE: return 135; + case EMOTE_STATE_SWIM_IDLE: return 136; + case EMOTE_STATE_ATTACK_UNARMED: return 137; + case EMOTE_ONESHOT_SPELL_CAST_W_SOUND: return 138; + case EMOTE_ONESHOT_DODGE: return 139; + case EMOTE_ONESHOT_PARRY1H: return 140; + case EMOTE_ONESHOT_PARRY2H: return 141; + case EMOTE_ONESHOT_PARRY2HL: return 142; + case EMOTE_STATE_FLYFALL: return 143; + case EMOTE_ONESHOT_FLYDEATH: return 144; + case EMOTE_STATE_FLY_FALL: return 145; + case EMOTE_ONESHOT_FLY_SIT_GROUND_DOWN: return 146; + case EMOTE_ONESHOT_FLY_SIT_GROUND_UP: return 147; + case EMOTE_ONESHOT_EMERGE: return 148; + case EMOTE_ONESHOT_DRAGON_SPIT: return 149; + case EMOTE_STATE_SPECIAL_UNARMED: return 150; + case EMOTE_ONESHOT_FLYGRAB: return 151; + case EMOTE_STATE_FLYGRABCLOSED: return 152; + case EMOTE_ONESHOT_FLYGRABTHROWN: return 153; + case EMOTE_STATE_FLY_SIT_GROUND: return 154; + case EMOTE_STATE_WALK_BACKWARDS: return 155; + case EMOTE_ONESHOT_FLYTALK: return 156; + case EMOTE_ONESHOT_FLYATTACK1H: return 157; + case EMOTE_STATE_CUSTOM_SPELL_08: return 158; + case EMOTE_ONESHOT_FLY_DRAGON_SPIT: return 159; + case EMOTE_STATE_SIT_CHAIR_LOW: return 160; + case EMOTE_ONESHOT_STUN: return 161; + case EMOTE_ONESHOT_SPELL_CAST_OMNI: return 162; + case EMOTE_STATE_READY_THROWN: return 163; + case EMOTE_ONESHOT_WORK_CHOPWOOD: return 164; + case EMOTE_ONESHOT_WORK_MINING: return 165; + case EMOTE_STATE_SPELL_CHANNEL_OMNI: return 166; + case EMOTE_STATE_SPELL_CHANNEL_DIRECTED: return 167; + case EMOTE_STAND_STATE_NONE: return 168; + case EMOTE_STATE_READYJOUST: return 169; + case EMOTE_STATE_STRANGULATE: return 170; + case EMOTE_STATE_READY_SPELL_OMNI: return 171; + case EMOTE_STATE_HOLD_JOUST: return 172; + case EMOTE_ONESHOT_CRY_JAINA: return 173; + default: throw std::out_of_range("value"); + } +} + /************************************************************************\ |* data for enum 'SpellFamilyNames' in 'SharedDefines.h' auto-generated *| \************************************************************************/ @@ -1470,5 +2116,28 @@ TC_API_EXPORT SpellFamilyNames EnumUtils<SpellFamilyNames>::FromIndex(size_t ind default: throw std::out_of_range("index"); } } + +template <> +TC_API_EXPORT size_t EnumUtils<SpellFamilyNames>::ToIndex(SpellFamilyNames value) +{ + switch (value) + { + case SPELLFAMILY_GENERIC: return 0; + case SPELLFAMILY_UNK1: return 1; + case SPELLFAMILY_MAGE: return 2; + case SPELLFAMILY_WARRIOR: return 3; + case SPELLFAMILY_WARLOCK: return 4; + case SPELLFAMILY_PRIEST: return 5; + case SPELLFAMILY_DRUID: return 6; + case SPELLFAMILY_ROGUE: return 7; + case SPELLFAMILY_HUNTER: return 8; + case SPELLFAMILY_PALADIN: return 9; + case SPELLFAMILY_SHAMAN: return 10; + case SPELLFAMILY_UNK2: return 11; + case SPELLFAMILY_POTION: return 12; + case SPELLFAMILY_DEATHKNIGHT: return 13; + case SPELLFAMILY_PET: return 14; + default: throw std::out_of_range("value"); + } } } |