fix(Scripts/BWL): Chromaggus Affliction debuff should target… (#11161)

… max 12 players.
This commit is contained in:
UltraNix
2022-04-02 15:59:52 +02:00
committed by GitHub
parent ce0e008ffc
commit 36e884dca8
@@ -248,21 +248,32 @@ public:
case EVENT_AFFLICTION: case EVENT_AFFLICTION:
{ {
uint32 afflictionSpellID = RAND(SPELL_BROODAF_BLUE, SPELL_BROODAF_BLACK, SPELL_BROODAF_RED, SPELL_BROODAF_BRONZE, SPELL_BROODAF_GREEN); uint32 afflictionSpellID = RAND(SPELL_BROODAF_BLUE, SPELL_BROODAF_BLACK, SPELL_BROODAF_RED, SPELL_BROODAF_BRONZE, SPELL_BROODAF_GREEN);
std::vector<Player*> playerTargets;
Map::PlayerList const& players = me->GetMap()->GetPlayers(); Map::PlayerList const& players = me->GetMap()->GetPlayers();
for (Map::PlayerList::const_iterator itr = players.begin(); itr != players.end(); ++itr) for (Map::PlayerList::const_iterator itr = players.begin(); itr != players.end(); ++itr)
{ {
if (Player* player = itr->GetSource()->ToPlayer()) if (Player* player = itr->GetSource()->ToPlayer())
{ {
DoCast(player, afflictionSpellID, true); if (!player->IsGameMaster() && !player->IsSpectator() && player->IsAlive())
{
playerTargets.push_back(player);
}
}
}
if (player->HasAura(SPELL_BROODAF_BLUE) && if (playerTargets.size() > 12)
player->HasAura(SPELL_BROODAF_BLACK) && {
player->HasAura(SPELL_BROODAF_RED) && Acore::Containers::RandomResize(playerTargets, 12);
player->HasAura(SPELL_BROODAF_BRONZE) && }
player->HasAura(SPELL_BROODAF_GREEN))
{ for (Player* player : playerTargets)
DoCast(player, SPELL_CHROMATIC_MUT_1); {
} DoCast(player, afflictionSpellID, true);
if (player->HasAura(SPELL_BROODAF_BLUE) && player->HasAura(SPELL_BROODAF_BLACK) && player->HasAura(SPELL_BROODAF_RED) &&
player->HasAura(SPELL_BROODAF_BRONZE) && player->HasAura(SPELL_BROODAF_GREEN))
{
DoCast(player, SPELL_CHROMATIC_MUT_1);
} }
} }
} }