alerum68
Priest of Hiroshima
When we put SimCutie's in, I'm sure that we must have used her color values. I remember when we were making the Options that EF was using them in there as well.
What it means, is wherever in the code there is an Assert: Test if Statement is True. If the statement being checked is False, the game crashes.I got a copy of the game DLL with asserts on (what ever that means). It threw this error when I tried to bring up the in-game log ...
def setLogFileEnabled(self, LogFileEnabled):
BugAutolog.setEnabled(LogFileEnabled)
BugAutolog.write()
def Enabled(self):
if BugAutolog.isEnabled():
return True
else:
return False
int CvGlobals::getNumColorInfos()
{
return (int)m_paColorInfo.size();
}
CvColorInfo& CvGlobals::getColorInfo(ColorTypes e)
{
FAssert(e > -1);
FAssert(e < GC.getNumColorInfos());
return *(m_paColorInfo[e]);
}
DllExport int getNumColorInfos();
std::vector<CvColorInfo*>& getColorInfo();
DllExport CvColorInfo& getColorInfo(ColorTypes e);
CvColorInfo* CyGlobalContext::getColorInfo(int i) const
{
return (i>=0 && i<GC.getNumColorInfos()) ? &GC.getColorInfo((ColorTypes)i) : NULL;
}
bool CvPlayerColorInfo::read(CvXMLLoadUtility* pXML)
{
CvString szTextVal;
if (!CvInfoBase::read(pXML))
{
return false;
}
pXML->GetChildXmlValByName(szTextVal, "ColorTypePrimary");
m_iColorTypePrimary = pXML->FindInInfoClass( szTextVal, GC.getColorInfo(), sizeof(GC.getColorInfo((ColorTypes)0)), GC.getNumColorInfos());
pXML->GetChildXmlValByName(szTextVal, "ColorTypeSecondary");
m_iColorTypeSecondary = pXML->FindInInfoClass( szTextVal, GC.getColorInfo(), sizeof(GC.getColorInfo((ColorTypes)0)), GC.getNumColorInfos());
pXML->GetChildXmlValByName(szTextVal, "TextColorType");
m_iTextColorType = pXML->FindInInfoClass( szTextVal, GC.getColorInfo(), sizeof(GC.getColorInfo((ColorTypes)0)), GC.getNumColorInfos());
return true;
}
bool CvYieldInfo::read(CvXMLLoadUtility* pXML)
{
CvString szTextVal;
if (!CvInfoBase::read(pXML))
{
return false;
}
int iNumSibs, j;
pXML->GetChildXmlValByName(&m_iHillsChange, "iHillsChange");
pXML->GetChildXmlValByName(&m_iPeakChange, "iPeakChange");
pXML->GetChildXmlValByName(&m_iLakeChange, "iLakeChange");
pXML->GetChildXmlValByName(&m_iCityChange, "iCityChange");
pXML->GetChildXmlValByName(&m_iPopulationChangeOffset, "iPopulationChangeOffset");
pXML->GetChildXmlValByName(&m_iPopulationChangeDivisor, "iPopulationChangeDivisor");
pXML->GetChildXmlValByName(&m_iMinCity, "iMinCity");
pXML->GetChildXmlValByName(&m_iTradeModifier, "iTradeModifier");
pXML->GetChildXmlValByName(&m_iGoldenAgeYield, "iGoldenAgeYield");
pXML->GetChildXmlValByName(&m_iGoldenAgeYieldThreshold, "iGoldenAgeYieldThreshold");
pXML->GetChildXmlValByName(&m_iAIWeightPercent, "iAIWeightPercent");
pXML->GetChildXmlValByName(szTextVal, "ColorType");
m_iColorType = pXML->FindInInfoClass(szTextVal, GC.getColorInfo(), sizeof(GC.getColorInfo((ColorTypes)0)), GC.getNumColorInfos());
<more of this section that I snipped>
if (bLoaded && Validate())
{
SetGlobalClassInfo(&GC.getColorInfo(), "Civ4ColorVals/ColorVals/ColorVal", &GC.getNumColorInfos());
}
if ( eventType == self.EventKeyDown ):
if (int(key) == int(InputTypes.KB_T) and self.bShift and self.bCtrl):
for i in range(0, 126): #range(0,1000000):
ci = gc.getColorInfo(i)
ci2 = "XML Val %i %s" % (i, ci.getXmlVal())
print ci2
- <ColorVal>
<Type>COLOR_PLAYER_LIGHT_BLACK</Type>
<fRed>0.251</fRed>
<fGreen>0.251</fGreen>
<fBlue>0.251</fBlue>
<fAlpha>1.00</fAlpha>
</ColorVal>
- <ColorVal>
<Type>COLOR_PLAYER_LIGHT_BLACK_TEXT</Type>
<fRed>0.392</fRed>
<fGreen>0.392</fGreen>
<fBlue>0.392</fBlue>
<fAlpha>1.00</fAlpha>
</ColorVal>
<PlayerColorInfo>
<Type>PLAYERCOLOR_BLACK_AND_GREEN</Type>
<ColorTypePrimary>COLOR_PLAYER_LIGHT_BLACK</ColorTypePrimary>
<ColorTypeSecondary>COLOR_PLAYER_MIDDLE_GREEN</ColorTypeSecondary>
<TextColorType>COLOR_PLAYER_LIGHT_BLACK_TEXT</TextColorType>
</PlayerColorInfo>
<ColorVal>
<Type>COLOR_PLAYER_LIGHT_BLACK</Type>
<fRed>0.251</fRed>
<fGreen>0.251</fGreen>
<fBlue>0.251</fBlue>
<fAlpha>1.00</fAlpha>
</ColorVal>
<ColorVal>
<Type>COLOR_PLAYER_LIGHT_BLACK_TEXT</Type>
<fRed>0.392</fRed>
<fGreen>0.392</fGreen>
<fBlue>0.392</fBlue>
<fAlpha>1.00</fAlpha>
</ColorVal>