CvPlayer::initFreeState(CvGameInitialItemsOverrides &)
- Defined in
- CvPlayer.cpp, line 1507
- Class
- CvPlayer
- Hook name
CivHooks::CvPlayer_initFreeState
Hooks
static bool BeforeCvPlayer_initFreeState(CvPlayer* self, CvGameInitialItemsOverrides& kOverrides);static void AfterCvPlayer_initFreeState(CvPlayer* self, CvGameInitialItemsOverrides& kOverrides);static void ReplaceCvPlayer_initFreeState(void (*original)(CvPlayer*, CvGameInitialItemsOverrides&), CvPlayer* self, CvGameInitialItemsOverrides& kOverrides);CivRegisterBefore<CivHooks::CvPlayer_initFreeState>(host, &BeforeCvPlayer_initFreeState);CivRegisterAfter<CivHooks::CvPlayer_initFreeState>(host, &AfterCvPlayer_initFreeState);CivRegisterReplace<CivHooks::CvPlayer_initFreeState>(host, &ReplaceCvPlayer_initFreeState);
Code
1507void CvPlayer::initFreeState(CvGameInitialItemsOverrides& kOverrides)1508{1509 CvHandicapInfo& kHandicapInfo = getHandicapInfo();15101511 // Starting Gold1512 if(kOverrides.GrantInitialGoldPerPlayer[GetID()])1513 {1514 int iInitialGold = kHandicapInfo.getStartingGold() + GC.getGame().getStartEraInfo().getStartingGold();1515 iInitialGold *= GC.getGame().getGameSpeedInfo().getTrainPercent();1516 iInitialGold /= 100;1517 GetTreasury()->SetGold(iInitialGold);1518 }15191520 // Free Culture1521 if(kOverrides.GrantInitialCulturePerPlayer[GetID()])1522 {1523 int iInitialCulture = kHandicapInfo.getStartingPolicyPoints() + GC.getGame().getStartEraInfo().getStartingCulture();1524 iInitialCulture *= GC.getGame().getGameSpeedInfo().getTrainPercent();1525 iInitialCulture /= 100;1526 setJONSCulture(iInitialCulture);15271528 // I think policy points is a better name than Jon's Culture, don't you?1529 ChangeJONSCulturePerTurnForFree(kHandicapInfo.getFreeCulturePerTurn()); // No, IMNSHO ;P1530 }1531 // Extra Happiness from Luxuries1532 ChangeExtraHappinessPerLuxury(kHandicapInfo.getExtraHappinessPerLuxury());15331534 // Free starting Resources1535 for(int iLoop = 0; iLoop < GC.getNumResourceInfos(); iLoop++)1536 {1537 const ResourceTypes eResource = static_cast<ResourceTypes>(iLoop);1538 CvResourceInfo* pkResource = GC.getResourceInfo(eResource);1539 if(pkResource)1540 {1541 if(pkResource->getStartingResourceQuantity() != 0)1542 {1543 changeNumResourceTotal(eResource, pkResource->getStartingResourceQuantity());1544 }1545 }15461547 }15481549 DoUpdateHappiness();15501551 clearResearchQueue();1552}
Calls
- CvEraInfo::getStartingCulture() const
- CvEraInfo::getStartingGold() const
- CvGame::getGameSpeedInfo() const
- CvGame::getStartEraInfo() const
- CvGameSpeedInfo::getTrainPercent() const
- CvGlobals::getGame()
- CvGlobals::getNumResourceInfos()
- CvGlobals::getResourceInfo(ResourceTypes)
- CvHandicapInfo::getExtraHappinessPerLuxury() const
- CvHandicapInfo::getFreeCulturePerTurn() const
- CvHandicapInfo::getStartingGold() const
- CvHandicapInfo::getStartingPolicyPoints() const
- CvPlayer::ChangeExtraHappinessPerLuxury(int)
- CvPlayer::ChangeJONSCulturePerTurnForFree(int)
- CvPlayer::changeNumResourceTotal(ResourceTypes, int, bool)
- CvPlayer::clearResearchQueue()
- CvPlayer::DoUpdateHappiness()
- CvPlayer::getHandicapInfo() const
- CvPlayer::GetID() const
- CvPlayer::GetTreasury() const
- CvPlayer::setJONSCulture(int)
- CvResourceInfo::getStartingResourceQuantity() const
- CvTreasury::SetGold(int)
std::_Vb_reference::operator boolstd::vector::operator[]