CvPlayerPolicies::CanGetAdvancedTenet() const
- Defined in
- CvPolicyClasses.cpp, line 4679
- Class
- CvPlayerPolicies
- Hook name
CivHooks::CvPlayerPolicies_CanGetAdvancedTenet
Hooks
static bool BeforeCvPlayerPolicies_CanGetAdvancedTenet(const CvPlayerPolicies* self, bool& result);static void AfterCvPlayerPolicies_CanGetAdvancedTenet(const CvPlayerPolicies* self, bool& result);static bool ReplaceCvPlayerPolicies_CanGetAdvancedTenet(bool (*original)(const CvPlayerPolicies*), const CvPlayerPolicies* self);CivRegisterBefore<CivHooks::CvPlayerPolicies_CanGetAdvancedTenet>(host, &BeforeCvPlayerPolicies_CanGetAdvancedTenet);CivRegisterAfter<CivHooks::CvPlayerPolicies_CanGetAdvancedTenet>(host, &AfterCvPlayerPolicies_CanGetAdvancedTenet);CivRegisterReplace<CivHooks::CvPlayerPolicies_CanGetAdvancedTenet>(host, &ReplaceCvPlayerPolicies_CanGetAdvancedTenet);
Code
4678// Can I purchase a Level 2 or 3 tenet?4679bool CvPlayerPolicies::CanGetAdvancedTenet() const4680{4681 PolicyBranchTypes eIdeology = GetLateGamePolicyTree();4682 if (eIdeology == NO_POLICY_BRANCH_TYPE)4683 {4684 return false;4685 }4686 4687 CvPolicyXMLEntries* pkPolicies = GC.GetGamePolicies();4688 for(int iI = 0; iI < GC.getNumPolicyInfos(); iI++)4689 {4690 const PolicyTypes eTenet(static_cast<PolicyTypes>(iI));4691 CvPolicyEntry* pEntry = pkPolicies->GetPolicyEntry(eTenet);4692 if (pEntry && pEntry->GetPolicyBranchType() == eIdeology && pEntry->GetLevel() > 1 && !HasPolicy(eTenet) && CanAdoptPolicy(eTenet))4693 {4694 return true;4695 }4696 }46974698 return false;4699}
Calls
- CvGlobals::GetGamePolicies() const
- CvGlobals::getNumPolicyInfos()
- CvPlayerPolicies::CanAdoptPolicy(PolicyTypes, bool) const
- CvPlayerPolicies::GetLateGamePolicyTree() const
- CvPlayerPolicies::HasPolicy(PolicyTypes) const
- CvPolicyEntry::GetLevel() const
- CvPolicyEntry::GetPolicyBranchType() const
- CvPolicyXMLEntries::GetPolicyEntry(int)