Bazaar developer reference

CvTacticalAI::DeleteTemporaryZone(CvPlot *)

Defined in
CvTacticalAI.cpp, line 475
Class
CvTacticalAI
Hook name
CivHooks::CvTacticalAI_DeleteTemporaryZone

Hooks

static bool BeforeCvTacticalAI_DeleteTemporaryZone(CvTacticalAI* self, CvPlot* pPlot);static void AfterCvTacticalAI_DeleteTemporaryZone(CvTacticalAI* self, CvPlot* pPlot);static void ReplaceCvTacticalAI_DeleteTemporaryZone(void (*original)(CvTacticalAI*, CvPlot*), CvTacticalAI* self, CvPlot* pPlot);CivRegisterBefore<CivHooks::CvTacticalAI_DeleteTemporaryZone>(host, &BeforeCvTacticalAI_DeleteTemporaryZone);CivRegisterAfter<CivHooks::CvTacticalAI_DeleteTemporaryZone>(host, &AfterCvTacticalAI_DeleteTemporaryZone);CivRegisterReplace<CivHooks::CvTacticalAI_DeleteTemporaryZone>(host, &ReplaceCvTacticalAI_DeleteTemporaryZone);

Code

474/// Remove a temporary dominance zone we no longer need to track475void CvTacticalAI::DeleteTemporaryZone(CvPlot* pPlot)476{477	FStaticVector<CvTemporaryZone, SAFE_ESTIMATE_NUM_TEMP_ZONES, true, c_eCiv5GameplayDLL, 0> zonesCopy;478479	// Copy zones over480	zonesCopy = m_TempZones;481482	m_TempZones.clear();483484	// Copy back to original vector any whose coords don't match485	for(unsigned int iI = 0; iI < zonesCopy.size(); iI++)486	{487		if(zonesCopy[iI].GetX() != pPlot->getX() ||488		        zonesCopy[iI].GetY() != pPlot->getY())489		{490			m_TempZones.push_back(zonesCopy[iI]);491		}492	}493}

Calls

Called by