mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-28 08:06:23 +00:00
feat(Core/AI): convert SelectAggroTarget to enum class (#9893)
This commit is contained in:
@@ -263,12 +263,12 @@ public:
|
||||
events.ScheduleEvent(EVENT_SPELL_MELT_ARMOR, 60000);
|
||||
break;
|
||||
case EVENT_SPELL_CHARGE:
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 50.0f, true))
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 50.0f, true))
|
||||
me->CastSpell(target, SPELL_CHARGE, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_CHARGE, 30000);
|
||||
break;
|
||||
case EVENT_SPELL_FLAME_PATCH:
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 50.0f, true))
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 50.0f, true))
|
||||
me->SummonCreature(NPC_FLAME_PATCH, *target, TEMPSUMMON_TIMED_DESPAWN, 2 * MINUTE * IN_MILLISECONDS);
|
||||
events.ScheduleEvent(EVENT_SPELL_FLAME_PATCH, 30000);
|
||||
break;
|
||||
@@ -285,7 +285,7 @@ public:
|
||||
events.ScheduleEvent(EVENT_SUMMON_DIVE_PHOENIX, 2000);
|
||||
events.ScheduleEvent(EVENT_REBIRTH_DIVE, 6000);
|
||||
events.ScheduleEvent(EVENT_FINISH_DIVE, 10000);
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 90.0f, true))
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 90.0f, true))
|
||||
{
|
||||
me->CastSpell(target, SPELL_DIVE_BOMB, false);
|
||||
me->SetPosition(*target);
|
||||
@@ -296,7 +296,7 @@ public:
|
||||
break;
|
||||
case EVENT_SUMMON_DIVE_PHOENIX:
|
||||
{
|
||||
Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 10.0f, true);
|
||||
Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 10.0f, true);
|
||||
me->SummonCreature(NPC_EMBER_OF_ALAR, target ? *target : *me, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 6000);
|
||||
me->SummonCreature(NPC_EMBER_OF_ALAR, target ? *target : *me, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 6000);
|
||||
break;
|
||||
|
||||
@@ -146,12 +146,12 @@ public:
|
||||
events.ScheduleEvent(EVENT_CHECK_HEALTH, 1000);
|
||||
break;
|
||||
case EVENT_SPELL_ARCANE_MISSILES:
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 40.0f, true))
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 40.0f, true))
|
||||
me->CastSpell(target, SPELL_ARCANE_MISSILES, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_ARCANE_MISSILES, 3000);
|
||||
break;
|
||||
case EVENT_SPELL_WRATH_OF_ASTROMANCER:
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 100.0f, true))
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 100.0f, true))
|
||||
me->CastSpell(target, SPELL_WRATH_OF_THE_ASTROMANCER, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_WRATH_OF_ASTROMANCER, 22000);
|
||||
break;
|
||||
|
||||
@@ -390,7 +390,7 @@ public:
|
||||
{
|
||||
advisor->SetReactState(REACT_AGGRESSIVE);
|
||||
advisor->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
|
||||
advisor->AI()->AttackStart(target);
|
||||
advisor->SetInCombatWithZone();
|
||||
advisor->AI()->Talk(SAY_THALADRED_AGGRO);
|
||||
@@ -404,7 +404,7 @@ public:
|
||||
{
|
||||
advisor->SetReactState(REACT_AGGRESSIVE);
|
||||
advisor->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
|
||||
advisor->AI()->AttackStart(target);
|
||||
advisor->SetInCombatWithZone();
|
||||
advisor->AI()->Talk(SAY_SANGUINAR_AGGRO);
|
||||
@@ -418,7 +418,7 @@ public:
|
||||
{
|
||||
advisor->SetReactState(REACT_AGGRESSIVE);
|
||||
advisor->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
|
||||
advisor->AI()->AttackStart(target);
|
||||
advisor->SetInCombatWithZone();
|
||||
advisor->AI()->Talk(SAY_CAPERNIAN_AGGRO);
|
||||
@@ -432,7 +432,7 @@ public:
|
||||
{
|
||||
advisor->SetReactState(REACT_AGGRESSIVE);
|
||||
advisor->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
|
||||
advisor->AI()->AttackStart(target);
|
||||
advisor->SetInCombatWithZone();
|
||||
advisor->AI()->Talk(SAY_TELONICUS_AGGRO);
|
||||
@@ -451,7 +451,7 @@ public:
|
||||
{
|
||||
summon->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE | UNIT_FLAG_NON_ATTACKABLE);
|
||||
summon->SetInCombatWithZone();
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
|
||||
summon->AI()->AttackStart(target);
|
||||
}
|
||||
}
|
||||
@@ -474,7 +474,7 @@ public:
|
||||
summon->SetReactState(REACT_AGGRESSIVE);
|
||||
summon->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
summon->SetInCombatWithZone();
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
|
||||
summon->AI()->AttackStart(target);
|
||||
}
|
||||
events2.ScheduleEvent(EVENT_PREFIGHT_PHASE71, 3 * MINUTE * IN_MILLISECONDS);
|
||||
@@ -485,7 +485,7 @@ public:
|
||||
phase = PHASE_FINAL;
|
||||
DoResetThreat();
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_DISABLE_MOVE);
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
|
||||
AttackStart(target);
|
||||
|
||||
events2.Reset();
|
||||
@@ -648,7 +648,7 @@ public:
|
||||
me->CastSpell(me->GetVictim(), SPELL_PYROBLAST, false);
|
||||
break;
|
||||
case EVENT_SPELL_FLAMESTRIKE:
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 100.0f, true))
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 100.0f, true))
|
||||
me->CastSpell(target, SPELL_FLAME_STRIKE, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_FLAMESTRIKE, 20000);
|
||||
break;
|
||||
|
||||
@@ -102,9 +102,9 @@ public:
|
||||
events.ScheduleEvent(EVENT_SPELL_POUNDING, 15000);
|
||||
break;
|
||||
case EVENT_SPELL_ARCANEORB:
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, -18.0f, true))
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, -18.0f, true))
|
||||
me->CastSpell(target, SPELL_ARCANE_ORB, false);
|
||||
else if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 20.0f, true))
|
||||
else if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 20.0f, true))
|
||||
me->CastSpell(target, SPELL_ARCANE_ORB, false);
|
||||
events.ScheduleEvent(EVENT_SPELL_ARCANEORB, 4000);
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user