Core/Misc: Move TalentSpecialization together with other db2 enums and rename it to ChrSpecialization

This commit is contained in:
Nyr
2023-06-30 13:39:38 +02:00
committed by Shauren
parent 054723241e
commit d2784d4c65
8 changed files with 66 additions and 64 deletions

View File

@@ -299,6 +299,48 @@ enum class ChrSpecializationRole : int8
Dps = 2
};
enum ChrSpecialization : uint32
{
MageArcane = 62,
MageFire = 63,
MageFrost = 64,
PaladinHoly = 65,
PaladinProtection = 66,
PaladinRetribution = 70,
WarriorArms = 71,
WarriorFury = 72,
WarriorProtection = 73,
DruidBalance = 102,
DruidFeral = 103,
DruidGuardian = 104,
DruidRestoration = 105,
DeathKnightBlood = 250,
DeathKnightFrost = 251,
DeathKnightUnholy = 252,
HunterBeastMastery = 253,
HunterMarksmanship = 254,
HunterSurvival = 255,
PriestDiscipline = 256,
PriestHoly = 257,
PriestShadow = 258,
RogueAssassination = 259,
RogueOutlaw = 260,
RogueSubtely = 261,
ShamanElemental = 262,
ShamanEnhancement = 263,
ShamanRestoration = 264,
WarlockAffliction = 265,
WarlockDemonology = 266,
WarlockDestruction = 267,
MonkBrewmaster = 268,
MonkWindwalker = 269,
MonkMistweaver = 270,
DemonHunterHavoc = 577,
DemonHunterVengeance = 581,
EvokerDevastation = 1467,
EvokerPreservation = 1468
};
enum class ContentTuningCalcType : int32
{
Base = 0,

View File

@@ -205,46 +205,6 @@ struct StoredAuraTeleportLocation
} State;
};
enum TalentSpecialization // talent tabs
{
TALENT_SPEC_MAGE_ARCANE = 62,
TALENT_SPEC_MAGE_FIRE = 63,
TALENT_SPEC_MAGE_FROST = 64,
TALENT_SPEC_PALADIN_HOLY = 65,
TALENT_SPEC_PALADIN_PROTECTION = 66,
TALENT_SPEC_PALADIN_RETRIBUTION = 70,
TALENT_SPEC_WARRIOR_ARMS = 71,
TALENT_SPEC_WARRIOR_FURY = 72,
TALENT_SPEC_WARRIOR_PROTECTION = 73,
TALENT_SPEC_DRUID_BALANCE = 102,
TALENT_SPEC_DRUID_CAT = 103,
TALENT_SPEC_DRUID_BEAR = 104,
TALENT_SPEC_DRUID_RESTORATION = 105,
TALENT_SPEC_DEATHKNIGHT_BLOOD = 250,
TALENT_SPEC_DEATHKNIGHT_FROST = 251,
TALENT_SPEC_DEATHKNIGHT_UNHOLY = 252,
TALENT_SPEC_HUNTER_BEASTMASTER = 253,
TALENT_SPEC_HUNTER_MARKSMAN = 254,
TALENT_SPEC_HUNTER_SURVIVAL = 255,
TALENT_SPEC_PRIEST_DISCIPLINE = 256,
TALENT_SPEC_PRIEST_HOLY = 257,
TALENT_SPEC_PRIEST_SHADOW = 258,
TALENT_SPEC_ROGUE_ASSASSINATION = 259,
TALENT_SPEC_ROGUE_COMBAT = 260,
TALENT_SPEC_ROGUE_SUBTLETY = 261,
TALENT_SPEC_SHAMAN_ELEMENTAL = 262,
TALENT_SPEC_SHAMAN_ENHANCEMENT = 263,
TALENT_SPEC_SHAMAN_RESTORATION = 264,
TALENT_SPEC_WARLOCK_AFFLICTION = 265,
TALENT_SPEC_WARLOCK_DEMONOLOGY = 266,
TALENT_SPEC_WARLOCK_DESTRUCTION = 267,
TALENT_SPEC_MONK_BREWMASTER = 268,
TALENT_SPEC_MONK_BATTLEDANCER = 269,
TALENT_SPEC_MONK_MISTWEAVER = 270,
TALENT_SPEC_DEMON_HUNTER_HAVOC = 577,
TALENT_SPEC_DEMON_HUNTER_VENGEANCE = 581
};
enum SpecResetType
{
SPEC_RESET_TALENTS = 0,

View File

@@ -443,7 +443,7 @@ struct npc_twisted_visage : public ScriptedAI
case CLASS_WARRIOR:
switch (data)
{
case TALENT_SPEC_WARRIOR_ARMS:
case ChrSpecialization::WarriorArms:
_scheduler.Schedule(3s, [this](TaskContext mortalStrike)
{
DoCastVictim(SPELL_TWISTED_VISAGE_MORTAL_STRIKE);
@@ -455,7 +455,7 @@ struct npc_twisted_visage : public ScriptedAI
});
break;
default:
case TALENT_SPEC_WARRIOR_FURY:
case ChrSpecialization::WarriorFury:
_scheduler.Schedule(2s, [this](TaskContext intercept)
{
if (!me->IsWithinCombatRange(me->GetVictim(), 8.0f))
@@ -471,7 +471,7 @@ struct npc_twisted_visage : public ScriptedAI
bloodthirst.Repeat(3s, 5s);
});
break;
case TALENT_SPEC_WARRIOR_PROTECTION:
case ChrSpecialization::WarriorProtection:
_scheduler.Schedule(5s, [this](TaskContext thunderClap)
{
DoCastSelf(SPELL_TWISTED_VISAGE_THUNDER_CLAP);
@@ -487,7 +487,7 @@ struct npc_twisted_visage : public ScriptedAI
case CLASS_PALADIN:
switch (data)
{
case TALENT_SPEC_PALADIN_PROTECTION:
case ChrSpecialization::PaladinProtection:
_scheduler.Schedule(5s, [this](TaskContext consecration)
{
DoCastSelf(SPELL_TWISTED_VISAGE_CONSECRATION);
@@ -499,7 +499,7 @@ struct npc_twisted_visage : public ScriptedAI
});
break;
default:
case TALENT_SPEC_PALADIN_RETRIBUTION:
case ChrSpecialization::PaladinRetribution:
_scheduler.Schedule(5s, [this](TaskContext consecration)
{
DoCastSelf(SPELL_TWISTED_VISAGE_CONSECRATION);
@@ -546,7 +546,7 @@ struct npc_twisted_visage : public ScriptedAI
case CLASS_PRIEST:
switch (data)
{
case TALENT_SPEC_PRIEST_SHADOW:
case ChrSpecialization::PriestShadow:
_scheduler.Schedule(5s, [this](TaskContext shadowWordPain)
{
DoCastVictim(SPELL_TWISTED_VISAGE_SHADOW_WORD_PAIN);
@@ -600,7 +600,7 @@ struct npc_twisted_visage : public ScriptedAI
switch (data)
{
default:
case TALENT_SPEC_SHAMAN_ELEMENTAL:
case ChrSpecialization::ShamanElemental:
_scheduler.Schedule(5s, [this](TaskContext thunderstorm)
{
DoCastSelf(SPELL_TWISTED_VISAGE_THUNDERSTORM);
@@ -611,14 +611,14 @@ struct npc_twisted_visage : public ScriptedAI
lightningBolt.Repeat(3s, 5s);
});
break;
case TALENT_SPEC_SHAMAN_ENHANCEMENT:
case ChrSpecialization::ShamanEnhancement:
_scheduler.Schedule(2s, [this](TaskContext earthShock)
{
DoCastVictim(SPELL_TWISTED_VISAGE_EARTH_SHOCK);
earthShock.Repeat(3s, 5s);
});
break;
case TALENT_SPEC_SHAMAN_RESTORATION:
case ChrSpecialization::ShamanRestoration:
_scheduler.Schedule(2s, [this](TaskContext earthShield)
{
if (Unit* target = DoSelectLowestHpFriendly(40.f))
@@ -666,7 +666,7 @@ struct npc_twisted_visage : public ScriptedAI
case CLASS_DRUID:
switch (data)
{
case TALENT_SPEC_DRUID_BALANCE:
case ChrSpecialization::DruidBalance:
_scheduler.Schedule(2s, [this](TaskContext moonfire)
{
DoCastVictim(SPELL_TWISTED_VISAGE_MOONFIRE);
@@ -677,8 +677,8 @@ struct npc_twisted_visage : public ScriptedAI
wrath.Repeat(3s, 5s);
});
break;
case TALENT_SPEC_DRUID_BEAR:
case TALENT_SPEC_DRUID_CAT:
case ChrSpecialization::DruidGuardian:
case ChrSpecialization::DruidFeral:
_scheduler.Schedule(1ms, [this](TaskContext /*catForm*/)
{
DoCastSelf(SPELL_TWISTED_VISAGE_CAT_FORM);
@@ -693,7 +693,7 @@ struct npc_twisted_visage : public ScriptedAI
});
break;
default:
case TALENT_SPEC_DRUID_RESTORATION:
case ChrSpecialization::DruidRestoration:
_scheduler.Schedule(2s, [this](TaskContext lifebloom)
{
if (Unit* target = DoSelectLowestHpFriendly(40.f))

View File

@@ -454,7 +454,7 @@ class spell_hun_multi_shot : public SpellScript
void HandleOnHit()
{
// We need to check hunter's spec because it doesn't generate focus on other specs than MM
if (GetCaster()->ToPlayer()->GetPrimarySpecialization() == TALENT_SPEC_HUNTER_MARKSMAN)
if (GetCaster()->ToPlayer()->GetPrimarySpecialization() == ChrSpecialization::HunterMarksmanship)
GetCaster()->CastSpell(GetCaster(), SPELL_HUNTER_MULTI_SHOT_FOCUS, true);
}

View File

@@ -4342,7 +4342,7 @@ class spell_item_amalgams_seventh_spine : public AuraScript
if (!target)
return;
auto updateAuraIfInCorrectSpec = [&](TalentSpecialization spec, AmalgamsSeventhSpine aura)
auto updateAuraIfInCorrectSpec = [&](ChrSpecialization spec, AmalgamsSeventhSpine aura)
{
if (target->GetPrimarySpecialization() != uint32(spec))
target->RemoveAurasDueToSpell(aura);
@@ -4353,20 +4353,20 @@ class spell_item_amalgams_seventh_spine : public AuraScript
switch (target->GetClass())
{
case CLASS_MONK:
updateAuraIfInCorrectSpec(TALENT_SPEC_MONK_MISTWEAVER, SPELL_FRAGILE_ECHOES_MONK);
updateAuraIfInCorrectSpec(ChrSpecialization::MonkMistweaver, SPELL_FRAGILE_ECHOES_MONK);
break;
case CLASS_SHAMAN:
updateAuraIfInCorrectSpec(TALENT_SPEC_SHAMAN_RESTORATION, SPELL_FRAGILE_ECHOES_SHAMAN);
updateAuraIfInCorrectSpec(ChrSpecialization::ShamanRestoration, SPELL_FRAGILE_ECHOES_SHAMAN);
break;
case CLASS_PRIEST:
updateAuraIfInCorrectSpec(TALENT_SPEC_PRIEST_DISCIPLINE, SPELL_FRAGILE_ECHOES_PRIEST_DISCIPLINE);
updateAuraIfInCorrectSpec(TALENT_SPEC_PRIEST_HOLY, SPELL_FRAGILE_ECHOES_PRIEST_HOLY);
updateAuraIfInCorrectSpec(ChrSpecialization::PriestDiscipline, SPELL_FRAGILE_ECHOES_PRIEST_DISCIPLINE);
updateAuraIfInCorrectSpec(ChrSpecialization::PriestHoly, SPELL_FRAGILE_ECHOES_PRIEST_HOLY);
break;
case CLASS_PALADIN:
updateAuraIfInCorrectSpec(TALENT_SPEC_PALADIN_HOLY, SPELL_FRAGILE_ECHOES_PALADIN);
updateAuraIfInCorrectSpec(ChrSpecialization::PaladinHoly, SPELL_FRAGILE_ECHOES_PALADIN);
break;
case CLASS_DRUID:
updateAuraIfInCorrectSpec(TALENT_SPEC_DRUID_RESTORATION, SPELL_FRAGILE_ECHOES_DRUID);
updateAuraIfInCorrectSpec(ChrSpecialization::DruidRestoration, SPELL_FRAGILE_ECHOES_DRUID);
break;
default:
break;

View File

@@ -429,7 +429,7 @@ struct areatrigger_pal_consecration : AreaTriggerAI
if (Unit* caster = at->GetCaster())
{
// 243597 is also being cast as protection, but CreateObject is not sent, either serverside areatrigger for this aura or unused - also no visual is seen
if (unit == caster && caster->IsPlayer() && caster->ToPlayer()->GetPrimarySpecialization() == TALENT_SPEC_PALADIN_PROTECTION)
if (unit == caster && caster->IsPlayer() && caster->ToPlayer()->GetPrimarySpecialization() == ChrSpecialization::PaladinProtection)
caster->CastSpell(caster, SPELL_PALADIN_CONSECRATION_PROTECTION_AURA);
if (caster->IsValidAttackTarget(unit))

View File

@@ -773,7 +773,7 @@ class spell_sha_flametongue_weapon : public SpellScript
{
Player* player = GetCaster()->ToPlayer();
uint8 slot = EQUIPMENT_SLOT_MAINHAND;
if (player->GetPrimarySpecialization() == TALENT_SPEC_SHAMAN_ENHANCEMENT)
if (player->GetPrimarySpecialization() == ChrSpecialization::ShamanEnhancement)
slot = EQUIPMENT_SLOT_OFFHAND;
Item* targetItem = player->GetItemByPos(INVENTORY_SLOT_BAG_0, slot);

View File

@@ -752,7 +752,7 @@ class spell_warr_victorious_state : public AuraScript
void HandleOnProc(AuraEffect* /*aurEff*/, ProcEventInfo& procInfo)
{
if (procInfo.GetActor()->GetTypeId() == TYPEID_PLAYER && procInfo.GetActor()->ToPlayer()->GetPrimarySpecialization() == TALENT_SPEC_WARRIOR_FURY)
if (procInfo.GetActor()->GetTypeId() == TYPEID_PLAYER && procInfo.GetActor()->ToPlayer()->GetPrimarySpecialization() == ChrSpecialization::WarriorFury)
PreventDefaultAction();
procInfo.GetActor()->GetSpellHistory()->ResetCooldown(SPELL_WARRIOR_IMPENDING_VICTORY, true);