1 #ifndef TOWER_DEFENCE_2_TOWER_H     2 #define TOWER_DEFENCE_2_TOWER_H    15     Tower(
double x, 
double y, 
double radius, 
int damage, 
double attack_range,
    16           double attack_speed, 
TowerType *tower_type);
    21     Tower *upgrade(
int index);
    30     TowerType(
const std::string &name, 
int cost, 
int damage,
    31               double attack_range, 
double attack_speed);
    36     std::string name() 
const;
    37     const int cost() 
const;
    38     const int damage() 
const;
    39     std::vector<TowerType *> upgrade_options() 
const;
    40     const double attack_range() 
const;
    41     const double attack_speed() 
const;
    44     void add_upgrade_option(
TowerType *tower_type);
    47     Tower * create_tower(
double x, 
double y);
    51     const std::string m_name;
    59     std::vector<TowerType *> m_upgrade_options;
    68 #endif //TOWER_DEFENCE_2_TOWER_H 
Tower class. 
Definition: tower.h:13
int m_damage
Amount of damage each hit deals. 
Definition: object.h:87
double m_attack_speed
Attack speed, how fast does the object deal damage. 
Definition: object.h:89
double m_attack_range
Attack range, how far can the object deal damage. 
Definition: object.h:91
Description for creating new towers. 
Definition: tower.h:28