refactor(Core/Misc): acore to Acore (#6043)

This commit is contained in:
Kitzunu 2021-05-31 14:21:54 +02:00 committed by GitHub
parent 7eeae6866e
commit 897a02bb75
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
224 changed files with 942 additions and 942 deletions

View file

@ -83,7 +83,7 @@ public:
return false;
}
auto token = acore::StringTo<uint32>(args);
auto token = Acore::StringTo<uint32>(args);
auto const& masterKey = sSecretMgr->GetSecret(SECRET_TOTP_MASTER_KEY);
if (!masterKey.IsAvailable())
@ -117,18 +117,18 @@ public:
}
// store random suggested secrets
static std::unordered_map<uint32, acore::Crypto::TOTP::Secret> suggestions;
auto pair = suggestions.emplace(std::piecewise_construct, std::make_tuple(accountId), std::make_tuple(acore::Crypto::TOTP::RECOMMENDED_SECRET_LENGTH)); // std::vector 1-argument size_t constructor invokes resize
static std::unordered_map<uint32, Acore::Crypto::TOTP::Secret> suggestions;
auto pair = suggestions.emplace(std::piecewise_construct, std::make_tuple(accountId), std::make_tuple(Acore::Crypto::TOTP::RECOMMENDED_SECRET_LENGTH)); // std::vector 1-argument size_t constructor invokes resize
if (pair.second) // no suggestion yet, generate random secret
acore::Crypto::GetRandomBytes(pair.first->second);
Acore::Crypto::GetRandomBytes(pair.first->second);
if (!pair.second && token) // suggestion already existed and token specified - validate
{
if (acore::Crypto::TOTP::ValidateToken(pair.first->second, *token))
if (Acore::Crypto::TOTP::ValidateToken(pair.first->second, *token))
{
if (masterKey)
acore::Crypto::AEEncryptWithRandomIV<acore::Crypto::AES>(pair.first->second, *masterKey);
Acore::Crypto::AEEncryptWithRandomIV<Acore::Crypto::AES>(pair.first->second, *masterKey);
auto* stmt = LoginDatabase.GetPreparedStatement(LOGIN_UPD_ACCOUNT_TOTP_SECRET);
stmt->setBinary(0, pair.first->second);
@ -144,7 +144,7 @@ public:
}
// new suggestion, or no token specified, output TOTP parameters
handler->PSendSysMessage(LANG_2FA_SECRET_SUGGESTION, acore::Encoding::Base32::Encode(pair.first->second).c_str());
handler->PSendSysMessage(LANG_2FA_SECRET_SUGGESTION, Acore::Encoding::Base32::Encode(pair.first->second).c_str());
handler->SetSentErrorMessage(true);
return false;
}
@ -158,7 +158,7 @@ public:
return false;
}
auto token = acore::StringTo<uint32>(args);
auto token = Acore::StringTo<uint32>(args);
auto const& masterKey = sSecretMgr->GetSecret(SECRET_TOTP_MASTER_KEY);
if (!masterKey.IsAvailable())
@ -169,7 +169,7 @@ public:
}
uint32 const accountId = handler->GetSession()->GetAccountId();
acore::Crypto::TOTP::Secret secret;
Acore::Crypto::TOTP::Secret secret;
{ // get current TOTP secret
auto* stmt = LoginDatabase.GetPreparedStatement(LOGIN_SEL_ACCOUNT_TOTP_SECRET);
stmt->setUInt32(0, accountId);
@ -198,7 +198,7 @@ public:
{
if (masterKey)
{
bool success = acore::Crypto::AEDecrypt<acore::Crypto::AES>(secret, *masterKey);
bool success = Acore::Crypto::AEDecrypt<Acore::Crypto::AES>(secret, *masterKey);
if (!success)
{
LOG_ERROR("misc", "Account %u has invalid ciphertext in TOTP token.", accountId);
@ -208,7 +208,7 @@ public:
}
}
if (acore::Crypto::TOTP::ValidateToken(secret, *token))
if (Acore::Crypto::TOTP::ValidateToken(secret, *token))
{
auto* stmt = LoginDatabase.GetPreparedStatement(LOGIN_UPD_ACCOUNT_TOTP_SECRET);
stmt->setNull(0);
@ -616,7 +616,7 @@ public:
return false;
}
Optional<std::vector<uint8>> decoded = acore::Encoding::Base32::Decode(secret);
Optional<std::vector<uint8>> decoded = Acore::Encoding::Base32::Decode(secret);
if (!decoded)
{
handler->SendSysMessage(LANG_2FA_SECRET_INVALID);
@ -624,7 +624,7 @@ public:
return false;
}
if (128 < (decoded->size() + acore::Crypto::AES::IV_SIZE_BYTES + acore::Crypto::AES::TAG_SIZE_BYTES))
if (128 < (decoded->size() + Acore::Crypto::AES::IV_SIZE_BYTES + Acore::Crypto::AES::TAG_SIZE_BYTES))
{
handler->SendSysMessage(LANG_2FA_SECRET_TOO_LONG);
handler->SetSentErrorMessage(true);
@ -632,7 +632,7 @@ public:
}
if (masterKey)
acore::Crypto::AEEncryptWithRandomIV<acore::Crypto::AES>(*decoded, *masterKey);
Acore::Crypto::AEEncryptWithRandomIV<Acore::Crypto::AES>(*decoded, *masterKey);
auto* stmt = LoginDatabase.GetPreparedStatement(LOGIN_UPD_ACCOUNT_TOTP_SECRET);
stmt->setBinary(0, *decoded);

View file

@ -916,8 +916,8 @@ public:
else
{
Creature* passenger = nullptr;
acore::AllCreaturesOfEntryInRange check(handler->GetSession()->GetPlayer(), entry, 20.0f);
acore::CreatureSearcher<acore::AllCreaturesOfEntryInRange> searcher(handler->GetSession()->GetPlayer(), passenger, check);
Acore::AllCreaturesOfEntryInRange check(handler->GetSession()->GetPlayer(), entry, 20.0f);
Acore::CreatureSearcher<Acore::AllCreaturesOfEntryInRange> searcher(handler->GetSession()->GetPlayer(), passenger, check);
handler->GetSession()->GetPlayer()->VisitNearbyObject(30.0f, searcher);
if (!passenger || passenger == target)
return false;

View file

@ -171,7 +171,7 @@ public:
}
}
ASSERT(!allowedArenas.empty());
BattlegroundTypeId randomizedArenaBgTypeId = acore::Containers::SelectRandomContainerElement(allowedArenas);
BattlegroundTypeId randomizedArenaBgTypeId = Acore::Containers::SelectRandomContainerElement(allowedArenas);
uint8 count = 0;
if (i != tokens.end())
@ -424,7 +424,7 @@ public:
}
}
CellCoord cellCoord = acore::ComputeCellCoord(object->GetPositionX(), object->GetPositionY());
CellCoord cellCoord = Acore::ComputeCellCoord(object->GetPositionX(), object->GetPositionY());
Cell cell(cellCoord);
uint32 zoneId, areaId;
@ -443,7 +443,7 @@ public:
float groundZ = map->GetHeight(object->GetPhaseMask(), object->GetPositionX(), object->GetPositionY(), MAX_HEIGHT);
float floorZ = map->GetHeight(object->GetPhaseMask(), object->GetPositionX(), object->GetPositionY(), object->GetPositionZ());
GridCoord gridCoord = acore::ComputeGridCoord(object->GetPositionX(), object->GetPositionY());
GridCoord gridCoord = Acore::ComputeGridCoord(object->GetPositionX(), object->GetPositionY());
// 63? WHY?
int gridX = 63 - gridCoord.x_coord;
@ -2227,14 +2227,14 @@ public:
return true;
}
CellCoord p(acore::ComputeCellCoord(player->GetPositionX(), player->GetPositionY()));
CellCoord p(Acore::ComputeCellCoord(player->GetPositionX(), player->GetPositionY()));
Cell cell(p);
cell.SetNoCreate();
acore::RespawnDo u_do;
acore::WorldObjectWorker<acore::RespawnDo> worker(player, u_do);
Acore::RespawnDo u_do;
Acore::WorldObjectWorker<Acore::RespawnDo> worker(player, u_do);
TypeContainerVisitor<acore::WorldObjectWorker<acore::RespawnDo>, GridTypeMapContainer > obj_worker(worker);
TypeContainerVisitor<Acore::WorldObjectWorker<Acore::RespawnDo>, GridTypeMapContainer > obj_worker(worker);
cell.Visit(p, obj_worker, *player->GetMap(), *player, player->GetGridActivationRange());
return true;

View file

@ -263,15 +263,15 @@ public:
float radius = 40.0f;
WorldObject* object = handler->GetSession()->GetPlayer();
CellCoord pair(acore::ComputeCellCoord(object->GetPositionX(), object->GetPositionY()));
CellCoord pair(Acore::ComputeCellCoord(object->GetPositionX(), object->GetPositionY()));
Cell cell(pair);
cell.SetNoCreate();
std::list<Creature*> creatureList;
acore::AnyUnitInObjectRangeCheck go_check(object, radius);
acore::CreatureListSearcher<acore::AnyUnitInObjectRangeCheck> go_search(object, creatureList, go_check);
TypeContainerVisitor<acore::CreatureListSearcher<acore::AnyUnitInObjectRangeCheck>, GridTypeMapContainer> go_visit(go_search);
Acore::AnyUnitInObjectRangeCheck go_check(object, radius);
Acore::CreatureListSearcher<Acore::AnyUnitInObjectRangeCheck> go_search(object, creatureList, go_check);
TypeContainerVisitor<Acore::CreatureListSearcher<Acore::AnyUnitInObjectRangeCheck>, GridTypeMapContainer> go_visit(go_search);
// Get Creatures
cell.Visit(pair, go_visit, *(object->GetMap()), *object, radius);

View file

@ -443,7 +443,7 @@ public:
if (!type || !name || !level || *name == '\0' || *level == '\0' || (*type != 'a' && *type != 'l'))
return false;
sLog->SetLogLevel(name, *acore::StringTo<uint32>(level), *type == 'l');
sLog->SetLogLevel(name, *Acore::StringTo<uint32>(level), *type == 'l');
return true;
}

View file

@ -125,7 +125,7 @@ public:
if (targets.empty())
return;
WorldObject* target = acore::Containers::SelectRandomContainerElement(targets);
WorldObject* target = Acore::Containers::SelectRandomContainerElement(targets);
targets.clear();
targets.push_back(target);
}

View file

@ -91,7 +91,7 @@ public:
{
std::list<Creature*> healers = DoFindFriendlyMissingBuff(45.0f, SPELL_INSPIRE);
if (!healers.empty())
DoCast(acore::Containers::SelectRandomContainerElement(healers), SPELL_INSPIRE);
DoCast(Acore::Containers::SelectRandomContainerElement(healers), SPELL_INSPIRE);
DoCast(me, SPELL_INSPIRE);
events.ScheduleEvent(EVENT_INSPIRE, urand(20000, 26000));

View file

@ -165,7 +165,7 @@ public:
if (Creature* summon = ObjectAccessor::GetCreature(*me, *i))
guestList.push_back(summon);
return acore::Containers::SelectRandomContainerElement(guestList);
return Acore::Containers::SelectRandomContainerElement(guestList);
}
void UpdateAI(uint32 diff) override

View file

@ -294,7 +294,7 @@ public:
}
else
{
point = acore::Containers::SelectRandomContainerElement(positions);
point = Acore::Containers::SelectRandomContainerElement(positions);
pos.Relocate(point->x, point->y, INFERNAL_Z, frand(0.0f, float(M_PI * 2)));
}

View file

@ -104,7 +104,7 @@ public:
std::list<uint32> helpersList;
for (uint8 i = 0; i < MAX_HELPERS_COUNT; ++i)
helpersList.push_back(helpersEntries[i]);
acore::Containers::RandomResize(helpersList, MAX_ACTIVE_HELPERS);
Acore::Containers::RandomResize(helpersList, MAX_ACTIVE_HELPERS);
uint8 j = 0;
for (std::list<uint32>::const_iterator itr = helpersList.begin(); itr != helpersList.end(); ++itr, ++j)
@ -199,7 +199,7 @@ public:
case EVENT_SPELL_PW_SHIELD:
{
std::list<Creature*> cList = DoFindFriendlyMissingBuff(40.0f, DUNGEON_MODE(SPELL_POWER_WORD_SHIELD_N, SPELL_POWER_WORD_SHIELD_H));
if (Unit* target = acore::Containers::SelectRandomContainerElement(cList))
if (Unit* target = Acore::Containers::SelectRandomContainerElement(cList))
me->CastSpell(target, DUNGEON_MODE(SPELL_POWER_WORD_SHIELD_N, SPELL_POWER_WORD_SHIELD_H), false);
events.ScheduleEvent(EVENT_SPELL_PW_SHIELD, 10000);
break;
@ -216,7 +216,7 @@ public:
target = me;
break;
case 2:
target = ObjectAccessor::GetCreature(*me, acore::Containers::SelectRandomContainerElement(summons));
target = ObjectAccessor::GetCreature(*me, Acore::Containers::SelectRandomContainerElement(summons));
break;
}

View file

@ -626,7 +626,7 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(SpectralBlastCheck(GetCaster()->GetVictim()));
acore::Containers::RandomResize(targets, 1);
Acore::Containers::RandomResize(targets, 1);
}
void HandleDummy(SpellEffIndex effIndex)

View file

@ -1052,7 +1052,7 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::UnitAuraCheck(true, SPELL_VENGEANCE_OF_THE_BLUE_FLIGHT));
targets.remove_if(Acore::UnitAuraCheck(true, SPELL_VENGEANCE_OF_THE_BLUE_FLIGHT));
}
void HandleScriptEffect(SpellEffIndex effIndex)
@ -1089,7 +1089,7 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.sort(acore::ObjectDistanceOrderPred(GetCaster()));
targets.sort(Acore::ObjectDistanceOrderPred(GetCaster()));
WorldObject* target = targets.front();
targets.clear();
@ -1299,7 +1299,7 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::UnitAuraCheck(true, SPELL_VENGEANCE_OF_THE_BLUE_FLIGHT));
targets.remove_if(Acore::UnitAuraCheck(true, SPELL_VENGEANCE_OF_THE_BLUE_FLIGHT));
}
void Register() override

View file

@ -394,7 +394,7 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
acore::Containers::RandomResize(targets, GetCaster()->GetAI()->GetData(DATA_NEGATIVE_ENERGY_TARGETS));
Acore::Containers::RandomResize(targets, GetCaster()->GetAI()->GetData(DATA_NEGATIVE_ENERGY_TARGETS));
}
void HandleScriptEffect(SpellEffIndex effIndex)

View file

@ -149,18 +149,18 @@ public:
for (uint8 i = 2; i < StormCount; ++i)
bp0 *= 2;
CellCoord p(acore::ComputeCellCoord(me->GetPositionX(), me->GetPositionY()));
CellCoord p(Acore::ComputeCellCoord(me->GetPositionX(), me->GetPositionY()));
Cell cell(p);
cell.SetNoCreate();
std::list<Unit*> tempUnitMap;
{
acore::AnyAoETargetUnitInObjectRangeCheck u_check(me, me, SIZE_OF_GRIDS);
acore::UnitListSearcher<acore::AnyAoETargetUnitInObjectRangeCheck> searcher(me, tempUnitMap, u_check);
Acore::AnyAoETargetUnitInObjectRangeCheck u_check(me, me, SIZE_OF_GRIDS);
Acore::UnitListSearcher<Acore::AnyAoETargetUnitInObjectRangeCheck> searcher(me, tempUnitMap, u_check);
TypeContainerVisitor<acore::UnitListSearcher<acore::AnyAoETargetUnitInObjectRangeCheck>, WorldTypeMapContainer > world_unit_searcher(searcher);
TypeContainerVisitor<acore::UnitListSearcher<acore::AnyAoETargetUnitInObjectRangeCheck>, GridTypeMapContainer > grid_unit_searcher(searcher);
TypeContainerVisitor<Acore::UnitListSearcher<Acore::AnyAoETargetUnitInObjectRangeCheck>, WorldTypeMapContainer > world_unit_searcher(searcher);
TypeContainerVisitor<Acore::UnitListSearcher<Acore::AnyAoETargetUnitInObjectRangeCheck>, GridTypeMapContainer > grid_unit_searcher(searcher);
cell.Visit(p, world_unit_searcher, *me->GetMap(), *me, SIZE_OF_GRIDS);
cell.Visit(p, grid_unit_searcher, *me->GetMap(), *me, SIZE_OF_GRIDS);

View file

@ -224,14 +224,14 @@ public:
me->GetPosition(x, y, z);
{
CellCoord pair(acore::ComputeCellCoord(x, y));
CellCoord pair(Acore::ComputeCellCoord(x, y));
Cell cell(pair);
cell.SetNoCreate();
acore::AllCreaturesOfEntryInRange check(me, NPC_EGG, 100);
acore::CreatureListSearcher<acore::AllCreaturesOfEntryInRange> searcher(me, templist, check);
Acore::AllCreaturesOfEntryInRange check(me, NPC_EGG, 100);
Acore::CreatureListSearcher<Acore::AllCreaturesOfEntryInRange> searcher(me, templist, check);
TypeContainerVisitor<acore::CreatureListSearcher<acore::AllCreaturesOfEntryInRange>, GridTypeMapContainer> cSearcher(searcher);
TypeContainerVisitor<Acore::CreatureListSearcher<Acore::AllCreaturesOfEntryInRange>, GridTypeMapContainer> cSearcher(searcher);
cell.Visit(pair, cSearcher, *me->GetMap(), *me, me->GetGridActivationRange());
}
@ -257,14 +257,14 @@ public:
me->GetPosition(x, y, z);
{
CellCoord pair(acore::ComputeCellCoord(x, y));
CellCoord pair(Acore::ComputeCellCoord(x, y));
Cell cell(pair);
cell.SetNoCreate();
acore::AllCreaturesOfEntryInRange check(me, NPC_FIRE_BOMB, 100);
acore::CreatureListSearcher<acore::AllCreaturesOfEntryInRange> searcher(me, templist, check);
Acore::AllCreaturesOfEntryInRange check(me, NPC_FIRE_BOMB, 100);
Acore::CreatureListSearcher<Acore::AllCreaturesOfEntryInRange> searcher(me, templist, check);
TypeContainerVisitor<acore::CreatureListSearcher<acore::AllCreaturesOfEntryInRange>, GridTypeMapContainer> cSearcher(searcher);
TypeContainerVisitor<Acore::CreatureListSearcher<Acore::AllCreaturesOfEntryInRange>, GridTypeMapContainer> cSearcher(searcher);
cell.Visit(pair, cSearcher, *me->GetMap(), *me, me->GetGridActivationRange());
}
@ -518,14 +518,14 @@ public:
me->GetPosition(x, y, z);
{
CellCoord pair(acore::ComputeCellCoord(x, y));
CellCoord pair(Acore::ComputeCellCoord(x, y));
Cell cell(pair);
cell.SetNoCreate();
acore::AllCreaturesOfEntryInRange check(me, 23817, 50);
acore::CreatureListSearcher<acore::AllCreaturesOfEntryInRange> searcher(me, templist, check);
Acore::AllCreaturesOfEntryInRange check(me, 23817, 50);
Acore::CreatureListSearcher<Acore::AllCreaturesOfEntryInRange> searcher(me, templist, check);
TypeContainerVisitor<acore::CreatureListSearcher<acore::AllCreaturesOfEntryInRange>, GridTypeMapContainer> cSearcher(searcher);
TypeContainerVisitor<Acore::CreatureListSearcher<Acore::AllCreaturesOfEntryInRange>, GridTypeMapContainer> cSearcher(searcher);
cell.Visit(pair, cSearcher, *(me->GetMap()), *me, me->GetGridActivationRange());
}

View file

@ -141,14 +141,14 @@ public:
me->GetPosition(x, y, z);
{
CellCoord pair(acore::ComputeCellCoord(x, y));
CellCoord pair(Acore::ComputeCellCoord(x, y));
Cell cell(pair);
cell.SetNoCreate();
acore::AllFriendlyCreaturesInGrid check(me);
acore::CreatureListSearcher<acore::AllFriendlyCreaturesInGrid> searcher(me, templist, check);
Acore::AllFriendlyCreaturesInGrid check(me);
Acore::CreatureListSearcher<Acore::AllFriendlyCreaturesInGrid> searcher(me, templist, check);
TypeContainerVisitor<acore::CreatureListSearcher<acore::AllFriendlyCreaturesInGrid>, GridTypeMapContainer> cSearcher(searcher);
TypeContainerVisitor<Acore::CreatureListSearcher<Acore::AllFriendlyCreaturesInGrid>, GridTypeMapContainer> cSearcher(searcher);
cell.Visit(pair, cSearcher, *(me->GetMap()), *me, me->GetGridActivationRange());
}
@ -168,14 +168,14 @@ public:
me->GetPosition(x, y, z);
{
CellCoord pair(acore::ComputeCellCoord(x, y));
CellCoord pair(Acore::ComputeCellCoord(x, y));
Cell cell(pair);
cell.SetNoCreate();
acore::AllFriendlyCreaturesInGrid check(me);
acore::CreatureListSearcher<acore::AllFriendlyCreaturesInGrid> searcher(me, templist, check);
Acore::AllFriendlyCreaturesInGrid check(me);
Acore::CreatureListSearcher<Acore::AllFriendlyCreaturesInGrid> searcher(me, templist, check);
TypeContainerVisitor<acore::CreatureListSearcher<acore::AllFriendlyCreaturesInGrid>, GridTypeMapContainer> cSearcher(searcher);
TypeContainerVisitor<Acore::CreatureListSearcher<Acore::AllFriendlyCreaturesInGrid>, GridTypeMapContainer> cSearcher(searcher);
cell.Visit(pair, cSearcher, *(me->GetMap()), *me, me->GetGridActivationRange());
}

View file

@ -1107,8 +1107,8 @@ public:
{
timer = 0;
Player* player = nullptr;
acore::AnyPlayerInObjectRangeCheck checker(me, 2.0f);
acore::PlayerSearcher<acore::AnyPlayerInObjectRangeCheck> searcher(me, player, checker);
Acore::AnyPlayerInObjectRangeCheck checker(me, 2.0f);
Acore::PlayerSearcher<Acore::AnyPlayerInObjectRangeCheck> searcher(me, player, checker);
me->VisitNearbyWorldObject(2.0f, searcher);
if (player)
{

View file

@ -810,8 +810,8 @@ public:
{
float radius = 100.0f;
std::list<Player*> players;
acore::AnyPlayerInObjectRangeCheck checker(me, radius);
acore::PlayerListSearcher<acore::AnyPlayerInObjectRangeCheck> searcher(me, players, checker);
Acore::AnyPlayerInObjectRangeCheck checker(me, radius);
Acore::PlayerListSearcher<Acore::AnyPlayerInObjectRangeCheck> searcher(me, players, checker);
me->VisitNearbyWorldObject(radius, searcher);
for (std::list<Player*>::const_iterator itr = players.begin(); itr != players.end(); ++itr)

View file

@ -725,8 +725,8 @@ public:
// For nearby players, check if they have the same aura. If so, cast Romantic Picnic (45123)
// required by achievement and "hearts" visual
std::list<Player*> playerList;
acore::AnyPlayerInObjectRangeCheck checker(target, INTERACTION_DISTANCE * 2);
acore::PlayerListSearcher<acore::AnyPlayerInObjectRangeCheck> searcher(target, playerList, checker);
Acore::AnyPlayerInObjectRangeCheck checker(target, INTERACTION_DISTANCE * 2);
Acore::PlayerListSearcher<Acore::AnyPlayerInObjectRangeCheck> searcher(target, playerList, checker);
target->VisitNearbyWorldObject(INTERACTION_DISTANCE * 2, searcher);
for (std::list<Player*>::const_iterator itr = playerList.begin(); itr != playerList.end(); ++itr)
{

View file

@ -165,7 +165,7 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::PowerCheck(POWER_MANA, false));
targets.remove_if(Acore::PowerCheck(POWER_MANA, false));
}
void Register() override

View file

@ -888,16 +888,16 @@ void hyjalAI::JustDied(Unit* /*killer*/)
void hyjalAI::HideNearPos(float x, float y)
{
CellCoord pair(acore::ComputeCellCoord(x, y));
CellCoord pair(Acore::ComputeCellCoord(x, y));
Cell cell(pair);
cell.SetNoCreate();
// First get all creatures.
std::list<Creature*> creatures;
acore::AllFriendlyCreaturesInGrid creature_check(me);
acore::CreatureListSearcher<acore::AllFriendlyCreaturesInGrid> creature_searcher(me, creatures, creature_check);
Acore::AllFriendlyCreaturesInGrid creature_check(me);
Acore::CreatureListSearcher<Acore::AllFriendlyCreaturesInGrid> creature_searcher(me, creatures, creature_check);
TypeContainerVisitor <acore::CreatureListSearcher<acore::AllFriendlyCreaturesInGrid>, GridTypeMapContainer> creature_visitor(creature_searcher);
TypeContainerVisitor <Acore::CreatureListSearcher<Acore::AllFriendlyCreaturesInGrid>, GridTypeMapContainer> creature_visitor(creature_searcher);
cell.Visit(pair, creature_visitor, *(me->GetMap()), *me, me->GetGridActivationRange());
if (!creatures.empty())
@ -912,13 +912,13 @@ void hyjalAI::HideNearPos(float x, float y)
void hyjalAI::RespawnNearPos(float x, float y)
{
CellCoord p(acore::ComputeCellCoord(x, y));
CellCoord p(Acore::ComputeCellCoord(x, y));
Cell cell(p);
cell.SetNoCreate();
acore::RespawnDo u_do;
acore::WorldObjectWorker<acore::RespawnDo> worker(me, u_do);
TypeContainerVisitor<acore::WorldObjectWorker<acore::RespawnDo>, GridTypeMapContainer > obj_worker(worker);
Acore::RespawnDo u_do;
Acore::WorldObjectWorker<Acore::RespawnDo> worker(me, u_do);
TypeContainerVisitor<Acore::WorldObjectWorker<Acore::RespawnDo>, GridTypeMapContainer > obj_worker(worker);
cell.Visit(p, obj_worker, *me->GetMap(), *me, me->GetGridActivationRange());
}
@ -943,16 +943,16 @@ void hyjalAI::WaypointReached(uint32 waypointId)
}
//do some talking
//all alive guards walk near here
CellCoord pair(acore::ComputeCellCoord(me->GetPositionX(), me->GetPositionY()));
CellCoord pair(Acore::ComputeCellCoord(me->GetPositionX(), me->GetPositionY()));
Cell cell(pair);
cell.SetNoCreate();
// First get all creatures.
std::list<Creature*> creatures;
acore::AllFriendlyCreaturesInGrid creature_check(me);
acore::CreatureListSearcher<acore::AllFriendlyCreaturesInGrid> creature_searcher(me, creatures, creature_check);
Acore::AllFriendlyCreaturesInGrid creature_check(me);
Acore::CreatureListSearcher<Acore::AllFriendlyCreaturesInGrid> creature_searcher(me, creatures, creature_check);
TypeContainerVisitor
<acore::CreatureListSearcher<acore::AllFriendlyCreaturesInGrid>,
<Acore::CreatureListSearcher<Acore::AllFriendlyCreaturesInGrid>,
GridTypeMapContainer> creature_visitor(creature_searcher);
cell.Visit(pair, creature_visitor, *(me->GetMap()), *me, me->GetGridActivationRange());
@ -984,15 +984,15 @@ void hyjalAI::DoOverrun(uint32 faction, const uint32 diff)
{
if (TeleportTimer <= diff)
{
CellCoord pair(acore::ComputeCellCoord(me->GetPositionX(), me->GetPositionY()));
CellCoord pair(Acore::ComputeCellCoord(me->GetPositionX(), me->GetPositionY()));
Cell cell(pair);
cell.SetNoCreate();
std::list<Creature*> creatures;
acore::AllFriendlyCreaturesInGrid creature_check(me);
acore::CreatureListSearcher<acore::AllFriendlyCreaturesInGrid> creature_searcher(me, creatures, creature_check);
Acore::AllFriendlyCreaturesInGrid creature_check(me);
Acore::CreatureListSearcher<Acore::AllFriendlyCreaturesInGrid> creature_searcher(me, creatures, creature_check);
TypeContainerVisitor
<acore::CreatureListSearcher<acore::AllFriendlyCreaturesInGrid>,
<Acore::CreatureListSearcher<Acore::AllFriendlyCreaturesInGrid>,
GridTypeMapContainer> creature_visitor(creature_searcher);
cell.Visit(pair, creature_visitor, *(me->GetMap()), *me, me->GetGridActivationRange());

View file

@ -180,8 +180,8 @@ public:
DoCast(me, SPELL_IDOM_ROOM_CAMERA_SHAKE);
me->SummonGameObject(GO_BELNISTRASZS_BRAZIER, 2577.196f, 947.0781f, 53.16757f, 2.356195f, 0, 0, 0.9238796f, 0.3826832f, 3600);
std::list<WorldObject*> ClusterList;
acore::AllWorldObjectsInRange objects(me, 50.0f);
acore::WorldObjectListSearcher<acore::AllWorldObjectsInRange> searcher(me, ClusterList, objects);
Acore::AllWorldObjectsInRange objects(me, 50.0f);
Acore::WorldObjectListSearcher<Acore::AllWorldObjectsInRange> searcher(me, ClusterList, objects);
me->VisitNearbyObject(50.0f, searcher);
for (std::list<WorldObject*>::const_iterator itr = ClusterList.begin(); itr != ClusterList.end(); ++itr)
{

View file

@ -137,7 +137,7 @@ public:
targetList.push_back((*itr)->getTarget());
}
acore::Containers::RandomResize(targetList, 5);
Acore::Containers::RandomResize(targetList, 5);
for (std::list<Unit*>::iterator itr = targetList.begin(); itr != targetList.end(); ++itr)
DoCast(*itr, SPELL_DRAIN_MANA);

View file

@ -139,8 +139,8 @@ public:
{
GameObject* cage = GetHitGObj();
std::list<WorldObject*> cagesList;
acore::AllWorldObjectsInRange objects(GetCaster(), 15.0f);
acore::WorldObjectListSearcher<acore::AllWorldObjectsInRange> searcher(GetCaster(), cagesList, objects);
Acore::AllWorldObjectsInRange objects(GetCaster(), 15.0f);
Acore::WorldObjectListSearcher<Acore::AllWorldObjectsInRange> searcher(GetCaster(), cagesList, objects);
GetCaster()->VisitNearbyObject(15.0f, searcher);
for (std::list<WorldObject*>::const_iterator itr = cagesList.begin(); itr != cagesList.end(); ++itr)
{

View file

@ -311,8 +311,8 @@ public:
void IsSummonedBy(Unit* /*summoner*/) override
{
std::list<Player*> playerOnQuestList;
acore::AnyPlayerInObjectRangeCheck checker(me, 5.0f);
acore::PlayerListSearcher<acore::AnyPlayerInObjectRangeCheck> searcher(me, playerOnQuestList, checker);
Acore::AnyPlayerInObjectRangeCheck checker(me, 5.0f);
Acore::PlayerListSearcher<Acore::AnyPlayerInObjectRangeCheck> searcher(me, playerOnQuestList, checker);
me->VisitNearbyWorldObject(5.0f, searcher);
for (std::list<Player*>::const_iterator itr = playerOnQuestList.begin(); itr != playerOnQuestList.end(); ++itr)
{

View file

@ -273,7 +273,7 @@ public:
PlayerList.push_back(player);
if (!PlayerList.empty())
caster->CastSpell(acore::Containers::SelectRandomContainerElement(PlayerList), caster->GetMap()->IsHeroic() ? SPELL_SHADOW_SICKLE_H : SPELL_SHADOW_SICKLE, true);
caster->CastSpell(Acore::Containers::SelectRandomContainerElement(PlayerList), caster->GetMap()->IsHeroic() ? SPELL_SHADOW_SICKLE_H : SPELL_SHADOW_SICKLE, true);
}
}

View file

@ -474,12 +474,12 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
// get a list of players with mana
targets.remove_if(acore::ObjectTypeIdCheck(TYPEID_PLAYER, false));
targets.remove_if(acore::PowerCheck(POWER_MANA, false));
targets.remove_if(Acore::ObjectTypeIdCheck(TYPEID_PLAYER, false));
targets.remove_if(Acore::PowerCheck(POWER_MANA, false));
if (targets.empty())
return;
WorldObject* target = acore::Containers::SelectRandomContainerElement(targets);
WorldObject* target = Acore::Containers::SelectRandomContainerElement(targets);
targets.clear();
targets.push_back(target);
}

View file

@ -367,7 +367,7 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::AllWorldObjectsInExactRange(GetCaster(), 10.0f, false));
targets.remove_if(Acore::AllWorldObjectsInExactRange(GetCaster(), 10.0f, false));
}
void Register() override

View file

@ -352,7 +352,7 @@ public:
myList.push_back(p);
if (!myList.empty())
{
myList.sort(acore::ObjectDistanceOrderPred(me->GetVictim()));
myList.sort(Acore::ObjectDistanceOrderPred(me->GetVictim()));
Player* target = myList.front();
if (me->GetVictim()->GetGUID() != _tankGUID || target->GetGUID() != _offtankGUID)
{
@ -420,7 +420,7 @@ public:
if (Player* p = itr->GetSource())
if (p->IsAlive() && p != me->GetVictim() && p->GetGUID() != _offtankGUID && !p->IsGameMaster() && p->GetDistance(me) < 100.0f && !p->HasAura(SPELL_UNCONTROLLABLE_FRENZY))
myList.push_back(p);
acore::Containers::RandomResize(myList, Is25ManRaid() ? 3 : 2);
Acore::Containers::RandomResize(myList, Is25ManRaid() ? 3 : 2);
if (myList.size() > 1)
{
Talk(SAY_PACT_OF_THE_DARKFALLEN);
@ -446,7 +446,7 @@ public:
if (!myList.empty())
{
acore::Containers::RandomResize(myList, 1);
Acore::Containers::RandomResize(myList, 1);
Player* target = myList.front();
Talk(EMOTE_SWARMING_SHADOWS, target);
Talk(SAY_SWARMING_SHADOWS);
@ -468,7 +468,7 @@ public:
if (p->IsAlive() && p != me->GetVictim() && p->GetGUID() != _offtankGUID && !p->IsGameMaster() && !p->HasAura(SPELL_PACT_OF_THE_DARKFALLEN) && !p->HasAura(SPELL_UNCONTROLLABLE_FRENZY))
myList.push_back(p);
acore::Containers::RandomResize(myList, uint32(Is25ManRaid() ? 4 : 2));
Acore::Containers::RandomResize(myList, uint32(Is25ManRaid() ? 4 : 2));
for (std::list<Player*>::iterator itr = myList.begin(); itr != myList.end(); ++itr)
me->CastSpell(*itr, SPELL_TWILIGHT_BLOODBOLT, false);
me->CastSpell(me, SPELL_TWILIGHT_BLOODBOLT_TARGET, false);
@ -625,7 +625,7 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::UnitAuraCheck(false, SPELL_PACT_OF_THE_DARKFALLEN));
targets.remove_if(Acore::UnitAuraCheck(false, SPELL_PACT_OF_THE_DARKFALLEN));
bool remove = true;
std::list<WorldObject*>::const_iterator itr, itr2, itrEnd = targets.end();
@ -670,7 +670,7 @@ public:
void FilterTargets(std::list<WorldObject*>& unitList)
{
unitList.remove_if(acore::UnitAuraCheck(true, SPELL_PACT_OF_THE_DARKFALLEN));
unitList.remove_if(Acore::UnitAuraCheck(true, SPELL_PACT_OF_THE_DARKFALLEN));
unitList.push_back(GetCaster());
}
@ -723,7 +723,7 @@ public:
{
uint32 targetCount = (targets.size() + 2) / 3;
targets.remove_if(BloodboltHitCheck(static_cast<LanaThelAI*>(GetCaster()->GetAI())));
acore::Containers::RandomResize(targets, targetCount);
Acore::Containers::RandomResize(targets, targetCount);
// mark targets now, effect hook has missile travel time delay (might cast next in that time)
for (std::list<WorldObject*>::const_iterator itr = targets.begin(); itr != targets.end(); ++itr)
GetCaster()->GetAI()->SetGUID((*itr)->GetGUID(), GUID_BLOODBOLT);
@ -921,7 +921,7 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::AllWorldObjectsInExactRange(GetCaster(), GetSpellInfo()->Effects[0].CalcRadius(), true));
targets.remove_if(Acore::AllWorldObjectsInExactRange(GetCaster(), GetSpellInfo()->Effects[0].CalcRadius(), true));
}
void Register() override

View file

@ -539,7 +539,7 @@ public:
if (_guardList.empty())
{
GetCreatureListWithEntryInGrid(_guardList, me, NPC_SE_KOR_KRON_REAVER, 20.0f);
_guardList.sort(acore::ObjectDistanceOrderPred(me));
_guardList.sort(Acore::ObjectDistanceOrderPred(me));
}
uint32 x = 1;
for (std::list<Creature*>::iterator itr = _guardList.begin(); itr != _guardList.end(); ++itr)
@ -800,7 +800,7 @@ public:
if (_guardList.empty())
{
GetCreatureListWithEntryInGrid(_guardList, me, NPC_SE_SKYBREAKER_MARINE, 20.0f);
_guardList.sort(acore::ObjectDistanceOrderPred(me));
_guardList.sort(Acore::ObjectDistanceOrderPred(me));
}
uint32 x = 1;
for (std::list<Creature*>::iterator itr = _guardList.begin(); itr != _guardList.end(); ++itr)
@ -1242,7 +1242,7 @@ public:
// select one random target, with preference of ranged targets
uint32 targetsAtRange = 0;
uint32 const minTargets = uint32(GetCaster()->GetMap()->GetSpawnMode() & 1 ? 10 : 4);
targets.sort(acore::ObjectDistanceOrderPred(GetCaster(), false));
targets.sort(Acore::ObjectDistanceOrderPred(GetCaster(), false));
// get target count at range
for (std::list<WorldObject*>::iterator itr = targets.begin(); itr != targets.end(); ++itr, ++targetsAtRange)
@ -1310,12 +1310,12 @@ public:
if (GetSpellInfo()->Id == 72385 || GetSpellInfo()->Id == 72442) // 10n, 10h
{
WorldObject* target = acore::Containers::SelectRandomContainerElement(targets);
WorldObject* target = Acore::Containers::SelectRandomContainerElement(targets);
targets.clear();
targets.push_back(target);
}
else
acore::Containers::RandomResize(targets, 3);
Acore::Containers::RandomResize(targets, 3);
}
void Register() override

View file

@ -2208,7 +2208,7 @@ public:
void SelectTarget(std::list<WorldObject*>& targets)
{
targets.remove_if(IgbExplosionCheck(GetCaster()));
acore::Containers::RandomResize(targets, 1);
Acore::Containers::RandomResize(targets, 1);
}
void Register() override
@ -2477,7 +2477,7 @@ public:
targets.remove_if(BurningPitchFilterCheck(teamId == TEAM_HORDE ? GO_ORGRIMS_HAMMER_H : GO_THE_SKYBREAKER_A));
if (!targets.empty())
{
WorldObject* target = acore::Containers::SelectRandomContainerElement(targets);
WorldObject* target = Acore::Containers::SelectRandomContainerElement(targets);
targets.clear();
targets.push_back(target);
}
@ -2563,7 +2563,7 @@ public:
if (!targets.empty())
{
WorldObject* target = acore::Containers::SelectRandomContainerElement(targets);
WorldObject* target = Acore::Containers::SelectRandomContainerElement(targets);
targets.clear();
targets.push_back(target);
}

View file

@ -618,7 +618,7 @@ public:
return;
// select random cultist
Creature* cultist = acore::Containers::SelectRandomContainerElement(temp);
Creature* cultist = Acore::Containers::SelectRandomContainerElement(temp);
if (!cultist)
return;

View file

@ -58,7 +58,7 @@ enum Events
uint32 const boneSpikeSummonId[3] = {69062, 72669, 72670};
struct BoneStormMoveTargetSelector : public acore::unary_function<Unit*, bool>
struct BoneStormMoveTargetSelector : public Acore::unary_function<Unit*, bool>
{
public:
BoneStormMoveTargetSelector(Creature* source) : _source(source) { }

View file

@ -188,7 +188,7 @@ private:
};
// xinef: malleable goo selector, check for target validity
struct MalleableGooSelector : public acore::unary_function<Unit*, bool>
struct MalleableGooSelector : public Acore::unary_function<Unit*, bool>
{
const Unit* me;
MalleableGooSelector(Unit const* unit) : me(unit) {}
@ -874,7 +874,7 @@ public:
void ScaleRange(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::AllWorldObjectsInExactRange(GetCaster(), 2.5f * GetCaster()->GetFloatValue(OBJECT_FIELD_SCALE_X), true));
targets.remove_if(Acore::AllWorldObjectsInExactRange(GetCaster(), 2.5f * GetCaster()->GetFloatValue(OBJECT_FIELD_SCALE_X), true));
}
// big hax to unlock Abomination Eat Ooze ability, requires caster aura spell from difficulty X, but unlocks clientside when got base aura
@ -1024,10 +1024,10 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
// vanish rank 1-3, mage invisibility
targets.remove_if(acore::UnitAuraCheck(true, 11327));
targets.remove_if(acore::UnitAuraCheck(true, 11329));
targets.remove_if(acore::UnitAuraCheck(true, 26888));
targets.remove_if(acore::UnitAuraCheck(true, 32612));
targets.remove_if(Acore::UnitAuraCheck(true, 11327));
targets.remove_if(Acore::UnitAuraCheck(true, 11329));
targets.remove_if(Acore::UnitAuraCheck(true, 26888));
targets.remove_if(Acore::UnitAuraCheck(true, 32612));
}
void Register() override
@ -1098,8 +1098,8 @@ public:
void SelectTarget(std::list<WorldObject*>& targets)
{
// dbc has only 1 field for excluding, this will prevent anyone from getting both at the same time
targets.remove_if(acore::UnitAuraCheck(true, SPELL_VOLATILE_OOZE_PROTECTION));
targets.remove_if(acore::UnitAuraCheck(true, SPELL_GASEOUS_BLOAT_PROTECTION));
targets.remove_if(Acore::UnitAuraCheck(true, SPELL_VOLATILE_OOZE_PROTECTION));
targets.remove_if(Acore::UnitAuraCheck(true, SPELL_GASEOUS_BLOAT_PROTECTION));
if (targets.empty())
{
@ -1108,7 +1108,7 @@ public:
return;
}
WorldObject* target = acore::Containers::SelectRandomContainerElement(targets);
WorldObject* target = Acore::Containers::SelectRandomContainerElement(targets);
targets.clear();
targets.push_back(target);
_target = target;
@ -1256,8 +1256,8 @@ public:
}
}
targets.remove_if(acore::UnitAuraCheck(true, sSpellMgr->GetSpellIdForDifficulty(SPELL_UNBOUND_PLAGUE, GetCaster())));
acore::Containers::RandomResize(targets, 1);
targets.remove_if(Acore::UnitAuraCheck(true, sSpellMgr->GetSpellIdForDifficulty(SPELL_UNBOUND_PLAGUE, GetCaster())));
Acore::Containers::RandomResize(targets, 1);
}
void HandleScript(SpellEffIndex /*effIndex*/)
@ -1627,7 +1627,7 @@ public:
if (targets.empty())
return;
targets.sort(acore::ObjectDistanceOrderPred(GetCaster()));
targets.sort(Acore::ObjectDistanceOrderPred(GetCaster()));
WorldObject* target = targets.front();
targets.clear();
targets.push_back(target);

View file

@ -510,12 +510,12 @@ public:
{
// remove targets with this aura already
// tank is not on this list
targets.remove_if(acore::UnitAuraCheck(true, GetSpellInfo()->Id));
targets.remove_if(Acore::UnitAuraCheck(true, GetSpellInfo()->Id));
targets.remove(GetCaster()->GetVictim());
if (targets.empty())
return;
WorldObject* target = acore::Containers::SelectRandomContainerElement(targets);
WorldObject* target = Acore::Containers::SelectRandomContainerElement(targets);
targets.clear();
targets.push_back(target);
_target = target;

View file

@ -225,7 +225,7 @@ private:
ObjectGuid _sindragosaGUID;
};
struct LastPhaseIceTombTargetSelector : public acore::unary_function<Unit*, bool>
struct LastPhaseIceTombTargetSelector : public Acore::unary_function<Unit*, bool>
{
public:
LastPhaseIceTombTargetSelector(Creature* source) : _source(source) { }
@ -908,10 +908,10 @@ public:
uint32 maxSize = uint32(GetCaster()->GetMap()->GetSpawnMode() & 1 ? 3 : 1);
healList.remove_if(UnchainedMagicTargetSelector(false));
if (healList.size() > maxSize)
acore::Containers::RandomResize(healList, maxSize);
Acore::Containers::RandomResize(healList, maxSize);
dpsList.remove_if(UnchainedMagicTargetSelector(true));
if (dpsList.size() > maxSize)
acore::Containers::RandomResize(dpsList, maxSize);
Acore::Containers::RandomResize(dpsList, maxSize);
unitList.splice(unitList.begin(), healList);
unitList.splice(unitList.begin(), dpsList);
}
@ -1202,7 +1202,7 @@ public:
void FilterTargets(std::list<WorldObject*>& unitList)
{
unitList.remove_if(acore::UnitAuraCheck(true, GetSpellInfo()->Id));
unitList.remove_if(Acore::UnitAuraCheck(true, GetSpellInfo()->Id));
targetList.clear();
targetList = unitList;
}
@ -1906,11 +1906,11 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::ObjectTypeIdCheck(TYPEID_PLAYER, false));
targets.remove_if(Acore::ObjectTypeIdCheck(TYPEID_PLAYER, false));
if (targets.empty())
return;
WorldObject* target = acore::Containers::SelectRandomContainerElement(targets);
WorldObject* target = Acore::Containers::SelectRandomContainerElement(targets);
targets.clear();
targets.push_back(target);
}
@ -1927,7 +1927,7 @@ public:
if (unitList.empty())
return;
acore::Containers::SelectRandomContainerElement(unitList)->CastSpell(GetHitUnit(), uint32(GetEffectValue()), true);
Acore::Containers::SelectRandomContainerElement(unitList)->CastSpell(GetHitUnit(), uint32(GetEffectValue()), true);
}
void Register() override

View file

@ -357,7 +357,7 @@ void SendPacketToPlayers(WorldPacket const* data, Unit* source)
player->GetSession()->SendPacket(data);
}
struct ShadowTrapLKTargetSelector : public acore::unary_function<Unit*, bool>
struct ShadowTrapLKTargetSelector : public Acore::unary_function<Unit*, bool>
{
public:
ShadowTrapLKTargetSelector(Creature* source, bool playerOnly = true, bool reqLOS = false, float maxDist = 0.0f) : _source(source), _playerOnly(playerOnly), _reqLOS(reqLOS), _maxDist(maxDist) { }
@ -383,7 +383,7 @@ private:
float _maxDist;
};
struct NonTankLKTargetSelector : public acore::unary_function<Unit*, bool>
struct NonTankLKTargetSelector : public Acore::unary_function<Unit*, bool>
{
public:
NonTankLKTargetSelector(Creature* source, bool playerOnly = true, bool reqLOS = false, float maxDist = 0.0f, uint32 exclude1 = 0, uint32 exclude2 = 0) : _source(source), _playerOnly(playerOnly), _reqLOS(reqLOS), _maxDist(maxDist), _exclude1(exclude1), _exclude2(exclude2) { }
@ -417,7 +417,7 @@ private:
uint32 _exclude2;
};
struct DefileTargetSelector : public acore::unary_function<Unit*, bool>
struct DefileTargetSelector : public Acore::unary_function<Unit*, bool>
{
public:
DefileTargetSelector(Creature* source) : _source(source) { }
@ -574,7 +574,7 @@ private:
Creature& _owner;
};
class NecroticPlagueTargetCheck : public acore::unary_function<Unit*, bool>
class NecroticPlagueTargetCheck : public Acore::unary_function<Unit*, bool>
{
public:
NecroticPlagueTargetCheck(Unit const* obj, uint32 notAura1, uint32 notAura2) : _sourceObj(obj), _notAura1(notAura1), _notAura2(notAura2) {}
@ -686,7 +686,7 @@ public:
// Reset The Frozen Throne gameobjects
FrozenThroneResetWorker reset;
acore::GameObjectWorker<FrozenThroneResetWorker> worker(me, reset);
Acore::GameObjectWorker<FrozenThroneResetWorker> worker(me, reset);
me->VisitNearbyGridObject(333.0f, worker);
me->AddAura(SPELL_EMOTE_SIT_NO_SHEATH, me);
@ -1966,7 +1966,7 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.sort(acore::ObjectDistanceOrderPred(GetCaster()));
targets.sort(Acore::ObjectDistanceOrderPred(GetCaster()));
if (targets.size() <= 1)
return;
@ -2431,9 +2431,9 @@ public:
void CorrectRange(std::list<WorldObject*>& targets)
{
targets.remove_if(VehicleCheck());
targets.remove_if(acore::AllWorldObjectsInExactRange(GetCaster(), 10.0f * GetCaster()->GetFloatValue(OBJECT_FIELD_SCALE_X), true));
targets.remove_if(Acore::AllWorldObjectsInExactRange(GetCaster(), 10.0f * GetCaster()->GetFloatValue(OBJECT_FIELD_SCALE_X), true));
uint32 strangulatedAura[4] = {68980, 74325, 74296, 74297};
targets.remove_if(acore::UnitAuraCheck(true, strangulatedAura[GetCaster()->GetMap()->GetDifficulty()]));
targets.remove_if(Acore::UnitAuraCheck(true, strangulatedAura[GetCaster()->GetMap()->GetDifficulty()]));
}
void ChangeDamageAndGrow()
@ -2573,7 +2573,7 @@ public:
if (!triggers.empty())
{
valid = true;
triggers.sort(acore::ObjectDistanceOrderPred(me));
triggers.sort(Acore::ObjectDistanceOrderPred(me));
target->GetMotionMaster()->Clear();
target->UpdatePosition(*me, true);
@ -2800,9 +2800,9 @@ public:
targets.clear();
return;
}
targets.remove_if(acore::UnitAuraCheck(true, GetSpellInfo()->Id));
targets.remove_if(acore::UnitAuraCheck(true, SPELL_BOSS_HITTIN_YA_AURA)); // done in dbc, but just to be sure xd
targets.remove_if(acore::UnitAuraCheck(true, SPELL_HARVEST_SOUL_VALKYR));
targets.remove_if(Acore::UnitAuraCheck(true, GetSpellInfo()->Id));
targets.remove_if(Acore::UnitAuraCheck(true, SPELL_BOSS_HITTIN_YA_AURA)); // done in dbc, but just to be sure xd
targets.remove_if(Acore::UnitAuraCheck(true, SPELL_HARVEST_SOUL_VALKYR));
if (InstanceScript* _instance = caster->GetInstanceScript())
if (Creature* lichKing = ObjectAccessor::GetCreature(*caster, _instance->GetGuidData(DATA_THE_LICH_KING)))
if (Spell* s = lichKing->GetCurrentSpell(CURRENT_GENERIC_SPELL))
@ -2812,7 +2812,7 @@ public:
if (targets.empty())
return;
_target = acore::Containers::SelectRandomContainerElement(targets);
_target = Acore::Containers::SelectRandomContainerElement(targets);
targets.clear();
targets.push_back(_target);
if (Creature* caster = GetCaster()->ToCreature())
@ -2989,7 +2989,7 @@ public:
if (targets.empty())
return;
_target = acore::Containers::SelectRandomContainerElement(targets);
_target = Acore::Containers::SelectRandomContainerElement(targets);
}
void HandleScript(SpellEffIndex effIndex)

View file

@ -144,7 +144,7 @@ public:
}
};
struct ManaVoidSelector : public acore::unary_function<Unit*, bool>
struct ManaVoidSelector : public Acore::unary_function<Unit*, bool>
{
explicit ManaVoidSelector(WorldObject const* source) : _source(source) { }
@ -205,7 +205,7 @@ public:
bool Execute(uint64 /*currTime*/, uint32 /*diff*/) override
{
acore::CreatureWorker<ValithriaDespawner> worker(_creature, *this);
Acore::CreatureWorker<ValithriaDespawner> worker(_creature, *this);
_creature->VisitNearbyGridObject(333.0f, worker);
_creature->AI()->Reset();
_creature->setActive(false);
@ -525,7 +525,7 @@ public:
std::list<Creature*> archmages;
RisenArchmageCheck check;
acore::CreatureListSearcher<RisenArchmageCheck> searcher(me, archmages, check);
Acore::CreatureListSearcher<RisenArchmageCheck> searcher(me, archmages, check);
me->VisitNearbyGridObject(100.0f, searcher);
for (std::list<Creature*>::iterator itr = archmages.begin(); itr != archmages.end(); ++itr)
(*itr)->AI()->DoAction(ACTION_ENTER_COMBAT);
@ -1305,9 +1305,9 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::AllWorldObjectsInExactRange(GetCaster(), 250.0f, true));
targets.remove_if(Acore::AllWorldObjectsInExactRange(GetCaster(), 250.0f, true));
std::list<WorldObject*> list_copy = targets;
targets.remove_if(acore::UnitAuraCheck(true, SPELL_RECENTLY_SPAWNED));
targets.remove_if(Acore::UnitAuraCheck(true, SPELL_RECENTLY_SPAWNED));
if (targets.empty())
{
if (list_copy.empty())
@ -1315,7 +1315,7 @@ public:
targets = list_copy;
}
WorldObject* target = acore::Containers::SelectRandomContainerElement(targets);
WorldObject* target = Acore::Containers::SelectRandomContainerElement(targets);
targets.clear();
targets.push_back(target);
}
@ -1361,14 +1361,14 @@ public:
std::list<Creature*> summoners;
caster->GetCreaturesWithEntryInRange(summoners, 200.0f, NPC_WORLD_TRIGGER);
std::list<Creature*> list_copy = summoners;
summoners.remove_if(acore::UnitAuraCheck(true, SPELL_RECENTLY_SPAWNED));
summoners.remove_if(Acore::UnitAuraCheck(true, SPELL_RECENTLY_SPAWNED));
if (summoners.empty())
{
if (list_copy.empty())
return;
summoners = list_copy;
}
acore::Containers::RandomResize(summoners, 2);
Acore::Containers::RandomResize(summoners, 2);
for (uint32 i = 0; i < 3; ++i)
caster->CastSpell(summoners.front(), SPELL_SUMMON_SUPPRESSER, true);

View file

@ -840,7 +840,7 @@ public:
// get all nearby vrykul
std::list<Creature*> temp;
FrostwingVrykulSearcher check(me, 150.0f);
acore::CreatureListSearcher<FrostwingVrykulSearcher> searcher(me, temp, check);
Acore::CreatureListSearcher<FrostwingVrykulSearcher> searcher(me, temp, check);
me->VisitNearbyGridObject(150.0f, searcher);
_aliveTrash.clear();
@ -884,15 +884,15 @@ public:
_wipeCheckTimer = 3000;
Player* player = nullptr;
acore::AnyPlayerInObjectRangeCheck check(me, 140.0f);
acore::PlayerSearcher<acore::AnyPlayerInObjectRangeCheck> searcher(me, player, check);
Acore::AnyPlayerInObjectRangeCheck check(me, 140.0f);
Acore::PlayerSearcher<Acore::AnyPlayerInObjectRangeCheck> searcher(me, player, check);
me->VisitNearbyWorldObject(140.0f, searcher);
// wipe
if (!player || me->GetExactDist(4357.0f, 2606.0f, 350.0f) > 125.0f)
{
//Talk(SAY_CROK_DEATH);
FrostwingGauntletRespawner respawner;
acore::CreatureWorker<FrostwingGauntletRespawner> worker(me, respawner);
Acore::CreatureWorker<FrostwingGauntletRespawner> worker(me, respawner);
me->VisitNearbyGridObject(333.0f, worker);
return;
}
@ -1337,7 +1337,7 @@ public:
{
std::list<Creature*> targets = DoFindFriendlyMissingBuff(40.0f, SPELL_POWER_WORD_SHIELD);
if (!targets.empty())
DoCast(acore::Containers::SelectRandomContainerElement(targets), SPELL_POWER_WORD_SHIELD);
DoCast(Acore::Containers::SelectRandomContainerElement(targets), SPELL_POWER_WORD_SHIELD);
Events.ScheduleEvent(EVENT_ARNATH_PW_SHIELD, urand(15000, 20000));
break;
}
@ -1361,8 +1361,8 @@ public:
Creature* FindFriendlyCreature() const
{
Creature* target = nullptr;
acore::MostHPMissingInRange u_check(me, 60.0f, 0);
acore::CreatureLastSearcher<acore::MostHPMissingInRange> searcher(me, target, u_check);
Acore::MostHPMissingInRange u_check(me, 60.0f, 0);
Acore::CreatureLastSearcher<Acore::MostHPMissingInRange> searcher(me, target, u_check);
me->VisitNearbyGridObject(60.0f, searcher);
return target;
}
@ -1969,7 +1969,7 @@ public:
std::list<Creature*> wards;
GetCaster()->GetCreatureListWithEntryInGrid(wards, NPC_DEATHBOUND_WARD, 150.0f);
wards.sort(acore::ObjectDistanceOrderPred(GetCaster()));
wards.sort(Acore::ObjectDistanceOrderPred(GetCaster()));
for (std::list<Creature*>::iterator itr = wards.begin(); itr != wards.end(); ++itr)
{
if ((*itr)->IsAlive() && (*itr)->HasAura(SPELL_STONEFORM))
@ -2065,8 +2065,8 @@ public:
// First effect
void CountTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::ObjectTypeIdCheck(TYPEID_PLAYER, false));
targets.remove_if(acore::ObjectGUIDCheck(GetCaster()->GetGUID(), true));
targets.remove_if(Acore::ObjectTypeIdCheck(TYPEID_PLAYER, false));
targets.remove_if(Acore::ObjectGUIDCheck(GetCaster()->GetGUID(), true));
bool kill = true;
for (std::list<WorldObject*>::const_iterator itr = targets.begin(); itr != targets.end(); ++itr)
@ -2159,7 +2159,7 @@ public:
void RemoveAliveTarget(std::list<WorldObject*>& targets)
{
targets.remove_if(AliveCheck());
acore::Containers::RandomResize(targets, 2);
Acore::Containers::RandomResize(targets, 2);
}
void Land(SpellEffIndex /*effIndex*/)
@ -2274,7 +2274,7 @@ public:
instance->SetData(DATA_COLDFLAME_JETS, IN_PROGRESS);
std::list<Creature*> traps;
GetCreatureListWithEntryInGrid(traps, player, NPC_FROST_FREEZE_TRAP, 120.0f);
traps.sort(acore::ObjectDistanceOrderPred(player));
traps.sort(Acore::ObjectDistanceOrderPred(player));
bool instant = false;
for (std::list<Creature*>::iterator itr = traps.begin(); itr != traps.end(); ++itr)
{
@ -2332,7 +2332,7 @@ public:
if (!crok->IsAlive())
{
FrostwingGauntletRespawner respawner;
acore::CreatureWorker<FrostwingGauntletRespawner> worker(crok, respawner);
Acore::CreatureWorker<FrostwingGauntletRespawner> worker(crok, respawner);
crok->VisitNearbyGridObject(333.0f, worker);
return true;
}

View file

@ -1541,7 +1541,7 @@ public:
if (stalkers.empty())
return;
stalkers.sort(acore::ObjectDistanceOrderPred(teleporter));
stalkers.sort(Acore::ObjectDistanceOrderPred(teleporter));
stalkers.front()->CastSpell((Unit*)nullptr, SPELL_ARTHAS_TELEPORTER_CEREMONY, false);
stalkers.pop_front();
for (std::list<Creature*>::iterator itr = stalkers.begin(); itr != stalkers.end(); ++itr)
@ -1774,7 +1774,7 @@ public:
GetCreatureListWithEntryInGrid(triggers, terenas, NPC_WORLD_TRIGGER_INFINITE_AOI, 100.0f);
if (!triggers.empty())
{
triggers.sort(acore::ObjectDistanceOrderPred(terenas, false));
triggers.sort(Acore::ObjectDistanceOrderPred(terenas, false));
Unit* visual = triggers.front();
visual->CastSpell(visual, SPELL_FROSTMOURNE_TELEPORT_VISUAL, true);
}
@ -1845,7 +1845,7 @@ public:
return;
}
go->Relocate(acore::Containers::SelectRandomContainerElement(trapPositions));
go->Relocate(Acore::Containers::SelectRandomContainerElement(trapPositions));
}
protected:

View file

@ -160,7 +160,7 @@ const Position PosPlatform = {2640.5f, -3360.6f, 285.26f, 0.0f};
#define IN_LIVE_SIDE(who) (who->GetPositionY() < POS_Y_GATE)
// Predicate function to check that the r efzr unit is NOT on the same side as the source.
struct NotOnSameSide : public acore::unary_function<Unit*, bool>
struct NotOnSameSide : public Acore::unary_function<Unit*, bool>
{
bool m_inLiveSide;
explicit NotOnSameSide(Unit* pSource) : m_inLiveSide(IN_LIVE_SIDE(pSource)) {}
@ -677,7 +677,7 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::UnitAuraCheck(false, SPELL_SHADOW_MARK));
targets.remove_if(Acore::UnitAuraCheck(false, SPELL_SHADOW_MARK));
}
void Register() override

View file

@ -1196,8 +1196,8 @@ public:
else if (me->GetEntry() == NPC_LIVING_POISON)
{
Unit* target = nullptr;
acore::AnyUnfriendlyUnitInObjectRangeCheck u_check(me, me, 0.5f);
acore::UnitLastSearcher<acore::AnyUnfriendlyUnitInObjectRangeCheck> searcher(me, target, u_check);
Acore::AnyUnfriendlyUnitInObjectRangeCheck u_check(me, me, 0.5f);
Acore::UnitLastSearcher<Acore::AnyUnfriendlyUnitInObjectRangeCheck> searcher(me, target, u_check);
me->VisitNearbyObject(1.5f, searcher);
if (target)
{

View file

@ -271,7 +271,7 @@ public:
void SelectTarget(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::RandomCheck(50));
targets.remove_if(Acore::RandomCheck(50));
}
void HandlePull(SpellEffIndex effIndex)

View file

@ -1660,7 +1660,7 @@ public:
else
{
//! In the end, only one target should be selected
WorldObject* _target = acore::Containers::SelectRandomContainerElement(targets);
WorldObject* _target = Acore::Containers::SelectRandomContainerElement(targets);
targets.clear();
if (_target)
targets.push_back(_target);
@ -1709,8 +1709,8 @@ public:
{
// use 99 because it is 3d search
std::list<WorldObject*> targetList;
acore::WorldObjectSpellAreaTargetCheck check(99, GetExplTargetDest(), GetCaster(), GetCaster(), GetSpellInfo(), TARGET_CHECK_DEFAULT, nullptr);
acore::WorldObjectListSearcher<acore::WorldObjectSpellAreaTargetCheck> searcher(GetCaster(), targetList, check);
Acore::WorldObjectSpellAreaTargetCheck check(99, GetExplTargetDest(), GetCaster(), GetCaster(), GetSpellInfo(), TARGET_CHECK_DEFAULT, nullptr);
Acore::WorldObjectListSearcher<Acore::WorldObjectSpellAreaTargetCheck> searcher(GetCaster(), targetList, check);
GetCaster()->GetMap()->VisitAll(GetCaster()->m_positionX, GetCaster()->m_positionY, 99, searcher);
float minDist = 99 * 99;
Unit* target = nullptr;

View file

@ -424,9 +424,9 @@ public:
Map::PlayerList const& pl = me->GetMap()->GetPlayers();
for (Map::PlayerList::const_iterator itr = pl.begin(); itr != pl.end(); ++itr)
targets.push_back(itr->GetSource());
targets.remove_if(acore::ObjectTypeIdCheck(TYPEID_PLAYER, false));
targets.remove_if(acore::UnitAuraCheck(true, SPELL_FLASH_FREEZE_TRAPPED_PLAYER));
acore::Containers::RandomResize(targets, (RAID_MODE(2,3)));
targets.remove_if(Acore::ObjectTypeIdCheck(TYPEID_PLAYER, false));
targets.remove_if(Acore::UnitAuraCheck(true, SPELL_FLASH_FREEZE_TRAPPED_PLAYER));
Acore::Containers::RandomResize(targets, (RAID_MODE(2,3)));
for (std::list<Unit*>::const_iterator itr = targets.begin(); itr != targets.end(); ++itr)
{
float prevZ = (*itr)->GetPositionZ();
@ -1271,9 +1271,9 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::ObjectTypeIdCheck(TYPEID_PLAYER, false));
targets.remove_if(acore::UnitAuraCheck(true, SPELL_FLASH_FREEZE_TRAPPED_PLAYER));
acore::Containers::RandomResize(targets, 1);
targets.remove_if(Acore::ObjectTypeIdCheck(TYPEID_PLAYER, false));
targets.remove_if(Acore::UnitAuraCheck(true, SPELL_FLASH_FREEZE_TRAPPED_PLAYER));
Acore::Containers::RandomResize(targets, 1);
}
void Register() override

View file

@ -635,7 +635,7 @@ public:
};
// predicate function to select non main tank target
class StoneGripTargetSelector : public acore::unary_function<Unit*, bool>
class StoneGripTargetSelector : public Acore::unary_function<Unit*, bool>
{
public:
StoneGripTargetSelector(Creature* me, Unit const* victim) : _me(me), _victim(victim) {}

View file

@ -941,7 +941,7 @@ public:
void SelectTarget(std::list<WorldObject*>& targets)
{
if (Unit* victim = GetCaster()->GetVictim())
targets.remove_if(acore::ObjectGUIDCheck(victim->GetGUID(), true));
targets.remove_if(Acore::ObjectGUIDCheck(victim->GetGUID(), true));
}
void Register() override
@ -1023,7 +1023,7 @@ public:
void SelectTarget(std::list<WorldObject*>& targets)
{
if (Unit* victim = GetCaster()->GetVictim())
targets.remove_if(acore::ObjectGUIDCheck(victim->GetGUID(), true));
targets.remove_if(Acore::ObjectGUIDCheck(victim->GetGUID(), true));
}
void Register() override

View file

@ -540,7 +540,7 @@ public:
if (PlayerInDalaranList.empty())
return nullptr;
return acore::Containers::SelectRandomContainerElement(PlayerInDalaranList);
return Acore::Containers::SelectRandomContainerElement(PlayerInDalaranList);
}
void SendMailToPlayer(Player* player)

View file

@ -773,7 +773,7 @@ public:
if (GameObject* go = me->FindNearestGameObject(GO_SAC_LIGHTS_VENGEANCE_2, 150.0f))
go->Delete();
WretchedGhoulCleaner cleaner;
acore::CreatureWorker<WretchedGhoulCleaner> worker(me, cleaner);
Acore::CreatureWorker<WretchedGhoulCleaner> worker(me, cleaner);
me->VisitNearbyGridObject(150.0f, worker);
}
@ -987,7 +987,7 @@ public:
case 17: // kill vegard
{
WretchedGhoulCleaner cleaner;
acore::CreatureWorker<WretchedGhoulCleaner> worker(me, cleaner);
Acore::CreatureWorker<WretchedGhoulCleaner> worker(me, cleaner);
me->VisitNearbyGridObject(150.0f, worker);
if (Creature* c = me->FindNearestCreature(NPC_SAC_LIGHTS_VENGEANCE, 150.0f, true))
@ -1193,7 +1193,7 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(GhoulTargetCheck(GetSpellInfo()->Id == 70790));
acore::Containers::RandomResize(targets, 2);
Acore::Containers::RandomResize(targets, 2);
}
void HandleScript(SpellEffIndex effIndex)

View file

@ -192,8 +192,8 @@ public:
void SelectTarget(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::AllWorldObjectsInExactRange(GetCaster(), 100.0f, true));
targets.remove_if(acore::AllWorldObjectsInExactRange(GetCaster(), 25.0f, false));
targets.remove_if(Acore::AllWorldObjectsInExactRange(GetCaster(), 100.0f, true));
targets.remove_if(Acore::AllWorldObjectsInExactRange(GetCaster(), 25.0f, false));
}
void Register() override

View file

@ -199,7 +199,7 @@ public:
if (targets.empty())
return;
targets.sort(acore::ObjectDistanceOrderPred(GetCaster(), false));
targets.sort(Acore::ObjectDistanceOrderPred(GetCaster(), false));
if (targets.size() > GetSpellValue()->MaxAffectedTargets)
{
std::list<WorldObject*>::iterator itr = targets.begin();

View file

@ -258,7 +258,7 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::UnitAuraCheck(true, SPELL_SABER_LASH_IMMUNITY));
targets.remove_if(Acore::UnitAuraCheck(true, SPELL_SABER_LASH_IMMUNITY));
if (targets.size() <= 1)
FinishCast(SPELL_FAILED_DONT_REPORT);
}

View file

@ -613,7 +613,7 @@ public:
if (targets.empty())
return;
targets.sort(acore::ObjectDistanceOrderPred(GetCaster()));
targets.sort(Acore::ObjectDistanceOrderPred(GetCaster()));
WorldObject* target = targets.front();
targets.clear();
targets.push_back(target);

View file

@ -49,7 +49,7 @@ enum Misc
EVENT_TALK_KILL = 10
};
struct ShadowOfDeathSelector : public acore::unary_function<Unit*, bool>
struct ShadowOfDeathSelector : public Acore::unary_function<Unit*, bool>
{
bool operator()(Unit const* target) const
{

View file

@ -86,7 +86,7 @@ enum Misc
EVENT_KILL_TALK = 100
};
struct HammerOfJusticeSelector : public acore::unary_function<Unit*, bool>
struct HammerOfJusticeSelector : public Acore::unary_function<Unit*, bool>
{
Unit const* _me;
HammerOfJusticeSelector(Unit* me) : _me(me) { }

View file

@ -401,7 +401,7 @@ public:
void FilterTargets(std::list<WorldObject*>& unitList)
{
if (Unit* victim = GetCaster()->GetVictim())
unitList.remove_if(acore::ObjectGUIDCheck(victim->GetGUID(), true));
unitList.remove_if(Acore::ObjectGUIDCheck(victim->GetGUID(), true));
}
void Register() override

View file

@ -199,7 +199,7 @@ public:
void FilterTargets(std::list<WorldObject*>& unitList)
{
acore::Containers::RandomResize(unitList, 1);
Acore::Containers::RandomResize(unitList, 1);
}
void HandleDummy(SpellEffIndex effIndex)

View file

@ -291,7 +291,7 @@ public:
playerList.push_back(player);
if (!playerList.empty())
target = acore::Containers::SelectRandomContainerElement(playerList);
target = Acore::Containers::SelectRandomContainerElement(playerList);
}
}

View file

@ -241,7 +241,7 @@ public:
void FilterTargets(std::list<WorldObject*>& unitList)
{
acore::Containers::RandomResize(unitList, 1);
Acore::Containers::RandomResize(unitList, 1);
}
void HandleScriptEffect(SpellEffIndex effIndex)

View file

@ -833,7 +833,7 @@ public:
void SelectTarget(std::list<WorldObject*>& targets)
{
if (Unit* victim = GetCaster()->GetVictim())
targets.remove_if(acore::ObjectGUIDCheck(victim->GetGUID(), true));
targets.remove_if(Acore::ObjectGUIDCheck(victim->GetGUID(), true));
}
void Register() override
@ -993,7 +993,7 @@ public:
targetList.push_back(target);
}
acore::Containers::RandomResize(targetList, 5);
Acore::Containers::RandomResize(targetList, 5);
for (std::list<Unit*>::const_iterator itr = targetList.begin(); itr != targetList.end(); ++itr)
GetCaster()->CastSpell(*itr, SPELL_NETHER_BEAM_DAMAGE, true);
}

View file

@ -697,8 +697,8 @@ public:
me->SetObjectScale(large ? 2.0f : 1.0f);
std::list<WorldObject*> ClusterList;
acore::AllWorldObjectsInRange objects(me, searchDistance);
acore::WorldObjectListSearcher<acore::AllWorldObjectsInRange> searcher(me, ClusterList, objects);
Acore::AllWorldObjectsInRange objects(me, searchDistance);
Acore::WorldObjectListSearcher<Acore::AllWorldObjectsInRange> searcher(me, ClusterList, objects);
me->VisitNearbyObject(searchDistance, searcher);
for (std::list<WorldObject*>::const_iterator i = ClusterList.begin(); i != ClusterList.end(); ++i)

View file

@ -1757,7 +1757,7 @@ public:
}
if (!UnitsWithMana.empty())
{
DoCast(acore::Containers::SelectRandomContainerElement(UnitsWithMana), SPELL_MANA_BURN);
DoCast(Acore::Containers::SelectRandomContainerElement(UnitsWithMana), SPELL_MANA_BURN);
ManaBurnTimer = 8000 + (rand() % 10 * 1000); // 8-18 sec cd
}
else

View file

@ -155,8 +155,8 @@ public:
_initialSelection = false;
// Find victim of Summon Gargoyle spell
std::list<Unit*> targets;
acore::AnyUnfriendlyUnitInObjectRangeCheck u_check(me, me, 50);
acore::UnitListSearcher<acore::AnyUnfriendlyUnitInObjectRangeCheck> searcher(me, targets, u_check);
Acore::AnyUnfriendlyUnitInObjectRangeCheck u_check(me, me, 50);
Acore::UnitListSearcher<Acore::AnyUnfriendlyUnitInObjectRangeCheck> searcher(me, targets, u_check);
me->VisitNearbyObject(50, searcher);
for (std::list<Unit*>::const_iterator iter = targets.begin(); iter != targets.end(); ++iter)
if ((*iter)->GetAura(SPELL_DK_SUMMON_GARGOYLE_1, me->GetOwnerGUID()))

View file

@ -1359,7 +1359,7 @@ public:
FinishCast(SPELL_FAILED_CANT_DO_THAT_RIGHT_NOW);
return;
}
target = acore::Containers::SelectRandomContainerElement(targets);
target = Acore::Containers::SelectRandomContainerElement(targets);
targets.clear();
targets.push_back(target);
}
@ -2240,7 +2240,7 @@ public:
return;
}
WorldObject* target = acore::Containers::SelectRandomContainerElement(targets);
WorldObject* target = Acore::Containers::SelectRandomContainerElement(targets);
targets.clear();
targets.push_back(target);
_corpse = true;

View file

@ -1050,7 +1050,7 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
acore::Containers::RandomResize(targets, 2);
Acore::Containers::RandomResize(targets, 2);
}
void HandleDummy(SpellEffIndex /*effIndex*/)
@ -1276,7 +1276,7 @@ public:
return;
}
tempTargets.sort(acore::HealthPctOrderPred());
tempTargets.sort(Acore::HealthPctOrderPred());
targets.clear();
targets.push_back(tempTargets.front());
}
@ -1313,13 +1313,13 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::RaidCheck(GetCaster(), false));
targets.remove_if(Acore::RaidCheck(GetCaster(), false));
uint32 const maxTargets = GetCaster()->HasAura(SPELL_DRUID_GLYPH_OF_WILD_GROWTH) ? 6 : 5;
if (targets.size() > maxTargets)
{
targets.sort(acore::HealthPctOrderPred());
targets.sort(Acore::HealthPctOrderPred());
targets.resize(maxTargets);
}

View file

@ -768,7 +768,7 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove(GetCaster());
acore::Containers::RandomResize(targets, _count);
Acore::Containers::RandomResize(targets, _count);
}
void Register() override
@ -1719,8 +1719,8 @@ public:
float max_range = GetSpellInfo()->GetMaxRange(false);
WorldObject* result = nullptr;
// search for nearby enemy corpse in range
acore::AnyDeadUnitSpellTargetInRangeCheck check(caster, max_range, GetSpellInfo(), TARGET_CHECK_CORPSE);
acore::WorldObjectSearcher<acore::AnyDeadUnitSpellTargetInRangeCheck> searcher(caster, result, check);
Acore::AnyDeadUnitSpellTargetInRangeCheck check(caster, max_range, GetSpellInfo(), TARGET_CHECK_CORPSE);
Acore::WorldObjectSearcher<Acore::AnyDeadUnitSpellTargetInRangeCheck> searcher(caster, result, check);
caster->GetMap()->VisitFirstFound(caster->m_positionX, caster->m_positionY, max_range, searcher);
if (!result)
return SPELL_FAILED_NO_EDIBLE_CORPSES;
@ -4812,13 +4812,13 @@ public:
}
}
targets.remove_if(acore::PowerCheck(POWER_MANA, false));
targets.remove_if(Acore::PowerCheck(POWER_MANA, false));
uint8 const maxTargets = 10;
if (targets.size() > maxTargets)
{
targets.sort(acore::PowerPctOrderPred(POWER_MANA));
targets.sort(Acore::PowerPctOrderPred(POWER_MANA));
targets.resize(maxTargets);
}
}

View file

@ -977,8 +977,8 @@ public:
float max_range = GetSpellInfo()->GetMaxRange(false);
WorldObject* result = nullptr;
// search for nearby enemy corpse in range
acore::AnyDeadUnitSpellTargetInRangeCheck check(caster, max_range, GetSpellInfo(), TARGET_CHECK_ENEMY);
acore::WorldObjectSearcher<acore::AnyDeadUnitSpellTargetInRangeCheck> searcher(caster, result, check);
Acore::AnyDeadUnitSpellTargetInRangeCheck check(caster, max_range, GetSpellInfo(), TARGET_CHECK_ENEMY);
Acore::WorldObjectSearcher<Acore::AnyDeadUnitSpellTargetInRangeCheck> searcher(caster, result, check);
caster->GetMap()->VisitFirstFound(caster->m_positionX, caster->m_positionY, max_range, searcher);
if (!result)
return SPELL_FAILED_NO_EDIBLE_CORPSES;

View file

@ -1998,7 +1998,7 @@ public:
if (targets.size() < 2)
return;
targets.sort(acore::HealthPctOrderPred());
targets.sort(Acore::HealthPctOrderPred());
WorldObject* target = targets.front();
targets.clear();

View file

@ -652,7 +652,7 @@ public:
void CountTargets(std::list<WorldObject*>& targetList)
{
acore::Containers::RandomResize(targetList, GetSpellValue()->MaxAffectedTargets);
Acore::Containers::RandomResize(targetList, GetSpellValue()->MaxAffectedTargets);
_targetCount = targetList.size();
}
@ -767,7 +767,7 @@ public:
if (targets.size() > maxTargets)
{
targets.sort(acore::HealthPctOrderPred());
targets.sort(Acore::HealthPctOrderPred());
targets.resize(maxTargets);
}
}

View file

@ -152,13 +152,13 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::RaidCheck(GetCaster(), false));
targets.remove_if(Acore::RaidCheck(GetCaster(), false));
uint32 const maxTargets = GetCaster()->HasAura(SPELL_PRIEST_GLYPH_OF_CIRCLE_OF_HEALING) ? 6 : 5; // Glyph of Circle of Healing
if (targets.size() > maxTargets)
{
targets.sort(acore::HealthPctOrderPred());
targets.sort(Acore::HealthPctOrderPred());
targets.resize(maxTargets);
}
}
@ -235,13 +235,13 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::RaidCheck(GetCaster(), false));
targets.remove_if(Acore::RaidCheck(GetCaster(), false));
uint32 const maxTargets = 3;
if (targets.size() > maxTargets)
{
targets.sort(acore::HealthPctOrderPred());
targets.sort(Acore::HealthPctOrderPred());
targets.resize(maxTargets);
}
}
@ -361,14 +361,14 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::PowerCheck(POWER_MANA, false));
targets.remove_if(acore::RaidCheck(GetCaster(), false));
targets.remove_if(Acore::PowerCheck(POWER_MANA, false));
targets.remove_if(Acore::RaidCheck(GetCaster(), false));
uint32 const maxTargets = 3;
if (targets.size() > maxTargets)
{
targets.sort(acore::PowerPctOrderPred(POWER_MANA));
targets.sort(Acore::PowerPctOrderPred(POWER_MANA));
targets.resize(maxTargets);
}
}
@ -549,7 +549,7 @@ public:
void FilterTargets(std::list<WorldObject*>& unitList)
{
unitList.remove_if(acore::ObjectGUIDCheck(GetCaster()->GetGuidValue(UNIT_FIELD_CHANNEL_OBJECT), true));
unitList.remove_if(Acore::ObjectGUIDCheck(GetCaster()->GetGuidValue(UNIT_FIELD_CHANNEL_OBJECT), true));
}
void Register() override

View file

@ -2426,8 +2426,8 @@ public:
Unit* caster = GetCaster();
// Check for player that is in 65 y range
std::list<Player*> playerList;
acore::AnyPlayerInObjectRangeCheck checker(caster, 65.0f);
acore::PlayerListSearcher<acore::AnyPlayerInObjectRangeCheck> searcher(caster, playerList, checker);
Acore::AnyPlayerInObjectRangeCheck checker(caster, 65.0f);
Acore::PlayerListSearcher<Acore::AnyPlayerInObjectRangeCheck> searcher(caster, playerList, checker);
caster->VisitNearbyWorldObject(65.0f, searcher);
for (std::list<Player*>::const_iterator itr = playerList.begin(); itr != playerList.end(); ++itr)
// Check if found player target is on fly mount or using flying form

View file

@ -395,7 +395,7 @@ public:
{
while (!_targets.empty())
{
ObjectGuid guid = acore::Containers::SelectRandomContainerElement(_targets);
ObjectGuid guid = Acore::Containers::SelectRandomContainerElement(_targets);
if (Unit* target = ObjectAccessor::GetUnit(*GetTarget(), guid))
{
// xinef: target may be no longer valid

View file

@ -424,7 +424,7 @@ public:
if (targets.size() < 2)
return;
targets.sort(acore::HealthPctOrderPred());
targets.sort(Acore::HealthPctOrderPred());
WorldObject* target = targets.front();
targets.clear();
@ -512,8 +512,8 @@ public:
void RemoveInvalidTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::UnitAuraCheck(true, SPELL_SHAMAN_SATED));
targets.remove_if(acore::UnitAuraCheck(true, SPELL_SHAMAN_EXHAUSTION));
targets.remove_if(Acore::UnitAuraCheck(true, SPELL_SHAMAN_SATED));
targets.remove_if(Acore::UnitAuraCheck(true, SPELL_SHAMAN_EXHAUSTION));
}
void ApplyDebuff()
@ -999,8 +999,8 @@ public:
void RemoveInvalidTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::UnitAuraCheck(true, SPELL_SHAMAN_EXHAUSTION));
targets.remove_if(acore::UnitAuraCheck(true, SPELL_SHAMAN_SATED));
targets.remove_if(Acore::UnitAuraCheck(true, SPELL_SHAMAN_EXHAUSTION));
targets.remove_if(Acore::UnitAuraCheck(true, SPELL_SHAMAN_SATED));
}
void ApplyDebuff()

View file

@ -168,7 +168,7 @@ public:
void FilterTargets(std::list<WorldObject*>& unitList)
{
GetCaster()->RemoveAurasDueToSpell(SPELL_WARRIOR_SPELL_REFLECTION);
unitList.sort(acore::ObjectDistanceOrderPred(GetCaster()));
unitList.sort(Acore::ObjectDistanceOrderPred(GetCaster()));
while (unitList.size() > GetSpellValue()->MaxAffectedTargets)
unitList.pop_back();
}

View file

@ -671,7 +671,7 @@ public:
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(acore::UnitAuraCheck(true, SPELL_SLEEP));
targets.remove_if(Acore::UnitAuraCheck(true, SPELL_SLEEP));
}
void Register() override

View file

@ -349,8 +349,8 @@ public:
{
timer = 0;
std::list<Player*> players;
acore::AnyPlayerExactPositionInGameObjectRangeCheck checker(go, 0.3f);
acore::PlayerListSearcher<acore::AnyPlayerExactPositionInGameObjectRangeCheck> searcher(go, players, checker);
Acore::AnyPlayerExactPositionInGameObjectRangeCheck checker(go, 0.3f);
Acore::PlayerListSearcher<Acore::AnyPlayerExactPositionInGameObjectRangeCheck> searcher(go, players, checker);
go->VisitNearbyWorldObject(0.3f, searcher);
if (players.size() > 0)
@ -396,8 +396,8 @@ public:
{
timer = 0;
std::list<Player*> players;
acore::AnyPlayerExactPositionInGameObjectRangeCheck checker(go, 0.3f);
acore::PlayerListSearcher<acore::AnyPlayerExactPositionInGameObjectRangeCheck> searcher(go, players, checker);
Acore::AnyPlayerExactPositionInGameObjectRangeCheck checker(go, 0.3f);
Acore::PlayerListSearcher<Acore::AnyPlayerExactPositionInGameObjectRangeCheck> searcher(go, players, checker);
go->VisitNearbyWorldObject(0.3f, searcher);
if (players.size() > 0)