CvCityCulture::GetBaseTourism()
- Defined in
- CvCultureClasses.cpp, line 4551
- Class
- CvCityCulture
- Hook name
CivHooks::CvCityCulture_GetBaseTourism
Hooks
static bool BeforeCvCityCulture_GetBaseTourism(CvCityCulture* self, int& result);static void AfterCvCityCulture_GetBaseTourism(CvCityCulture* self, int& result);static int ReplaceCvCityCulture_GetBaseTourism(int (*original)(CvCityCulture*), CvCityCulture* self);CivRegisterBefore<CivHooks::CvCityCulture_GetBaseTourism>(host, &BeforeCvCityCulture_GetBaseTourism);CivRegisterAfter<CivHooks::CvCityCulture_GetBaseTourism>(host, &AfterCvCityCulture_GetBaseTourism);CivRegisterReplace<CivHooks::CvCityCulture_GetBaseTourism>(host, &ReplaceCvCityCulture_GetBaseTourism);
Code
4550/// What is the tourism output ignoring player-specific modifiers?4551int CvCityCulture::GetBaseTourism()4552{4553 int iBase = GetBaseTourismBeforeModifiers();45544555 int iModifier = 0;45564557 CvPlayer &kPlayer = GET_PLAYER(m_pCity->getOwner());4558 int iTechSpreadModifier = kPlayer.GetInfluenceSpreadModifier();4559 if (iTechSpreadModifier > 0)4560 {4561 iModifier += iTechSpreadModifier;4562 }45634564 if (kPlayer.GetTourismBonusTurns() > 0)4565 {4566 iModifier += GC.getTEMPORARY_TOURISM_BOOST_MOD();4567 }45684569 int iLeagueCityModifier = GC.getGame().GetGameLeagues()->GetCityTourismModifier(m_pCity->getOwner(), m_pCity);4570 if (iLeagueCityModifier > 0)4571 {4572 iModifier += iLeagueCityModifier;4573 }45744575 if (kPlayer.isGoldenAge())4576 {4577 iModifier += kPlayer.GetPlayerTraits()->GetGoldenAgeTourismModifier();4578 }4579 45804581 int iBuildingMod = 0;4582 for(int iBuildingClassLoop = 0; iBuildingClassLoop < GC.getNumBuildingClassInfos(); iBuildingClassLoop++)4583 {4584 CvCivilizationInfo& playerCivilizationInfo = kPlayer.getCivilizationInfo();4585 BuildingTypes eBuilding = (BuildingTypes)playerCivilizationInfo.getCivilizationBuildings((BuildingClassTypes)iBuildingClassLoop);4586 if (eBuilding != NO_BUILDING)4587 {4588 CvBuildingEntry *pkEntry = GC.getBuildingInfo(eBuilding);4589 if (pkEntry)4590 {4591 iBuildingMod = kPlayer.GetPlayerPolicies()->GetBuildingClassTourismModifier((BuildingClassTypes)iBuildingClassLoop);4592 if (iBuildingMod != 0 && m_pCity->GetCityBuildings()->GetNumBuilding(eBuilding) > 0)4593 {4594#if defined(MOD_BUGFIX_MINOR)4595 iModifier += iBuildingMod * m_pCity->GetCityBuildings()->GetNumBuilding(eBuilding);4596#else4597 iModifier += iBuildingMod;4598#endif4599 }4600 }4601 }4602 }46034604 if (iModifier > 0)4605 {4606 iBase = iBase * (100 + iModifier) / 100;4607 }46084609 return iBase;4610}
Calls
- CvCity::GetCityBuildings() const
- CvCity::getOwner() const
- CvCityBuildings::GetNumBuilding(BuildingTypes) const
- CvCityCulture::GetBaseTourismBeforeModifiers()
- CvCivilizationInfo::getCivilizationBuildings(int) const
- CvGame::GetGameLeagues()
- CvGameLeagues::GetCityTourismModifier(PlayerTypes, const CvCity *)
- CvGlobals::getBuildingInfo(BuildingTypes)
- CvGlobals::getGame()
- CvGlobals::getNumBuildingClassInfos()
- CvGlobals::getTEMPORARY_TOURISM_BOOST_MOD()
- CvPlayer::getCivilizationInfo() const
- CvPlayer::GetInfluenceSpreadModifier() const
- CvPlayer::GetPlayerPolicies() const
- CvPlayer::GetPlayerTraits() const
- CvPlayer::GetTourismBonusTurns() const
- CvPlayer::isGoldenAge() const
- CvPlayerAI::getPlayer(PlayerTypes)
- CvPlayerPolicies::GetBuildingClassTourismModifier(BuildingClassTypes)
- CvPlayerTraits::GetGoldenAgeTourismModifier() const
Called by
- CityStrategyAIHelpers::IsTestCityStrategy_NeedTourismBuilding(CvCity *)
- CvPlayerCulture::GetInfluencePerTurn(PlayerTypes) const
- CvPlayerCulture::GetTourism()
- CvLuaCity::lGetBaseTourism(lua_State *)
- CvLuaGame::lGetTradeRoute(lua_State *)
- CvLuaPlayer::lGetTradeRoutes(lua_State *)
- CvLuaPlayer::lGetTradeRoutesAvailable(lua_State *)
- CvLuaPlayer::lGetTradeRoutesToYou(lua_State *)