Bazaar developer reference

CvHomelandAI::PlotScientistMoves()

Defined in
CvHomelandAI.cpp, line 1847
Class
CvHomelandAI
Hook name
CivHooks::CvHomelandAI_PlotScientistMoves

Hooks

static bool BeforeCvHomelandAI_PlotScientistMoves(CvHomelandAI* self);static void AfterCvHomelandAI_PlotScientistMoves(CvHomelandAI* self);static void ReplaceCvHomelandAI_PlotScientistMoves(void (*original)(CvHomelandAI*), CvHomelandAI* self);CivRegisterBefore<CivHooks::CvHomelandAI_PlotScientistMoves>(host, &BeforeCvHomelandAI_PlotScientistMoves);CivRegisterAfter<CivHooks::CvHomelandAI_PlotScientistMoves>(host, &AfterCvHomelandAI_PlotScientistMoves);CivRegisterReplace<CivHooks::CvHomelandAI_PlotScientistMoves>(host, &ReplaceCvHomelandAI_PlotScientistMoves);

Code

1846/// Find moves for great scientists1847void CvHomelandAI::PlotScientistMoves()1848{1849	ClearCurrentMoveUnits();18501851	// Loop through all recruited units1852	for(list<int>::iterator it = m_CurrentTurnUnits.begin(); it != m_CurrentTurnUnits.end(); ++it)1853	{1854		UnitHandle pUnit = m_pPlayer->getUnit(*it);1855		if(pUnit)1856		{1857			if(pUnit->AI_getUnitAIType() == UNITAI_SCIENTIST)1858			{1859				CvHomelandUnit unit;1860				unit.SetID(pUnit->GetID());1861				m_CurrentMoveUnits.push_back(unit);1862			}1863		}1864	}18651866	if(m_CurrentMoveUnits.size() > 0)1867	{1868		ExecuteScientistMoves();1869	}1870}

Calls

Called by