CvLeague::CheckResolutionsValid()
- Defined in
- CvVotingClasses.cpp, line 5677
- Class
- CvLeague
- Hook name
CivHooks::CvLeague_CheckResolutionsValid
Hooks
static bool BeforeCvLeague_CheckResolutionsValid(CvLeague* self);static void AfterCvLeague_CheckResolutionsValid(CvLeague* self);static void ReplaceCvLeague_CheckResolutionsValid(void (*original)(CvLeague*), CvLeague* self);CivRegisterBefore<CivHooks::CvLeague_CheckResolutionsValid>(host, &BeforeCvLeague_CheckResolutionsValid);CivRegisterAfter<CivHooks::CvLeague_CheckResolutionsValid>(host, &AfterCvLeague_CheckResolutionsValid);CivRegisterReplace<CivHooks::CvLeague_CheckResolutionsValid>(host, &ReplaceCvLeague_CheckResolutionsValid);
Code
5677void CvLeague::CheckResolutionsValid()5678{5679 for (ActiveResolutionList::iterator it = m_vActiveResolutions.begin(); it != m_vActiveResolutions.end(); ++it)5680 {5681 if (!IsResolutionEffectsValid(it->GetType(), it->GetProposerDecision()->GetDecision()))5682 {5683 for (uint i = 0; i < m_vMembers.size(); i++)5684 {5685 it->RemoveEffects(m_vMembers[i].ePlayer);5686 }5687 m_vActiveResolutions.erase(it);5688 //antonjs: todo: relocate these league-level effects:5689 for (uint i = 0; i < m_vMembers.size(); i++)5690 {5691 GET_PLAYER(m_vMembers[i].ePlayer).DoUpdateHappiness();5692 GET_PLAYER(m_vMembers[i].ePlayer).updateYield();5693 GET_PLAYER(m_vMembers[i].ePlayer).recomputeGreatPeopleModifiers();5694 }5695 it--;5696 }5697 }5698}
Calls
BaseVector::beginBaseVector::endBaseVector::operator[]BaseVector::size- CvActiveResolution::RemoveEffects(PlayerTypes)
- CvLeague::IsResolutionEffectsValid(ResolutionTypes, int, CvString *)
- CvPlayer::DoUpdateHappiness()
- CvPlayer::recomputeGreatPeopleModifiers()
- CvPlayer::updateYield()
- CvPlayerAI::getPlayer(PlayerTypes)
- CvProposerDecision::GetDecision()
- CvResolution::GetProposerDecision()
- CvResolution::GetType() const
FStaticVector::erase