#include "bootstrap.hpp" #include "interfaces/enemy_creator.hpp" #include "interfaces/hero.hpp" #include int main() { auto container = bootstrap(); auto hero = container.get(); std::cout << "Created a hero\n"; auto enemy_creator = container.get(); auto small_enemy = enemy_creator->create_small_enemy(); std::cout << "Created a small enemy with " << small_enemy->get_health() << " in health\n"; auto big_enemy = enemy_creator->create_big_enemy(); std::cout << "Created a big enemy with " << big_enemy->get_health() << " in health\n"; hero->fight(*small_enemy); std::cout << "The hero hit the small enemy! The small enemy now has " << small_enemy->get_health() << " in health\n"; hero->fight(*big_enemy); std::cout << "The hero hit the big enemy! The big enemy now has " << big_enemy->get_health() << " in health\n"; }