Bazaar developer reference

CvStartPositioner::ChopIntoThreeRegions(bool, CvStartRegion *, CvStartRegion *, CvStartRegion *)

Defined in
CvStartPositioner.cpp, line 576
Class
CvStartPositioner
Hook name
CivHooks::CvStartPositioner_ChopIntoThreeRegions

Hooks

static bool BeforeCvStartPositioner_ChopIntoThreeRegions(CvStartPositioner* self, bool bTaller, CvStartRegion* region, CvStartRegion* secondRegion, CvStartRegion* thirdRegion);static void AfterCvStartPositioner_ChopIntoThreeRegions(CvStartPositioner* self, bool bTaller, CvStartRegion* region, CvStartRegion* secondRegion, CvStartRegion* thirdRegion);static void ReplaceCvStartPositioner_ChopIntoThreeRegions(void (*original)(CvStartPositioner*, bool, CvStartRegion*, CvStartRegion*, CvStartRegion*), CvStartPositioner* self, bool bTaller, CvStartRegion* region, CvStartRegion* secondRegion, CvStartRegion* thirdRegion);// CivHooks.h gives this hook point no types, so nothing checks these hooks' parameters.host->RegisterHook(host->pluginIndex, CivHooks::CvStartPositioner_ChopIntoThreeRegions::ID, CIV_HOOK_BEFORE, (void*)&BeforeCvStartPositioner_ChopIntoThreeRegions);host->RegisterHook(host->pluginIndex, CivHooks::CvStartPositioner_ChopIntoThreeRegions::ID, CIV_HOOK_AFTER, (void*)&AfterCvStartPositioner_ChopIntoThreeRegions);host->RegisterHook(host->pluginIndex, CivHooks::CvStartPositioner_ChopIntoThreeRegions::ID, CIV_HOOK_REPLACE, (void*)&ReplaceCvStartPositioner_ChopIntoThreeRegions);

Code

575/// Performs the mechanics of dividing a region into three equal fertility subregions576void CvStartPositioner::ChopIntoThreeRegions(bool bTaller, CvStartRegion* region, CvStartRegion* secondRegion, CvStartRegion* thirdRegion)577{578	CvAssert(region);579	if(!region) return;580	CvAssert(secondRegion);581	if(!secondRegion) return;582	CvAssert(thirdRegion);583	if(!thirdRegion) return;584585	// Chop off the first third586	ChopIntoTwoRegions(bTaller, region, secondRegion, 33);587588	// Chop the bigger piece in half589	ChopIntoTwoRegions(bTaller, secondRegion, thirdRegion, 50);590}

Calls

Called by