+ for (UnitList::iterator i = s_Units.begin(); i != s_Units.end(); ++i)
+ {
+ string unittype = i->first;
+ if (m_Fleet[unittype].size() < 1)
+ break;
+ if (m_Fleet[unittype][0] == 0)
+ break;
+
+ int totallost = m_Fleet[unittype][1] - m_Fleet[unittype][0];
+
+ for (vector<Fleet*>::iterator j = fleets.begin(); j != fleets.end(); ++j)
+ {
+ int lost = totallost * ( (*j)->fleet(unittype, tick - 1) / m_Fleet[unittype][0] );
+ (*j)->setFleet(unittype, (*j)->fleet(unittype, tick - 1) + lost, tick);
+ }
+ }