bool PhaseMgr::NeedsPhaseUpdateWithData(PhaseUpdateData const updateData) const { PhaseDefinitionStore::const_iterator itr = _PhaseDefinitionStore->find(player->GetZoneId()); if (itr != _PhaseDefinitionStore->end()) { for (PhaseDefinitionContainer::const_iterator phase = itr->second.begin(); phase != itr->second.end(); ++phase) { ConditionList conditionList = sConditionMgr->GetConditionsForPhaseDefinition(phase->zoneId, phase->entry); for (ConditionList::const_iterator condition = conditionList.begin(); condition != conditionList.end(); ++condition) if (updateData.IsConditionRelated(*condition)) return true; } } return false; }
bool PhaseMgr::NeedsPhaseUpdateWithData(PhaseUpdateData const updateData) { PhaseDefinitionStore::const_iterator itr = _PhaseDefinitionStore->find(player->GetZoneId()); if (itr != _PhaseDefinitionStore->end()) { for (PhaseDefinitionContainer::const_iterator phase = itr->second.begin(); phase != itr->second.end(); ++phase) { std::vector<PlayerCondition const*> conditions; sObjectMgr.GetConditions((*phase)->conditionId, conditions); for (std::vector<PlayerCondition const*>::const_iterator itr = conditions.begin(); itr != conditions.end(); ++itr) if (updateData.IsConditionRelated(*itr)) return true; } } return false; }