diff options
| author | Charles Cabergs <me@cacharle.xyz> | 2020-11-12 10:54:47 +0100 |
|---|---|---|
| committer | Charles Cabergs <me@cacharle.xyz> | 2020-11-12 10:54:47 +0100 |
| commit | 96dcf214a8c40529b251ea31ef037868583dd1da (patch) | |
| tree | ecbb74fd1982829b550f5b5f5451497245db1358 /cpp03/ex01/ScavTrap.cpp | |
| parent | 2e0cf63a219d24ef07412deca9b0e6cb02882b46 (diff) | |
| download | piscine_cpp-96dcf214a8c40529b251ea31ef037868583dd1da.tar.gz piscine_cpp-96dcf214a8c40529b251ea31ef037868583dd1da.tar.bz2 piscine_cpp-96dcf214a8c40529b251ea31ef037868583dd1da.zip | |
Fixing cpp03, moved more common logic in ClapTrap, Added better main
Diffstat (limited to 'cpp03/ex01/ScavTrap.cpp')
| -rw-r--r-- | cpp03/ex01/ScavTrap.cpp | 43 |
1 files changed, 16 insertions, 27 deletions
diff --git a/cpp03/ex01/ScavTrap.cpp b/cpp03/ex01/ScavTrap.cpp index 16b07e1..47facac 100644 --- a/cpp03/ex01/ScavTrap.cpp +++ b/cpp03/ex01/ScavTrap.cpp @@ -6,26 +6,12 @@ /* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/04/13 14:15:03 by charles #+# #+# */ -/* Updated: 2020/11/11 06:32:05 by cacharle ### ########.fr */ +/* Updated: 2020/11/12 10:49:48 by cacharle ### ########.fr */ /* */ /* ************************************************************************** */ #include "ScavTrap.hpp" -ScavTrap::ScavTrap(): - m_hitPoints(100), - m_maxHitPoints(100), - m_energyPoints(50), - m_maxEnergyPoints(50), - m_level(1), - m_name(""), - m_meleeAttackDamage(20), - m_rangedAttackDamage(15), - m_armorDamageReduction(3) -{ - std::cout << "New " << m_name << ": your gaming references suck" << std::endl; -} - ScavTrap::ScavTrap(std::string const& name): m_hitPoints(100), m_maxHitPoints(100), @@ -42,6 +28,7 @@ ScavTrap::ScavTrap(std::string const& name): ScavTrap::ScavTrap(ScavTrap const& other) { + std::cout << "SC4V-TP New from " << other.m_name << std::endl; *this = other; } @@ -65,18 +52,18 @@ ScavTrap::~ScavTrap() void ScavTrap::rangedAttack(std::string const& target) const { - std::cout << "SC4V-TP " << m_name - << " attacks " << target + std::cout << "SC4V-TP " << m_name + << " attacks " << target << " at range, causing " << m_rangedAttackDamage - << " points of damage!" << std::endl; + << " points of damage!" << std::endl; } void ScavTrap::meleeAttack(std::string const& target) const { - std::cout << "SC4V-TP " << m_name - << " attacks " << target + std::cout << "SC4V-TP " << m_name + << " attacks " << target << " in melee mode causing " << m_meleeAttackDamage - << " points of damage!" << std::endl; + << " points of damage!" << std::endl; } void ScavTrap::takeDamage(unsigned int amount) @@ -89,8 +76,8 @@ void ScavTrap::takeDamage(unsigned int amount) amount = m_hitPoints; m_hitPoints -= amount; std::cout << "SC4V-TP " << m_name - << " takes " << amount - << " damage" << std::endl; + << " takes " << amount + << " damage" << std::endl; } void ScavTrap::beRepaired(unsigned int amount) @@ -98,8 +85,8 @@ void ScavTrap::beRepaired(unsigned int amount) if (amount + m_hitPoints > m_maxHitPoints) amount = m_maxHitPoints - m_hitPoints; m_hitPoints += amount; - std::cout << "SC4V-TP " << m_name - << " gained " << amount + std::cout << "SC4V-TP " << m_name + << " gained " << amount << " hit points" << std::endl; } @@ -112,7 +99,9 @@ void ScavTrap::challengeNewcomer(std::string const& target) "draw your name by peeing in the snow", "punch me" }; - std::cout << "SC4V-TP " << m_name + std::cout << "SC4V-TP " << m_name << " challenge " << target - << " to " << challenges[rand() % 5] << std::endl; + << " to " << challenges[rand() % 5] << std::endl; } + +ScavTrap::ScavTrap() {} |
