Compare commits

..

2 commits

9 changed files with 53 additions and 18 deletions

View file

@ -16,6 +16,8 @@ main_objs = main.o $(srcs:.cpp=.o)
all_objs = $(main_objs) all_objs = $(main_objs)
deps = $(all_objs:.o=.d) deps = $(all_objs:.o=.d)
.PHONY: all clean fclean re run
all: $(NAME) all: $(NAME)
-include $(deps) -include $(deps)
@ -37,3 +39,6 @@ fclean: clean
re: re:
+make fclean +make fclean
+make all +make all
run: $(NAME)
./$(NAME)

View file

@ -17,6 +17,8 @@ main_objs = main.o $(srcs:.cpp=.o)
all_objs = $(main_objs) all_objs = $(main_objs)
deps = $(all_objs:.o=.d) deps = $(all_objs:.o=.d)
.PHONY: all clean fclean re run
all: $(NAME) all: $(NAME)
-include $(deps) -include $(deps)
@ -38,3 +40,6 @@ fclean: clean
re: re:
+make fclean +make fclean
+make all +make all
run: $(NAME)
./$(NAME)

View file

@ -18,6 +18,8 @@ main_objs = main.o $(srcs:.cpp=.o)
all_objs = $(main_objs) all_objs = $(main_objs)
deps = $(all_objs:.o=.d) deps = $(all_objs:.o=.d)
.PHONY: all clean fclean re run
all: $(NAME) all: $(NAME)
-include $(deps) -include $(deps)
@ -39,3 +41,6 @@ fclean: clean
re: re:
+make fclean +make fclean
+make all +make all
run: $(NAME)
./$(NAME)

View file

@ -1,12 +1,10 @@
#include "DiamondTrap.hpp" #include "DiamondTrap.hpp"
#include <iostream> #include <iostream>
DiamondTrap::DiamondTrap() : FragTrap(), ScavTrap() { DiamondTrap::DiamondTrap() {
const FragTrap fragtrap = FragTrap(); hit_points = FragTrap::default_hit_points;
energy_points = ScavTrap::default_energy_points;
hit_points = fragtrap.get_hit_points(); attack_damage = FragTrap::default_attack_damage;
energy_points = ScavTrap::energy_points;
attack_damage = fragtrap.get_attack_damage();
ClapTrap::name = name + "_clap_name"; ClapTrap::name = name + "_clap_name";
std::cout << "DiamondTrap::DiamondTrap()" << std::endl; std::cout << "DiamondTrap::DiamondTrap()" << std::endl;
@ -17,15 +15,14 @@ DiamondTrap::DiamondTrap(const DiamondTrap &other) {
hit_points = other.hit_points; hit_points = other.hit_points;
energy_points = other.energy_points; energy_points = other.energy_points;
attack_damage = other.attack_damage; attack_damage = other.attack_damage;
std::cout << "DiamondTrap::DiamondTrap(const DiamondTrap &other)" << std::endl; std::cout << "DiamondTrap::DiamondTrap(const DiamondTrap &other)"
<< std::endl;
} }
DiamondTrap::DiamondTrap(std::string name) : name(name) { DiamondTrap::DiamondTrap(std::string name) : name(name) {
const FragTrap fragtrap = FragTrap(name); hit_points = FragTrap::default_hit_points;
energy_points = ScavTrap::default_energy_points;
hit_points = fragtrap.get_hit_points(); attack_damage = FragTrap::default_attack_damage;
energy_points = ScavTrap::energy_points;
attack_damage = fragtrap.get_attack_damage();
ClapTrap::name = name + "_clap_name"; ClapTrap::name = name + "_clap_name";
std::cout << "DiamondTrap::DiamondTrap(" << name << ")" << std::endl; std::cout << "DiamondTrap::DiamondTrap(" << name << ")" << std::endl;

View file

@ -1,11 +1,15 @@
#include "FragTrap.hpp" #include "FragTrap.hpp"
#include <iostream> #include <iostream>
const unsigned int FragTrap::default_hit_points(100);
const unsigned int FragTrap::default_energy_points(100);
const unsigned int FragTrap::default_attack_damage(30);
FragTrap::FragTrap() { FragTrap::FragTrap() {
std::cout << "FragTrap::FragTrap()" << std::endl; std::cout << "FragTrap::FragTrap()" << std::endl;
hit_points = 100; hit_points = FragTrap::default_hit_points;
energy_points = 100; energy_points = FragTrap::default_energy_points;
attack_damage = 30; attack_damage = FragTrap::default_attack_damage;
} }
FragTrap::FragTrap(const FragTrap &other) { FragTrap::FragTrap(const FragTrap &other) {

View file

@ -12,6 +12,11 @@ public:
FragTrap &operator=(const FragTrap &other); FragTrap &operator=(const FragTrap &other);
void highFivesGuys(); void highFivesGuys();
protected:
static const unsigned int default_hit_points;
static const unsigned int default_energy_points;
static const unsigned int default_attack_damage;
}; };
#endif #endif

View file

@ -19,6 +19,8 @@ main_objs = main.o $(srcs:.cpp=.o)
all_objs = $(main_objs) all_objs = $(main_objs)
deps = $(all_objs:.o=.d) deps = $(all_objs:.o=.d)
.PHONY: all clean fclean re run
all: $(NAME) all: $(NAME)
-include $(deps) -include $(deps)
@ -40,3 +42,6 @@ fclean: clean
re: re:
+make fclean +make fclean
+make all +make all
run: $(NAME)
./$(NAME)

View file

@ -1,11 +1,15 @@
#include "ScavTrap.hpp" #include "ScavTrap.hpp"
#include <iostream> #include <iostream>
const unsigned int ScavTrap::default_hit_points(100);
const unsigned int ScavTrap::default_energy_points(50);
const unsigned int ScavTrap::default_attack_damage(20);
ScavTrap::ScavTrap() { ScavTrap::ScavTrap() {
std::cout << "ScavTrap::ScavTrap()" << std::endl; std::cout << "ScavTrap::ScavTrap()" << std::endl;
hit_points = 100; hit_points = ScavTrap::default_hit_points;
energy_points = 50; energy_points = ScavTrap::default_energy_points;
attack_damage = 20; attack_damage = ScavTrap::default_attack_damage;
} }
ScavTrap::ScavTrap(const ScavTrap &other) { ScavTrap::ScavTrap(const ScavTrap &other) {

View file

@ -12,6 +12,11 @@ public:
ScavTrap &operator=(const ScavTrap &other); ScavTrap &operator=(const ScavTrap &other);
void guardGate(); void guardGate();
protected:
static const unsigned int default_hit_points;
static const unsigned int default_energy_points;
static const unsigned int default_attack_damage;
}; };
#endif #endif