mirror of
https://github.com/mod-playerbots/mod-playerbots
synced 2025-11-29 15:58:20 +08:00
Dungeon botAI bugfixes
- Utgarde Keep (Keleseth): Bots continue combat correctly after killing a frost tomb - Utgarde Keep (Dalronn & Skarvald): Bots continue combat correctly after killing Dalronn - Utgarde Keep (Ingvar): Tank correctly avoids Dark Smash in second phase - Oculus (Drake combat): Bots more consistently attack the drakes in the air when flying around - Halls of Lightning (Bjarngrim): Bots no longer acquire priority targets until in combat
This commit is contained in:
@@ -17,11 +17,12 @@ bool KelesethFrostTombTrigger::IsActive()
|
||||
return false;
|
||||
}
|
||||
|
||||
bool DalronnNontankTrigger::IsActive()
|
||||
bool DalronnDpsTrigger::IsActive()
|
||||
{
|
||||
Unit* boss = AI_VALUE2(Unit*, "find target", "dalronn the controller");
|
||||
if (!boss) { return false; }
|
||||
|
||||
if (!boss || !boss->isTargetableForAttack()) { return false; }
|
||||
|
||||
// This doesn't cause issues with healers currently and they will continue to heal even when included here
|
||||
return !botAI->IsTank(bot);
|
||||
}
|
||||
|
||||
@@ -30,12 +31,9 @@ bool IngvarStaggeringRoarTrigger::IsActive()
|
||||
Unit* boss = AI_VALUE2(Unit*, "find target", "ingvar the plunderer");
|
||||
if (!boss) { return false; }
|
||||
|
||||
if (boss->HasUnitState(UNIT_STATE_CASTING))
|
||||
if (boss->FindCurrentSpellBySpellId(SPELL_STAGGERING_ROAR))
|
||||
{
|
||||
if (boss->FindCurrentSpellBySpellId(SPELL_STAGGERING_ROAR))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -45,8 +43,7 @@ bool IngvarDreadfulRoarTrigger::IsActive()
|
||||
Unit* boss = AI_VALUE2(Unit*, "find target", "ingvar the plunderer");
|
||||
if (!boss) { return false; }
|
||||
|
||||
if (boss->HasUnitState(UNIT_STATE_CASTING) &&
|
||||
boss->FindCurrentSpellBySpellId(SPELL_DREADFUL_ROAR))
|
||||
if (boss->FindCurrentSpellBySpellId(SPELL_DREADFUL_ROAR))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
@@ -58,14 +55,11 @@ bool IngvarSmashTankTrigger::IsActive()
|
||||
Unit* boss = AI_VALUE2(Unit*, "find target", "ingvar the plunderer");
|
||||
if (!boss || !botAI->IsTank(bot)) { return false; }
|
||||
|
||||
if (boss->HasUnitState(UNIT_STATE_CASTING))
|
||||
{
|
||||
if (boss->FindCurrentSpellBySpellId(SPELL_SMASH) ||
|
||||
boss->FindCurrentSpellBySpellId(SPELL_DARK_SMASH))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
if (boss->FindCurrentSpellBySpellId(SPELL_SMASH) ||
|
||||
boss->FindCurrentSpellBySpellId(SPELL_DARK_SMASH))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user