CvMap::getRandomResourceQuantity(ResourceTypes)
- Defined in
- CvMap.cpp, line 1175
- Class
- CvMap
- Hook name
CivHooks::CvMap_getRandomResourceQuantity
Hooks
static bool BeforeCvMap_getRandomResourceQuantity(CvMap* self, ResourceTypes eIndex, int& result);static void AfterCvMap_getRandomResourceQuantity(CvMap* self, ResourceTypes eIndex, int& result);static int ReplaceCvMap_getRandomResourceQuantity(int (*original)(CvMap*, ResourceTypes), CvMap* self, ResourceTypes eIndex);CivRegisterBefore<CivHooks::CvMap_getRandomResourceQuantity>(host, &BeforeCvMap_getRandomResourceQuantity);CivRegisterAfter<CivHooks::CvMap_getRandomResourceQuantity>(host, &AfterCvMap_getRandomResourceQuantity);CivRegisterReplace<CivHooks::CvMap_getRandomResourceQuantity>(host, &ReplaceCvMap_getRandomResourceQuantity);
Code
1175int CvMap::getRandomResourceQuantity(ResourceTypes eIndex)1176{1177 CvResourceInfo* thisResourceInfo = GC.getResourceInfo(eIndex);1178 if(thisResourceInfo == NULL)1179 return 0;11801181 int iNumRands = 0;11821183 // Find how many types of resources quantities there can be to pick from1184 for(int iLoop = 0; iLoop < GC.getNUM_RESOURCE_QUANTITY_TYPES(); iLoop++)1185 {1186 if(thisResourceInfo->getResourceQuantityType(iLoop) <= 0)1187 {1188 break;1189 }11901191 iNumRands++;1192 }11931194 CvAssertMsg(iNumRands > 0, "Resource should have at least 1 Quantity type to choose from")11951196 int iRand = GC.getGame().getJonRandNum(iNumRands, "Picking from random Resource Quantity types");11971198 return thisResourceInfo->getResourceQuantityType(iRand);1199}