63 lines
1.8 KiB
C++
63 lines
1.8 KiB
C++
#include "DiamondTrap.hpp"
|
|
|
|
/*********************************************
|
|
* CONSTRUCTORS
|
|
*********************************************/
|
|
|
|
DiamondTrap::DiamondTrap( std::string name )
|
|
: ClapTrap(name + "_clap_name") {
|
|
_name = name;
|
|
_class = _dClass;
|
|
_hit = _dHit;
|
|
_energy = _dEnergy;
|
|
_attack = _dAttack;
|
|
std::cout << _class << " " << _name << "-" << _number << " created\n";
|
|
return;
|
|
}
|
|
|
|
DiamondTrap::DiamondTrap( DiamondTrap const & src ) {
|
|
_class = _dClass;
|
|
*this = src;
|
|
_number = getTotalNumber();
|
|
std::cout << _class << " " << _name << "-" << _number << " copied from " << src._class << "-" << src._name << "-" << src._number << "\n";
|
|
return;
|
|
}
|
|
|
|
/*********************************************
|
|
* DESTRUCTORS
|
|
*********************************************/
|
|
|
|
DiamondTrap::~DiamondTrap( void ) {
|
|
std::cout << _class << " " << _name << "-" << _number << " destructed\n";
|
|
return;
|
|
}
|
|
|
|
/*********************************************
|
|
* OPERATORS
|
|
*********************************************/
|
|
|
|
DiamondTrap & DiamondTrap::operator=( DiamondTrap const & rhs ) {
|
|
ClapTrap::operator=(rhs);
|
|
return *this;
|
|
}
|
|
|
|
/*********************************************
|
|
* PUBLIC MEMBER FUNCTIONS
|
|
*********************************************/
|
|
|
|
void DiamondTrap::whoAmI() {
|
|
std::cout << _class << B_CYAN " I AM DIAMOND" RESET << " " << _name << "-" << _number;
|
|
std::cout << B_CYAN " and clap" RESET << " " << ClapTrap::_name << "-" << _number << "\n";
|
|
}
|
|
|
|
/*********************************************
|
|
* STATICS
|
|
*********************************************/
|
|
|
|
std::string const DiamondTrap::_dName = "robot";
|
|
std::string const DiamondTrap::_dClass = "DiamondTrap";
|
|
int const DiamondTrap::_dHit = FragTrap::_dHit;
|
|
int const DiamondTrap::_dEnergy = ScavTrap::_dEnergy;
|
|
int const DiamondTrap::_dAttack = FragTrap::_dAttack;
|
|
|