Code:
CvUnitInfo& CvGlobals::getUnitInfo(UnitTypes eUnitNum)
{
FAssert(eUnitNum > -1);
FAssert(eUnitNum < GC.getNumUnitInfos());
return *(m_paUnitInfo[eUnitNum]);
}
1: be an assert fail
2: cause a CTD because it is an assert fail?
Before this I have this assert fail from supercheese Specialist enhancement code:
Code:
void CvCity::changeSpecialistUnhappiness(int iChange)
{
if (iChange != 0)
{
m_iSpecialistUnhappiness += iChange;
FAssert(getSpecialistUnhappiness() >= 0);
AI_setAssignWorkDirty(true);
if (getTeam() == GC.getGameINLINE().getActiveTeam())
{
setInfoDirty(true);
}
}
}
What is even more confusing is that it doesn't happen all the time... just some games..