X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=bs%2Funittype.h;h=b01de80ef3c247107bfd3fb6b7c601aeef1a3f6f;hb=3f7ef4493164c1570a0dd6aa3c91de433b29d1d0;hp=428588b3bd59f976d9e53239f0c0a2e75e180f02;hpb=8dda24464f8a02b643734cb298c712baabd41e48;p=hbs.git diff --git a/bs/unittype.h b/bs/unittype.h index 428588b..b01de80 100644 --- a/bs/unittype.h +++ b/bs/unittype.h @@ -27,8 +27,9 @@ /**This class contains a unittype, with all it's attributes + the number you got. * Maybe this actually should be a struct, since this class doen't have much to do, since i want it to be as generic as possible. * It got some data need need to be taken care of which makes me put it as a class. + * \todo need to add some more constructors.., maybe not.. *@author Michael Andreen - *@see Fleet + *\sa Fleet Planet */ class UnitType @@ -40,83 +41,123 @@ public: /*! This function sets the name for this unittype (ie. interceptor) */ void setName(std::string sName); /** Returns the name of this unittype */ - std::string Name(); + std::string Name() const; - /** This functions sets which race this unittype is, the race is represented with a integer. */ + /** This functions sets which race this unittype is + * \param iRace the race is represented with a integer. + */ void setRace(int iRace); - /** Returns the race this unittype belongs to*/ - int Race(); + /** Used to get what type of race this is + * \returns returns the race as an integer + */ + int race() const; + + /** Sets the class for the unittype + * \param sClass the class represented as a string + */ + void setUnitClass(std::string sClass); + /** used to get what type of class this unit is + * \returns the class as a string + */ + std::string unitClass() const; + + /** Sets the classes that this unittype targets + * \param Target the target list, as a vector of strings + */ + void setTarget(std::vector Target); + + /** This function adds a target class to the end of the target list. + * \param target the target you want to add, as a string. + */ + void addTarget(std::string target); - /** Sets the class for the unittype, it's represented as a integer */ - void setClass(int iClass); - int iClass(); - - /** Sets the classes that this unittype targets. a vector is used. */ - void setTarget(std::vector Target); - /** This function adds a target class to the end of the target list. */ - void addTarget(int iTarget); /** This function inserts a target class into the target list. The default is in the beginning. * \param iTarget an integer that represents the target's class. - * \param index where to place the target. 0 being the default and first place. */ - void insTarget(int iTarget, int index = 0); - /** Returns all targets from the target list */ - std::vector Target(); + * \param index where to place the target. 0 being the default and first place. + */ + void insTarget(std::string iTarget, int index = 0); + /** Used to get the full target list. + * \returns all targets as a vector of strings. + * */ + std::vector target() const; /** Returns a specific target - * \param index An index value that represents the target. 0 being the first*/ - int Target(int index); + * \param index An index value that represents the target. 0 being the first + */ + std::string target(int index) const; - /** Sets the initiatve, the lower it is the earlier the unit shots */ + /** Used to set the initiatve, the lower it is the earlier the unit shots + * \param iInit the initiative as an int + */ void setInitiative(int iInit); - int Initiative(); - - /** Sets the agility, the higher it is the harder it is to hit the unit */ + /** Used to get the initiative this unittype got, lower shots first. + * \returns the initiative as an int + */ + int initiative() const; + + /** Used to set the agility, the higher it is the harder it is to hit the unit + * \param iAgil the agility represnted as an int + */ void setAgility (int iAgil); - int Agility(); - - /** Sets the weaponspeed.. just a simple integer that shows how good it is at hitting things */ + /** used to get this unittype's agility, higher is equal to hard to hit. + * \returns the agility as an int + */ + int agility() const; + + /** Used to set the weaponspeed.. Higher is equal to better at hitting + * \param iWPSP the weaponspeed represented as an int. + */ void setWeaponSpeed(int iWPSP); - int WeaponSpeed(); - - /** Sets the number of guns. */ + /** Used to get what weaponspeed this unittype has + * \returns the weaponspeed as an int + */ + int weaponSpeed() const; + + /** Sets the number of guns for this unittype + * \param iGuns the number of guns represented as an int + */ void setGuns(int iGuns); - int Guns(); + /** used to get the number of guns this unittype has + * \returns the number of guns as an int + */ + int guns() const; /** Sets the how much power the guns have.. or in other words: the damage they do. */ void setPower(int iPower); - int Power(); + int power() const; /** Sets the armor, this is how much damage the unittype can take before it's destroyed */ void setArmor(int iArmor); - int Armor(); + int armor() const; /** Sets the emp resistance, the lower value the easier it is to block it */ void setEMP(int iEMP); - int EMP(); + int EMP() const; /** Sets the resource cost for this unittype. Used for example for score calculation and so on. */ void setTotalResources(int iTR); /** Returns the number of total resources this unittype cost. */ - int TotRes(); + int totRes() const; /** Sets the fuelcost for this unittype */ void setFuel(int iFuel); /** Returns the fuelcost */ - int Fuel(); + int fuel() const; /** Sets the ETA, the speed in a sort of inverted form.. the lower ETA, the faster is the unit */ void setETA(int iETA); - int ETA(); + int ETA() const; /** Sets the type of the unit. What the types do must be specified in the real battle engine (Fleet) though. * \param iType An integer to symbolise the type. */ - void setType(int iType); + void setType(std::string type); /** What type of ship this is. */ - int Type(); + std::string type() const; + protected: std::string m_sName; int m_iRace; //!< Not really the race, but an indiaction on what race can use it.. - int m_iClass; - std::vector m_vTarget; + std::string m_sClass; + std::vector m_vTarget; int m_iInitiative; int m_iAgility; int m_iWeaponSpeed; @@ -125,7 +166,7 @@ protected: int m_iArmor; int m_iEMP; int m_iTotalResources; - int m_iType; //!< normal,emp,cloak,steal,pod + std::string m_sType; //!< normal,emp,cloak,steal,pod int m_iETA; int m_iFuel; };