#include #include #include #include "../define.h" #include "ennemy.h" #include "spells.h" void init_ennemy(Ennemy& ennemy_arg, std::string name_arg, int xp_arg, int max_health_arg, int max_shield_arg, int max_speed_arg, int max_tame_arg, float escape_arg, float menace_arg, std::vector spells_arg ) { ennemy_arg.name = name_arg; ennemy_arg.xp = xp_arg; ennemy_arg.max_health = max_health_arg; ennemy_arg.max_shield = max_shield_arg; ennemy_arg.max_speed = max_speed_arg; ennemy_arg.max_tame = max_tame_arg; init_stats(ennemy_arg); ennemy_arg.escape = escape_arg; ennemy_arg.menace = menace_arg; ennemy_arg.spells = spells_arg; } void init_speed(Ennemy& ennemy_arg) { ennemy_arg.speed = ennemy_arg.max_speed; } void init_stats(Ennemy& ennemy_arg) { ennemy_arg.health = ennemy_arg.max_health; ennemy_arg.shield = ennemy_arg.max_shield; ennemy_arg.speed = ennemy_arg.max_speed; ennemy_arg.tame = ennemy_arg.max_tame; } void create_ennemies(std::vector& ennemies_arg) { std::vector all_spells; init_spells(all_spells); Ennemy emplialin; init_ennemy(emplialin, "Emplialin", 60.0f, 40.0f, 50.0f, 20.0f, 50.0f, 0.8f, 0.6f, std::vector{all_spells[0], all_spells[2], all_spells[4]}); ennemies_arg.push_back(emplialin); Ennemy arzkalin; init_ennemy(arzkalin, "Arzkalin", 60.0f, 70.0f, 60.0f, 10.0f, 100.0f, 1.0f, 0.5f, std::vector{all_spells[1], all_spells[3], all_spells[4]}); ennemies_arg.push_back(arzkalin); Ennemy coindithai; init_ennemy(coindithai, "Coindithaï", 32.0f, 30.0f, 15.0f, 20.0f, 10.0f, 0.9f, 0.8f, std::vector{all_spells[5]}); ennemies_arg.push_back(coindithai); } void inc_health(Ennemy& ennemy_arg, float value_arg){ ennemy_arg.health += value_arg; } void inc_shield(Ennemy& ennemy_arg, float value_arg){ ennemy_arg.shield += value_arg; } void inc_speed(Ennemy& ennemy_arg, float value_arg){ ennemy_arg.speed += value_arg; } void print_ennemy(const Ennemy& ennemy_arg) { std::cout << ennemy_arg.name << std::endl; std::cout << "Xp: " << ennemy_arg.xp << std::endl; std::cout << "Health: " << ennemy_arg.health << "/"<< ennemy_arg.max_health << std::endl; std::cout << "Shield: " << ennemy_arg.shield << "/"<< ennemy_arg.max_shield << std::endl; std::cout << "Speed: " << ennemy_arg.speed << "/"<< ennemy_arg.max_speed << std::endl; std::cout << "Tame: " << ennemy_arg.tame << "/"<< ennemy_arg.max_tame << std::endl; std::cout << "Escape: " << ennemy_arg.escape * 100 << "%"<< std::endl; std::cout << "Menace: " << ennemy_arg.menace * 100 << "%"<< std::endl; std::cout << "Spells: "; for (Spell spell: ennemy_arg.spells) { std::cout << spell.name << ", "; } std::cout << std::endl << std::endl; }