Bazaar developer reference

CvCity::CountWorkedResource(ResourceTypes) const

Defined in
CvCity.cpp, line 17975
Class
CvCity
Hook name
CivHooks::CvCity_CountWorkedResource

Hooks

static bool BeforeCvCity_CountWorkedResource(const CvCity* self, ResourceTypes iResourceType, int& result);static void AfterCvCity_CountWorkedResource(const CvCity* self, ResourceTypes iResourceType, int& result);static int ReplaceCvCity_CountWorkedResource(int (*original)(const CvCity*, ResourceTypes), const CvCity* self, ResourceTypes iResourceType);CivRegisterBefore<CivHooks::CvCity_CountWorkedResource>(host, &BeforeCvCity_CountWorkedResource);CivRegisterAfter<CivHooks::CvCity_CountWorkedResource>(host, &AfterCvCity_CountWorkedResource);CivRegisterReplace<CivHooks::CvCity_CountWorkedResource>(host, &ReplaceCvCity_CountWorkedResource);

Code

17975int CvCity::CountWorkedResource(ResourceTypes iResourceType) const17976{17977	int iCount = 0;17978	int iX = getX(); int iY = getY(); int iOwner = getOwner();1797917980#if defined(MOD_GLOBAL_CITY_WORKING)17981	for (int iCityPlotLoop = 0; iCityPlotLoop < GetNumWorkablePlots(); iCityPlotLoop++)17982#else17983	for (int iCityPlotLoop = 0; iCityPlotLoop < NUM_CITY_PLOTS; iCityPlotLoop++)17984#endif17985	{17986		CvPlot* pLoopPlot = plotCity(iX, iY, iCityPlotLoop);1798717988		// Invalid plot or not owned by this player17989		if (pLoopPlot == NULL || pLoopPlot->getOwner() != iOwner) {17990			continue;17991		}1799217993		// Not being worked by this city17994		if (pLoopPlot->getWorkingCity() != this || !pLoopPlot->isBeingWorked()) {17995			continue;17996		}1799717998		if (pLoopPlot->HasResource(iResourceType)) {17999			++iCount;18000		}18001	}18002	18003	return iCount;18004}

Calls

Called by