+ /**This is a little more advanced function. It makes a a number of units
+ * of a specific unittype shoot at the current fleet and calculates how
+ * many got blocked..
+ *
+ * Atm all calculations are done for tick 0/1
+ * \param unittype The name of the unit that shots at the current fleet.
+ * \param number The number of the specific unittype that shoot.
+ * \todo add a parameter to specify what tick to calc for and move out as
+ * much of the code as possible because it's kinda crowded atm and lots of
+ * very similar stuff in both the take* functions.
+ * \sa takeShoot
+ */
+ void takeEMP(std::string unittype, int number, std::map<std::string, int>& hitunits);
+
+ void calculateLostStealships(std::string unittype, std::map<std::string, int> stolen, int tick = 1);
+
+ void distributeStolenShips(std::map<std::string, std::map<std::string, int> > stolen, std::vector<Fleet*> fleets, int tick = 0);
+
+ void calculateSalvage();
+ /** This function prints out all the ships in the fleet to stderr,
+ * mainly used for debugging.
+ */