2620a76865
clang-format
33 lines
1.4 KiB
C++
33 lines
1.4 KiB
C++
#pragma once
|
|
|
|
#include <vector>
|
|
|
|
/*
|
|
Namespace Stage: gestiona los datos y operaciones de las fases del juego.
|
|
Permite consultar y modificar el poder necesario, la amenaza y el estado de cada fase.
|
|
*/
|
|
|
|
namespace Stage {
|
|
// --- Estructura con los datos de una fase ---
|
|
struct Stage {
|
|
int power_to_complete; // Cantidad de poder que se necesita para completar la fase
|
|
int min_menace; // Umbral mínimo de amenaza de la fase
|
|
int max_menace; // Umbral máximo de amenaza de la fase
|
|
|
|
// Constructor
|
|
Stage(int power_to_complete, int min_menace, int max_menace)
|
|
: power_to_complete(power_to_complete), min_menace(min_menace), max_menace(max_menace) {}
|
|
};
|
|
|
|
// --- Variables globales del estado de las fases ---
|
|
extern std::vector<Stage> stages; // Vector con los datos de cada pantalla
|
|
extern int power; // Poder acumulado en la fase actual
|
|
extern int total_power; // Poder total necesario para completar el juego
|
|
extern int number; // Índice de la fase actual
|
|
extern bool power_can_be_added; // Indica si se puede añadir poder a la fase
|
|
|
|
// --- Funciones principales ---
|
|
auto get(int index) -> Stage; // Devuelve una fase por índice
|
|
void init(); // Inicializa las variables del namespace Stage
|
|
void addPower(int amount); // Añade poder a la fase actual
|
|
} // namespace Stage
|