#ifndef CLAPTRAP_HPP # define CLAPTRAP_HPP #include #include #include #include class ClapTrap { public: ClapTrap( std::string name ); // default/parametric constructor ClapTrap( ClapTrap const & src ); // copy constructor ~ClapTrap( void ); // destructor ClapTrap & operator=( ClapTrap const & rhs ); // assignement operator void attack(const std::string & target); void takeDamage(unsigned int amount); void beRepaired(unsigned int amount); std::string getName() const; int getHit() const; int getEnergy() const; int getAttack() const; protected: std::string const _name; std::string _class; int _hit; int _energy; int _attack; int _number; int _getNumber(); void _increaseNumber(); private: ClapTrap( void ); // default/parametric constructor static int _totalNumber; }; #endif