X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=bs%2Fplanet.h;h=e5c173e0cda880cf44b39c4e9134dcc6ddcbb39a;hb=f96bf3d395f79ce76f36b0f7003ca4e743b6019f;hp=ccb2ee40f4b5bb7a18ff3ac38bd5699be8680a0b;hpb=33b6dc7ca95a05c26a78879413395c1588066b77;p=hbs.git diff --git a/bs/planet.h b/bs/planet.h index ccb2ee4..e5c173e 100644 --- a/bs/planet.h +++ b/bs/planet.h @@ -20,7 +20,7 @@ #include "fleet.h" -typedef std::map RoidList; +typedef std::map > RoidList; /**This class is the implementation of a planet. * @@ -28,6 +28,9 @@ typedef std::map RoidList; * real life, it's a game engine, and in this engine a planet got all the * attributes that a fleet got + some additions, so I think the inheritance * is fully legal from a OOP standpoint. If it isn't, then please correct me ;) + * + * This class is doing the actual battle simulation (since battles without + * planets aren't available in this game). *@author Michael Andreen */ @@ -36,10 +39,18 @@ public: Planet(); virtual ~Planet(); - unsigned score(int tick = 0); - void setScore(unsigned i); + unsigned planetScore() const; + void setPlanetScore(unsigned i); + + int roids(std::string type, int tick = 0) const; + void setRoids(std::string type, int number, int tick = 0); + void takeRoids(std::string type, int number, int tick = 0); + + void runBattle(std::vector friendly, std::vector hostile); protected: + void calcOneTick(Planet* friendly, Fleet* Hostile, std::map >& stealfriendly, std::map >& stealhostile, int tick = 0); + unsigned m_iScore; RoidList m_Roids;