CvLeague::IsActiveResolution(ResolutionTypes, int)
- Defined in
- CvVotingClasses.cpp, line 2769
- Class
- CvLeague
- Hook name
CivHooks::CvLeague_IsActiveResolution
Hooks
static bool BeforeCvLeague_IsActiveResolution(CvLeague* self, ResolutionTypes eResolution, int iProposerChoice, bool& result);static void AfterCvLeague_IsActiveResolution(CvLeague* self, ResolutionTypes eResolution, int iProposerChoice, bool& result);static bool ReplaceCvLeague_IsActiveResolution(bool (*original)(CvLeague*, ResolutionTypes, int), CvLeague* self, ResolutionTypes eResolution, int iProposerChoice);CivRegisterBefore<CivHooks::CvLeague_IsActiveResolution>(host, &BeforeCvLeague_IsActiveResolution);CivRegisterAfter<CivHooks::CvLeague_IsActiveResolution>(host, &AfterCvLeague_IsActiveResolution);CivRegisterReplace<CivHooks::CvLeague_IsActiveResolution>(host, &ReplaceCvLeague_IsActiveResolution);
Code
2768//antonjs: todo: refactor:2769bool CvLeague::IsActiveResolution(ResolutionTypes eResolution, int iProposerChoice)2770{2771 CvAssertMsg(eResolution >= 0, "Invalid resolution type. Please send Anton your save file and version.");2772 CvAssertMsg(eResolution < GC.getNumResolutionInfos(), "Resolution index out of bounds. Please send Anton your save file and version.");27732774 for (uint i = 0; i < m_vActiveResolutions.size(); i++)2775 {2776 if (m_vActiveResolutions[i].GetType() == eResolution)2777 {2778 CvResolutionEntry* pInfo = GC.getResolutionInfo(eResolution);2779 if (pInfo != NULL)2780 {2781 // Unique Type resolutions can only have one active resolution of its type at once2782 if (pInfo->IsUniqueType())2783 {2784 return true;2785 }27862787 if (m_vActiveResolutions[i].GetProposerDecision()->GetDecision() == iProposerChoice)2788 {2789 return true;2790 }2791 }2792 }2793 }27942795 return false;2796}