Bazaar developer reference

CvTreasury::AverageIncome(int)

Defined in
CvTreasury.cpp, line 842
Class
CvTreasury
Hook name
CivHooks::CvTreasury_AverageIncome

Hooks

static bool BeforeCvTreasury_AverageIncome(CvTreasury* self, int iTurns, double& result);static void AfterCvTreasury_AverageIncome(CvTreasury* self, int iTurns, double& result);static double ReplaceCvTreasury_AverageIncome(double (*original)(CvTreasury*, int), CvTreasury* self, int iTurns);CivRegisterBefore<CivHooks::CvTreasury_AverageIncome>(host, &BeforeCvTreasury_AverageIncome);CivRegisterAfter<CivHooks::CvTreasury_AverageIncome>(host, &AfterCvTreasury_AverageIncome);CivRegisterReplace<CivHooks::CvTreasury_AverageIncome>(host, &ReplaceCvTreasury_AverageIncome);

Code

841/// Average change in gold balance over N turns842double CvTreasury::AverageIncome(int iTurns)843{844	CvAssertMsg(iTurns > 0, "Invalid number of turns parameter");845846	if(m_GoldChangeForTurnTimes100.size() > 0)847	{848		int iSamples = 0;849		int iIndex = m_GoldChangeForTurnTimes100.size() - 1;850		int iTotal = 0;851852		while(iSamples < iTurns)853		{854			iTotal += m_GoldChangeForTurnTimes100[iIndex];855			iSamples++;856		}857858		return ((double)iTotal / (double)iSamples / 100);859	}860861	return 0;862}

Calls

Called by