X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=bs%2Ffleet.cpp;h=2bd245ba29af67dfc1abadb6a4bdd33f12e35528;hb=ba016135c4c232c79cb35c92f239579ca3d84df3;hp=c2bf40ed4b634e5399f2f08e03bc7b1a8669ac64;hpb=f1e79e13d76a63700e6345503e338afaa93c102d;p=hbs.git diff --git a/bs/fleet.cpp b/bs/fleet.cpp index c2bf40e..2bd245b 100644 --- a/bs/fleet.cpp +++ b/bs/fleet.cpp @@ -17,15 +17,17 @@ #include "fleet.h" +#include using namespace std; //Static variables map > Fleet::s_Races; -map Fleet::s_Units; +UnitList Fleet::s_Units; Fleet::Fleet() { m_iETA = 0; + m_sRace = "Cathaar"; } Fleet::~Fleet(){ } @@ -39,7 +41,7 @@ void Fleet::setName(string sName) ////////////////////////////////////////////////////////////////////////// // -string Fleet::Name() +string Fleet::Name() const { return m_sName; } @@ -50,7 +52,7 @@ string Fleet::Name() * s_Races and checks if it finds the race it returns true, if it reaches * the end without finding it it returns false. */ -bool Fleet::setRace(std::string sRace) +bool Fleet::setRace(string sRace) { m_sRace = sRace; for (map >::iterator i = s_Races.begin(); i != s_Races.end(); i++) @@ -63,7 +65,7 @@ bool Fleet::setRace(std::string sRace) ////////////////////////////////////////////////////////////////////////// // -string Fleet::Race() +string Fleet::Race() const { return m_sRace; } @@ -73,13 +75,13 @@ string Fleet::Race() /** This function iterates through m_Fleet and adds all numbers together to * produce a total. */ -int Fleet::NumberOfShips() +int Fleet::NumberOfShips() const { int total = 0; - for (map >::iterator i = m_Fleet.begin(); i != m_Fleet.end(); i++) + for (map >::const_iterator i = m_Fleet.begin(); i != m_Fleet.end(); ++i) { - total += m_Fleet[(*i).first][0]; + total += i->second[0]; } return total; @@ -94,9 +96,64 @@ void Fleet::setETA(int eta) ////////////////////////////////////////////////////////////////////////// // -int Fleet::ETA() +int Fleet::ETA() const { return m_iETA; } +////////////////////////////////////////////////////////////////////////// +// +void Fleet::setRaces(map >& races) +{ + s_Races = races; +} + +////////////////////////////////////////////////////////////////////////// +// +void Fleet::setUnits(UnitList& units) +{ + 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].Race() <<"\t" + << s_Units[(*i).first].Class() << "\t" + << s_Units[(*i).first].Target(0) << "\t" + << s_Units[(*i).first].Target(1) << "\t" + << s_Units[(*i).first].Target(2) << "\t" + << s_Units[(*i).first].Initiative() << "\t" + << s_Units[(*i).first].Agility() << "\t" + << s_Units[(*i).first].WeaponSpeed() << "\t" + << s_Units[(*i).first].Guns() << "\t" + << s_Units[(*i).first].Power() << "\t" + << s_Units[(*i).first].Armor() << "\t" + << s_Units[(*i).first].EMP() << "\t" + << s_Units[(*i).first].TotRes() << "\t" + << s_Units[(*i).first].Fuel() << "\t" + << s_Units[(*i).first].ETA() << "\t" + << s_Units[(*i).first].Type() << endl; + } +} + +////////////////////////////////////////////////////////////////////////// +// +const map >& Fleet::Races() +{ + return s_Races; +} + +////////////////////////////////////////////////////////////////////////// +// +const UnitList& Fleet::Units() +{ + return s_Units; +} + +////////////////////////////////////////////////////////////////////////// +// +vector Fleet::RacesAllowed() const +{ + return s_Races[m_sRace]; +}