Core/Auras: Update AuraState enum and implement missing new ones

This commit is contained in:
Shauren
2021-03-16 20:48:42 +01:00
parent 566f9f368d
commit 69e0b9a985
10 changed files with 107 additions and 112 deletions

View File

@@ -534,8 +534,10 @@ public:
me->SetHealth(0);
me->StopMoving();
me->RemoveAllAurasOnDeath();
me->ModifyAuraState(AURA_STATE_HEALTHLESS_20_PERCENT, false);
me->ModifyAuraState(AURA_STATE_HEALTHLESS_35_PERCENT, false);
me->ModifyAuraState(AURA_STATE_WOUNDED_20_PERCENT, false);
me->ModifyAuraState(AURA_STATE_WOUNDED_25_PERCENT, false);
me->ModifyAuraState(AURA_STATE_WOUNDED_35_PERCENT, false);
me->ModifyAuraState(AURA_STATE_WOUND_HEALTH_20_80, false);
me->AddUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
me->ClearAllReactives();
me->SetTarget(ObjectGuid::Empty);

View File

@@ -367,7 +367,7 @@ class boss_fjola : public CreatureScript
{
SetEquipmentSlots(false, EQUIP_MAIN_1, EQUIP_UNEQUIP, EQUIP_NO_CHANGE);
Weapon = EQUIP_MAIN_1;
AuraState = AURA_STATE_UNKNOWN22;
AuraState = AURA_STATE_RAID_ENCOUNTER;
SisterNpcId = NPC_EYDIS_DARKBANE;
MyEmphatySpellId = SPELL_TWIN_EMPATHY_DARK;
OtherEssenceSpellId = SPELL_DARK_ESSENCE;
@@ -475,7 +475,7 @@ class boss_eydis : public CreatureScript
{
SetEquipmentSlots(false, EQUIP_MAIN_2, EQUIP_UNEQUIP, EQUIP_NO_CHANGE);
Weapon = EQUIP_MAIN_2;
AuraState = AURA_STATE_UNKNOWN19;
AuraState = AURA_STATE_VULNERABLE;
SisterNpcId = NPC_FJOLA_LIGHTBANE;
MyEmphatySpellId = SPELL_TWIN_EMPATHY_LIGHT;
OtherEssenceSpellId = SPELL_LIGHT_ESSENCE;

View File

@@ -322,12 +322,12 @@ class boss_professor_putricide : public CreatureScript
break;
case NPC_GAS_CLOUD:
// no possible aura seen in sniff adding the aurastate
summon->ModifyAuraState(AURA_STATE_UNKNOWN22, true);
summon->ModifyAuraState(AURA_STATE_RAID_ENCOUNTER, true);
summon->SetReactState(REACT_PASSIVE);
break;
case NPC_VOLATILE_OOZE:
// no possible aura seen in sniff adding the aurastate
summon->ModifyAuraState(AURA_STATE_UNKNOWN19, true);
summon->ModifyAuraState(AURA_STATE_VULNERABLE, true);
summon->SetReactState(REACT_PASSIVE);
break;
case NPC_CHOKING_GAS_BOMB:

View File

@@ -379,8 +379,10 @@ struct advisorbase_ai : public ScriptedAI
me->InterruptNonMeleeSpells(false);
me->SetHealth(0);
me->RemoveAllAurasOnDeath();
me->ModifyAuraState(AURA_STATE_HEALTHLESS_20_PERCENT, false);
me->ModifyAuraState(AURA_STATE_HEALTHLESS_35_PERCENT, false);
me->ModifyAuraState(AURA_STATE_WOUNDED_20_PERCENT, false);
me->ModifyAuraState(AURA_STATE_WOUNDED_25_PERCENT, false);
me->ModifyAuraState(AURA_STATE_WOUNDED_35_PERCENT, false);
me->ModifyAuraState(AURA_STATE_WOUND_HEALTH_20_80, false);
me->AddUnitFlag(UnitFlags(UNIT_FLAG_NOT_SELECTABLE | UNIT_FLAG_STUNNED));
me->SetTarget(ObjectGuid::Empty);
me->SetStandState(UNIT_STAND_STATE_DEAD);

View File

@@ -682,7 +682,7 @@ class spell_warr_sweeping_strikes : public SpellScriptLoader
if (DamageInfo* damageInfo = eventInfo.GetDamageInfo())
{
SpellInfo const* spellInfo = damageInfo->GetSpellInfo();
if (spellInfo && (spellInfo->Id == SPELL_WARRIOR_BLADESTORM_PERIODIC_WHIRLWIND || (spellInfo->Id == SPELL_WARRIOR_EXECUTE && !_procTarget->HasAuraState(AURA_STATE_HEALTHLESS_20_PERCENT))))
if (spellInfo && (spellInfo->Id == SPELL_WARRIOR_BLADESTORM_PERIODIC_WHIRLWIND || (spellInfo->Id == SPELL_WARRIOR_EXECUTE && !_procTarget->HasAuraState(AURA_STATE_WOUNDED_20_PERCENT))))
{
// If triggered by Execute (while target is not under 20% hp) or Bladestorm deals normalized weapon damage
GetTarget()->CastSpell(_procTarget, SPELL_WARRIOR_SWEEPING_STRIKES_EXTRA_ATTACK_2, true, nullptr, aurEff);