CvStartPositioner::DivideContinentIntoRegions(CvContinent)
- Defined in
- CvStartPositioner.cpp, line 306
- Class
- CvStartPositioner
- Hook name
CivHooks::CvStartPositioner_DivideContinentIntoRegions
Hooks
static bool BeforeCvStartPositioner_DivideContinentIntoRegions(CvStartPositioner* self, CvContinent continent);static void AfterCvStartPositioner_DivideContinentIntoRegions(CvStartPositioner* self, CvContinent continent);static void ReplaceCvStartPositioner_DivideContinentIntoRegions(void (*original)(CvStartPositioner*, CvContinent), CvStartPositioner* self, CvContinent continent);// CivHooks.h gives this hook point no types, so nothing checks these hooks' parameters.host->RegisterHook(host->pluginIndex, CivHooks::CvStartPositioner_DivideContinentIntoRegions::ID, CIV_HOOK_BEFORE, (void*)&BeforeCvStartPositioner_DivideContinentIntoRegions);host->RegisterHook(host->pluginIndex, CivHooks::CvStartPositioner_DivideContinentIntoRegions::ID, CIV_HOOK_AFTER, (void*)&AfterCvStartPositioner_DivideContinentIntoRegions);host->RegisterHook(host->pluginIndex, CivHooks::CvStartPositioner_DivideContinentIntoRegions::ID, CIV_HOOK_REPLACE, (void*)&ReplaceCvStartPositioner_DivideContinentIntoRegions);
Code
305/// Compute the fertility of each tile on the map306void CvStartPositioner::DivideContinentIntoRegions(CvContinent continent)307{308 // Create a start region out of the entire continent309 CvStartRegion region;310 region.m_uiFertility = continent.GetFertility();311 region.m_iAreaID = continent.GetArea();312 region.m_Boundaries = GC.getMap().getArea(continent.GetArea())->getAreaBoundaries();313314 // Make sure this is a continent that is getting a start region315 if(continent.GetNumRegions() > 0)316 {317 // If so, call recursive routine to subdivide it appropriately318 SubdivideRegion(region, continent.GetNumRegions());319 }320321 // If the continent is too small for a major civ, it still could be useful for a minor322 else323 {324 region.m_bLargeEnoughForMajorCiv = false;325 m_StartRegionVector.push_back(region);326 }327}
Calls
- CvArea::getAreaBoundaries() const
CvAreaBoundaries::operator=- CvContinent::GetArea() const
- CvContinent::GetFertility() const
- CvContinent::GetNumRegions() const
- CvGlobals::getMap()
- CvMap::getArea(int)
- CvStartPositioner::SubdivideRegion(CvStartRegion, int)
- CvStartRegion::CvStartRegion()
- CvStartRegion::CvStartRegion(const CvStartRegion &)
std::vector::push_back