CvPlayerPolicies::GetNumericModifier(PolicyModifierType)
- Defined in
- CvPolicyClasses.cpp, line 3023
- Class
- CvPlayerPolicies
- Hook name
CivHooks::CvPlayerPolicies_GetNumericModifier
Hooks
static bool BeforeCvPlayerPolicies_GetNumericModifier(CvPlayerPolicies* self, PolicyModifierType eType, int& result);static void AfterCvPlayerPolicies_GetNumericModifier(CvPlayerPolicies* self, PolicyModifierType eType, int& result);static int ReplaceCvPlayerPolicies_GetNumericModifier(int (*original)(CvPlayerPolicies*, PolicyModifierType), CvPlayerPolicies* self, PolicyModifierType eType);CivRegisterBefore<CivHooks::CvPlayerPolicies_GetNumericModifier>(host, &BeforeCvPlayerPolicies_GetNumericModifier);CivRegisterAfter<CivHooks::CvPlayerPolicies_GetNumericModifier>(host, &AfterCvPlayerPolicies_GetNumericModifier);CivRegisterReplace<CivHooks::CvPlayerPolicies_GetNumericModifier>(host, &ReplaceCvPlayerPolicies_GetNumericModifier);
Code
3022/// Get numeric modifier by adding up its value from all purchased policies3023int CvPlayerPolicies::GetNumericModifier(PolicyModifierType eType)3024{3025 int rtnValue = 0;30263027 int iNumPolicies = m_pPolicies->GetNumPolicies();3028 for(int i = 0; i < iNumPolicies; i++)3029 {3030 // Do we have this policy?3031 if(m_pabHasPolicy[i] && !IsPolicyBlocked((PolicyTypes)i))3032 {3033 // Yes, so add it to our counts3034 switch(eType)3035 {3036 case POLICYMOD_EXTRA_HAPPINESS:3037 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetExtraHappiness();3038 break;3039 case POLICYMOD_EXTRA_HAPPINESS_PER_CITY:3040 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetExtraHappinessPerCity();3041 break;3042 case POLICYMOD_GREAT_PERSON_RATE:3043 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetGreatPeopleRateModifier();3044 break;3045 case POLICYMOD_GREAT_GENERAL_RATE:3046 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetGreatGeneralRateModifier();3047 break;3048 case POLICYMOD_GREAT_ADMIRAL_RATE:3049 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetGreatAdmiralRateModifier();3050 break;3051 case POLICYMOD_GREAT_WRITER_RATE:3052 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetGreatWriterRateModifier();3053 break;3054 case POLICYMOD_GREAT_ARTIST_RATE:3055 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetGreatArtistRateModifier();3056 break;3057 case POLICYMOD_GREAT_MUSICIAN_RATE:3058 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetGreatMusicianRateModifier();3059 break;3060 case POLICYMOD_GREAT_MERCHANT_RATE:3061 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetGreatMerchantRateModifier();3062 break;3063 case POLICYMOD_GREAT_SCIENTIST_RATE:3064 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetGreatScientistRateModifier();3065 break;3066 case POLICYMOD_DOMESTIC_GREAT_GENERAL_RATE:3067 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetDomesticGreatGeneralRateModifier();3068 break;3069 case POLICYMOD_POLICY_COST_MODIFIER:3070 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetPolicyCostModifier();3071 break;3072 case POLICYMOD_WONDER_PRODUCTION_MODIFIER:3073 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetWonderProductionModifier();3074 break;3075 case POLICYMOD_BUILDING_PRODUCTION_MODIFIER:3076 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetBuildingProductionModifier();3077 break;3078 case POLICYMOD_FREE_EXPERIENCE:3079 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetFreeExperience();3080 break;3081 case POLICYMOD_EXTRA_CULTURE_FROM_IMPROVEMENTS:3082 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetCultureImprovementChange();3083 break;3084 case POLICYMOD_CULTURE_FROM_KILLS:3085 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetCultureFromKills();3086 break;3087 case POLICYMOD_EMBARKED_EXTRA_MOVES:3088 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetEmbarkedExtraMoves();3089 break;3090 case POLICYMOD_CULTURE_FROM_BARBARIAN_KILLS:3091 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetCultureFromBarbarianKills();3092 break;3093 case POLICYMOD_GOLD_FROM_KILLS:3094 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetGoldFromKills();3095 break;3096 case POLICYMOD_CULTURE_FROM_GARRISON:3097 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetCulturePerGarrisonedUnit();3098 break;3099 case POLICYMOD_UNIT_FREQUENCY_MODIFIER:3100 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetCityStateUnitFrequencyModifier();3101 break;3102 case POLICYMOD_TOURISM_MOD_COMMON_FOE:3103 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetCommonFoeTourismModifier();3104 break;3105 case POLICYMOD_TOURISM_MOD_LESS_HAPPY:3106 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetLessHappyTourismModifier();3107 break;3108 case POLICYMOD_TOURISM_MOD_SHARED_IDEOLOGY:3109 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetSharedIdeologyTourismModifier();3110 break;3111 case POLICYMOD_TRADE_MISSION_GOLD_MODIFIER:3112 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetTradeMissionGoldModifier();3113 break;3114 case POLICYMOD_FAITH_COST_MODIFIER:3115 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetFaithCostModifier();3116 break;3117 case POLICYMOD_CULTURAL_PLUNDER_MULTIPLIER:3118 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetCulturalPlunderMultiplier();3119 break;3120 case POLICYMOD_STEAL_TECH_SLOWER_MODIFIER:3121 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetStealTechSlowerModifier();3122 break;3123 case POLICYMOD_STEAL_TECH_FASTER_MODIFIER:3124 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetStealTechFasterModifier();3125 break;3126 case POLICYMOD_CATCH_SPIES_MODIFIER:3127 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetCatchSpiesModifier();3128 break;3129 case POLICYMOD_BUILDING_PURCHASE_COST_MODIFIER:3130 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetBuildingPurchaseCostModifier();3131 break;3132 case POLICYMOD_LAND_TRADE_GOLD_CHANGE:3133 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetLandTradeRouteGoldChange();3134 break;3135 case POLICYMOD_SEA_TRADE_GOLD_CHANGE:3136 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetSeaTradeRouteGoldChange();3137 break;3138 case POLICYMOD_SHARED_IDEOLOGY_TRADE_CHANGE:3139 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetSharedIdeologyTradeGoldChange();3140 break;3141 case POLICYMOD_RIGGING_ELECTION_MODIFIER:3142 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetRiggingElectionModifier();3143 break;3144 case POLICYMOD_MILITARY_UNIT_GIFT_INFLUENCE:3145 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetMilitaryUnitGiftExtraInfluence();3146 break;3147 case POLICYMOD_PROTECTED_MINOR_INFLUENCE:3148 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetProtectedMinorPerTurnInfluence();3149 break;3150 case POLICYMOD_AFRAID_INFLUENCE:3151 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetAfraidMinorPerTurnInfluence();3152 break;3153 case POLICYMOD_MINOR_BULLY_SCORE_MODIFIER:3154 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetMinorBullyScoreModifier();3155 break;3156 case POLICYMOD_THEMING_BONUS:3157 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetThemingBonusMultiplier();3158 break;3159 case POLICYMOD_CITY_STATE_TRADE_CHANGE:3160 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetCityStateTradeChange();3161 break;3162 case POLICYMOD_INTERNAL_TRADE_MODIFIER:3163 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetInternalTradeRouteYieldModifier();3164 break;3165 case POLICYMOD_SHARED_RELIGION_TOURISM_MODIFIER:3166 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetSharedReligionTourismModifier();3167 break;3168 case POLICYMOD_TRADE_ROUTE_TOURISM_MODIFIER:3169 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetTradeRouteTourismModifier();3170 break;3171 case POLICYMOD_OPEN_BORDERS_TOURISM_MODIFIER:3172 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetOpenBordersTourismModifier();3173#if defined(MOD_RELIGION_CONVERSION_MODIFIERS)3174 case POLICYMOD_CONVERSION_MODIFIER:3175 rtnValue += m_pPolicies->GetPolicyEntry(i)->GetConversionModifier();3176 break;3177#endif3178 }3179 }3180 }31813182 return rtnValue;3183}
Calls
- CvPlayerPolicies::IsPolicyBlocked(PolicyTypes) const
- CvPolicyEntry::GetAfraidMinorPerTurnInfluence() const
- CvPolicyEntry::GetBuildingProductionModifier() const
- CvPolicyEntry::GetBuildingPurchaseCostModifier() const
- CvPolicyEntry::GetCatchSpiesModifier() const
- CvPolicyEntry::GetCityStateTradeChange() const
- CvPolicyEntry::GetCityStateUnitFrequencyModifier() const
- CvPolicyEntry::GetCommonFoeTourismModifier() const
- CvPolicyEntry::GetConversionModifier() const
- CvPolicyEntry::GetCulturalPlunderMultiplier() const
- CvPolicyEntry::GetCultureFromBarbarianKills() const
- CvPolicyEntry::GetCultureFromKills() const
- CvPolicyEntry::GetCultureImprovementChange() const
- CvPolicyEntry::GetCulturePerGarrisonedUnit() const
- CvPolicyEntry::GetDomesticGreatGeneralRateModifier() const
- CvPolicyEntry::GetEmbarkedExtraMoves() const
- CvPolicyEntry::GetExtraHappiness() const
- CvPolicyEntry::GetExtraHappinessPerCity() const
- CvPolicyEntry::GetFaithCostModifier() const
- CvPolicyEntry::GetFreeExperience() const
- CvPolicyEntry::GetGoldFromKills() const
- CvPolicyEntry::GetGreatAdmiralRateModifier() const
- CvPolicyEntry::GetGreatArtistRateModifier() const
- CvPolicyEntry::GetGreatGeneralRateModifier() const
- CvPolicyEntry::GetGreatMerchantRateModifier() const
- CvPolicyEntry::GetGreatMusicianRateModifier() const
- CvPolicyEntry::GetGreatPeopleRateModifier() const
- CvPolicyEntry::GetGreatScientistRateModifier() const
- CvPolicyEntry::GetGreatWriterRateModifier() const
- CvPolicyEntry::GetInternalTradeRouteYieldModifier() const
- CvPolicyEntry::GetLandTradeRouteGoldChange() const
- CvPolicyEntry::GetLessHappyTourismModifier() const
- CvPolicyEntry::GetMilitaryUnitGiftExtraInfluence() const
- CvPolicyEntry::GetMinorBullyScoreModifier() const
- CvPolicyEntry::GetOpenBordersTourismModifier() const
- CvPolicyEntry::GetPolicyCostModifier() const
- CvPolicyEntry::GetProtectedMinorPerTurnInfluence() const
- CvPolicyEntry::GetRiggingElectionModifier() const
- CvPolicyEntry::GetSeaTradeRouteGoldChange() const
- CvPolicyEntry::GetSharedIdeologyTourismModifier() const
- CvPolicyEntry::GetSharedIdeologyTradeGoldChange() const
- CvPolicyEntry::GetSharedReligionTourismModifier() const
- CvPolicyEntry::GetStealTechFasterModifier() const
- CvPolicyEntry::GetStealTechSlowerModifier() const
- CvPolicyEntry::GetThemingBonusMultiplier() const
- CvPolicyEntry::GetTradeMissionGoldModifier() const
- CvPolicyEntry::GetTradeRouteTourismModifier() const
- CvPolicyEntry::GetWonderProductionModifier() const
- CvPolicyXMLEntries::GetNumPolicies()
- CvPolicyXMLEntries::GetPolicyEntry(int)
Called by
42 functions in 10 files
- CvCity::GetFaithPurchaseCost(BuildingTypes)
- CvCity::GetFaithPurchaseCost(UnitTypes, bool)
- CvCity::GetPurchaseCost(BuildingTypes)
- CvCity::init(int, PlayerTypes, int, int, bool, bool, ReligionTypes, const char *)
- CvCityCulture::GetThemingBonus(BuildingClassTypes) const
- CvCityCulture::GetTourismMultiplier(PlayerTypes, bool, bool, bool, bool, bool) const
- CvCityCulture::GetTourismTooltip()
- CvPlayerCulture::GetTourismModifierOpenBorders() const
- CvPlayerCulture::GetTourismModifierSharedReligion() const
- CvPlayerCulture::GetTourismModifierTradeRoute() const
- CvPlayerCulture::GetTourismModifierWith(PlayerTypes) const
- CvPlayerCulture::GetTourismModifierWithTooltip(PlayerTypes) const
- CvPlayerEspionage::CalcPerTurn(int, CvCity *, int)
- CvPlayerEspionage::ProcessSpy(uint)
- CvMinorCivAI::CalculateBullyMetric(PlayerTypes, bool, CvString *)
- CvMinorCivAI::DoElection()
- CvMinorCivAI::GetFriendshipChangePerTurnTimes100(PlayerTypes)
- CvMinorCivAI::GetFriendshipFromUnitGift(PlayerTypes, bool, bool)
- CvMinorCivAI::GetSpawnBaseTurns(PlayerTypes)
- CvPlayer::DoYieldBonusFromKill(YieldTypes, CvUnit *, CvUnit *, UnitTypes, int, int, bool, int &)
- CvPlayer::GetHappinessFromPolicies() const
- CvPlayer::acquireCity(CvCity *, bool, bool, bool)
- CvPlayer::getProductionModifier(BuildingTypes, CvString *) const
- CvPlayer::recomputeFreeExperience()
- CvPlayer::recomputeGreatPeopleModifiers()
- CvPlayer::recomputePolicyCostModifier()
- CvPlot::calculateYield(YieldTypes, bool)
- CvPlot::getYieldWithBuild(BuildTypes, YieldTypes, bool, PlayerTypes) const
- CvGameReligions::GetAdjacentCityReligiousPressure(ReligionTypes, CvCity *, CvCity *, int &, bool)
- CvPlayerTrade::GetTradeConnectionPolicyValueTimes100(const TradeConnection &, YieldTypes)
- CvPlayerTrade::GetTradeConnectionValueTimes100(const TradeConnection &, YieldTypes, bool)
- CvUnit::GetConversionStrength(const CvCity *) const
- CvUnit::baseMoves(DomainTypes) const
- CvUnit::getTradeGold(const CvPlot *) const
- CvUnit::setXY(int, int, bool, bool, bool, bool, bool)
- CvLuaPlayer::lGetPolicyCatchSpiesModifier(lua_State *)
- CvLuaPlayer::lGetPolicyGreatArtistRateModifier(lua_State *)
- CvLuaPlayer::lGetPolicyGreatMerchantRateModifier(lua_State *)
- CvLuaPlayer::lGetPolicyGreatMusicianRateModifier(lua_State *)
- CvLuaPlayer::lGetPolicyGreatPeopleRateModifier(lua_State *)
- CvLuaPlayer::lGetPolicyGreatScientistRateModifier(lua_State *)
- CvLuaPlayer::lGetPolicyGreatWriterRateModifier(lua_State *)