void CvGameTextMgr::setIdeologyHelp(CvWStringBuffer &szBuffer, IdeologyTypes eIdeology, bool bCivilopedia)
{
UnitTypes eFreeUnit;
CvWString szTempBuffer;
if (NO_IDEOLOGY == eIdeology)
{
return;
}
CvIdeologyInfo& kIdeology = GC.getIdeologyInfo(eIdeology);
if (!bCivilopedia)
{
szBuffer.append(CvWString::format(SETCOLR L"%s" ENDCOLR , TEXT_COLOR("COLOR_HIGHLIGHT_TEXT"), kIdeology.getDescription()));
}
szTempBuffer.clear();
if (!bCivilopedia)
{
if (kIdeology.getTechPrereq() != NO_TECH)
{
szBuffer.append(NEWLINE);
szBuffer.append(gDLL->getText("TXT_KEY_IDEOLOGY_FOUNDED_FIRST", GC.getTechInfo((TechTypes)kIdeology.getTechPrereq()).getTextKeyWide()));
}
}
szBuffer.append(NEWLINE);
if (kIdeology.getFreeUnitClass() != NO_UNITCLASS)
{
if (GC.getGameINLINE().getActivePlayer() != NO_PLAYER)
{
eFreeUnit = ((UnitTypes)(GC.getCivilizationInfo(GET_PLAYER(GC.getGameINLINE().getActivePlayer()).getCivilizationType()).getCivilizationUnits(kIdeology.getFreeUnitClass())));
}
else
{
eFreeUnit = (UnitTypes)GC.getUnitClassInfo((UnitClassTypes)kIdeology.getFreeUnitClass()).getDefaultUnitIndex();
}
if (eFreeUnit != NO_UNIT)
{
szBuffer.append(NEWLINE);
szBuffer.append(gDLL->getText("TXT_KEY_IDEOLOGY_FOUNDER_RECEIVES_NUM", GC.getUnitInfo(eFreeUnit).getTextKeyWide()));
}
}
}