From 515395613c36c35c3797bc085f6d54a8ac7725d9 Mon Sep 17 00:00:00 2001 From: Michael Andreen Date: Fri, 12 Apr 2002 14:12:14 +0000 Subject: [PATCH] fixed a bug with non shooting pds... --- bs/fleet.cpp | 3 +- bs/planet.cpp | 67 ++++++++++++++++++++++-------------------- bs/ui/roidseditview.ui | 3 ++ 3 files changed, 39 insertions(+), 34 deletions(-) diff --git a/bs/fleet.cpp b/bs/fleet.cpp index ed5efb9..b4e4335 100644 --- a/bs/fleet.cpp +++ b/bs/fleet.cpp @@ -309,12 +309,11 @@ void Fleet::takeShoot(std::string unittype, int number, std::map::iterator i = s_Units[unittype].target().begin(); i != s_Units[unittype].target().end(); ++i) diff --git a/bs/planet.cpp b/bs/planet.cpp index 443b3b1..0da7d97 100644 --- a/bs/planet.cpp +++ b/bs/planet.cpp @@ -171,7 +171,7 @@ void Planet::calcOneTick(Planet* friendly, Fleet* hostile, std::mapsecond; - //cerr << "Initiative: " << s_Units[unittype].initiative() << " with unit: " << unittype << endl; + cerr << "Initiative: " << s_Units[unittype].initiative() << " with unit: " << unittype << endl; if (s_Units[unittype].type() == "EMP") { @@ -192,38 +192,41 @@ void Planet::calcOneTick(Planet* friendly, Fleet* hostile, std::mapscore() / 10; - - cerr << "Capping is: " << capping << endl; - - if (capping > 0.15) - capping = 0.15; - if (capping <= 0) - break; - - for (RoidList::iterator roid = m_Roids.begin(); roid != m_Roids.end(); ++roid) + if (m_iScore > 0) { - int caproids = capping * roids(roid->first, tick - 1); - int freepods = hostiletemp->freeFleet(unittype, 1); - - cerr << "Possible to steal " << caproids << " " << roid->first << " roids\n"; - cerr << freepods << " free pods available\n"; - - if (freepods <= 0) - break; - if (freepods < caproids) - caproids = freepods; - - cerr << caproids << " roids stolen\n"; - - takeRoids(roid->first, caproids, tick); - - hostiletemp->killFleet(unittype, caproids, 1); - int totroids = caproids + hostiletemp->resource(roid->first, 0); - hostiletemp->setResource(roid->first, totroids, 1); - - cerr << totroids << " stolen " << roid->first << " roids\n"; + float capping = float(m_iScore) / hostile->score() / 10; + + cerr << "Capping is: " << capping << endl; + + if (capping > 0.15) + capping = 0.15; + if (capping > 0) + { + for (RoidList::iterator roid = m_Roids.begin(); roid != m_Roids.end(); ++roid) + { + int caproids = capping * roids(roid->first, tick - 1); + int freepods = hostiletemp->freeFleet(unittype, 1); + + cerr << "Possible to steal " << caproids << " " << roid->first << " roids\n"; + cerr << freepods << " free pods available\n"; + + if (freepods <= 0) + break; + if (freepods < caproids) + caproids = freepods; + + cerr << caproids << " roids stolen\n"; + + takeRoids(roid->first, caproids, tick); + + //FIXME: Going to move this to the distribute roids section instead.. + hostiletemp->killFleet(unittype, caproids, 1); + int totroids = caproids + hostiletemp->resource(roid->first, 0); + hostiletemp->setResource(roid->first, totroids, 1); + + cerr << totroids << " stolen " << roid->first << " roids\n"; + } + } } } diff --git a/bs/ui/roidseditview.ui b/bs/ui/roidseditview.ui index caa5490..4060ec4 100644 --- a/bs/ui/roidseditview.ui +++ b/bs/ui/roidseditview.ui @@ -22,6 +22,9 @@ Roids + + StrongFocus + Roids and Score -- 2.39.2