fprintf(file, " Primary ability: weapon range for combat units, artillery, or static defences, los for scout, radar(jammer) range, buildtime for constructors, metal extraction for extractors, metal storage capacity for storages), generated power for power plants\n");
fprintf(file, " Secondary ability: movement speed for combat units, artillery, scouts, or mobile constructors, sonar(jammer) range, energy storage capacity for storages\n");
// avoid "visiting" unit types multiple times (if units can be constructed by more than one other unit)
if( m_sideOfUnitType[unitDefId.id] == 0)
{
// set side of given unit type
m_sideOfUnitType[unitDefId.id] = side;
// continue with unit types constructed by given unit type
for( std::list<UnitDefId>::iterator id = m_unitTypeCanConstructLists[unitDefId.id].begin(); id != m_unitTypeCanConstructLists[unitDefId.id].end(); ++id)
elseif( (unitDef->metalMake > 0.0f) || (std::find(cfg->m_metalMakers.begin(), cfg->m_metalMakers.end(), unitDef->id) != cfg->m_metalMakers.end()) ) //! @todo Does not work - investigate later