Lamthai/game/interface/combat_interface.cpp

40 lines
1.3 KiB
C++

#include <iostream>
#include <string>
#include <vector>
#include <raylib.h>
#include "../define.h"
#include "../logic/player.h"
#include "../logic/ennemy.h"
#include "ui_elements.h"
#include "combat_interface.h"
std::vector<std::vector<float>> generate_enemies_positions(int ennemies_size_arg) {
std::vector<std::vector<float>> positions;
float spacing = 0.5f / ennemies_size_arg;
for (int i = 0; i < ennemies_size_arg; i++) {
if (i%2 == 0) {
positions.push_back({0.5f + spacing * i, 0.5f});
} else {
positions.push_back({0.5f + spacing * i, 0.25f});
}
}
return positions;
}
void create_combat_interface(Player& player_arg, std::vector<Ennemy>& ennemies_arg, const std::vector<float>& screen_arg, std::vector<Ennemy_stats>& ennemies_stats_arg) {
Ennemy ennemy = ennemies_arg[0];
std::vector<std::vector<float>> positions = generate_enemies_positions(ennemies_arg.size());
for (int i = 0; i < ennemies_arg.size(); i++) {
ennemies_stats_arg.push_back(create_ennemy_stats(ennemies_arg[i], positions[i], screen_arg));
}
}
void display_combat_interface(Player& player_arg, std::vector<Ennemy_stats>& ennemies_stats_arg, std::vector<Ennemy>& ennemies_arg) {
//Dessin
BeginDrawing();
ClearBackground(BLACK);
for (int i = 0; i < ennemies_arg.size(); i++) {
draw_ennemy_stats(ennemies_stats_arg[i], ennemies_arg[i]);
}
EndDrawing();
}