s_Units = units;
-
+/*
for (UnitList::iterator i = s_Units.begin(); i != s_Units.end(); i++)
{
cerr << s_Units[(*i).first].Name() << "\t\t"
<< s_Units[(*i).first].type() << endl;
}
+ */
}
//////////////////////////////////////////////////////////////////////////
for (UnitList::iterator i = s_Units.begin(); i != s_Units.end(); ++i)
{
string unittype = i->first;
+
+ cerr << "Distributing type: " << unittype << endl;
+
if (m_Fleet[unittype].size() < 1)
- break;
- if (m_Fleet[unittype][0] == 0)
- break;
+ continue;
+ if (m_Fleet[unittype][0] == 0)
+ continue;
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] );
+ cerr << (*j)->name() << " gaining " << lost << " " << unittype << endl;
(*j)->setFleet(unittype, (*j)->fleet(unittype, tick - 1) + lost, tick);
}
}
for (vector<Fleet*>::iterator i = fleets.begin(); i != fleets.end(); ++i)
{
if (( tick - (*i)->ETA()) >= 0 && (tick - (*i)->ETA()) < stays)
+ {
fl.push_back((*i));
+ cerr << "Using fleet " << (*i)->name() << " for tick " << tick;
+ }
else if ((*i)->name() == "Home Planet")
fl.push_back((*i));
}
return resource->at(tick);
}
+//////////////////////////////////////////////////////////////////////////
+//
+void Fleet::printFleet()
+{
+ for (UnitList::iterator i = s_Units.begin(); i != s_Units.end(); ++i)
+ {
+ for (int tick = 0; tick < 5 ;++tick)
+ {
+ int num = fleet(i->first, tick);
+
+ if (num <= 0)
+ break;
+ cerr << num << " " << i->first << " during tick: " << tick << endl;
+ }
+ }
+}
if ( oneTickCheck->isChecked())
{
maxTickSpin->setValue(i);
- minTickSpin->setValue(i);
+ //minTickSpin->setValue(i-1);
+ emit ticksChanged( maxTickSpin->value() - 1, maxTickSpin->value());
+ return;
}
emit ticksChanged( minTickSpin->value(), maxTickSpin->value());
}
if(b)
{
maxTickSpin->setMinValue(0);
+ minTickSpin->setDisabled(true);
minTickSpin->setMaxValue(99);
}
else
{
+ minTickSpin->setEnabled(true);
maxTickSpin->setMinValue( minTickSpin->value());
minTickSpin->setMaxValue( maxTickSpin->value());
}