fix: faltava passar el nom dels jugadors al marcador

This commit is contained in:
2024-08-14 14:09:28 +02:00
parent 6a9d0d1b2c
commit 5c7bb842ec
2 changed files with 25 additions and 14 deletions

View File

@@ -20,6 +20,7 @@ Scoreboard::Scoreboard(SDL_Renderer *renderer, Screen *screen, Asset *asset, Lan
stage = 1;
for (int i = 0; i< SCOREBOARD_MAX_PANELS; ++i)
{
name[i] = "";
score[i] = 0;
mult[i] = 0;
continueCounter[i] = 0;
@@ -137,6 +138,12 @@ void Scoreboard::render()
SDL_RenderCopy(renderer, background, nullptr, &rect);
}
// Establece el valor de la variable
void Scoreboard::setName(int panel, std::string name)
{
this->name[panel] = name;
}
// Establece el valor de la variable
void Scoreboard::setScore(int panel, int score)
{
@@ -224,7 +231,7 @@ void Scoreboard::fillPanelTextures()
{
case SCOREBOARD_MODE_SCORE:
// SCORE
textScoreBoard->writeCentered(slot4_1.x, slot4_1.y, lang->getText(53));
textScoreBoard->writeCentered(slot4_1.x, slot4_1.y, name[i]);
textScoreBoard->writeCentered(slot4_2.x, slot4_2.y, updateScoreText(score[i]));
// MULT
@@ -267,7 +274,7 @@ void Scoreboard::fillPanelTextures()
case SCOREBOARD_MODE_CONTINUE:
// SCORE
textScoreBoard->writeCentered(slot4_1.x, slot4_1.y, lang->getText(53));
textScoreBoard->writeCentered(slot4_1.x, slot4_1.y, name[i]);
textScoreBoard->writeCentered(slot4_2.x, slot4_2.y, updateScoreText(score[i]));
// CONTINUE

View File

@@ -51,19 +51,20 @@ private:
std::vector<SDL_Texture *> panelTexture; // Texturas para dibujar cada panel;
// Variables
struct options_t *options; // Variable con todas las variables de las opciones del programa
int stage; // Número de fase actual
int score[SCOREBOARD_MAX_PANELS]; // Puntuación de los jugadores
float mult[SCOREBOARD_MAX_PANELS]; // Multiplicador de los jugadores
struct options_t *options; // Variable con todas las variables de las opciones del programa
int stage; // Número de fase actual
std::string name[SCOREBOARD_MAX_PANELS]; // Nom de cada jugador
int score[SCOREBOARD_MAX_PANELS]; // Puntuación de los jugadores
float mult[SCOREBOARD_MAX_PANELS]; // Multiplicador de los jugadores
int continueCounter[SCOREBOARD_MAX_PANELS]; // Tiempo para continuar de los jugadores
int hiScore; // Máxima puntuación
float power; // Poder actual de la fase
std::string hiScoreName; // Nombre del jugador con la máxima puntuación
color_t color; // Color del marcador
SDL_Rect rect; // Posición y dimensiones del marcador
panel_t panel[SCOREBOARD_MAX_PANELS]; // Lista con todos los paneles del marcador
Uint32 ticks; // Variable donde almacenar el valor de SDL_GetTiks()
int counter; // Contador
int hiScore; // Máxima puntuación
float power; // Poder actual de la fase
std::string hiScoreName; // Nombre del jugador con la máxima puntuación
color_t color; // Color del marcador
SDL_Rect rect; // Posición y dimensiones del marcador
panel_t panel[SCOREBOARD_MAX_PANELS]; // Lista con todos los paneles del marcador
Uint32 ticks; // Variable donde almacenar el valor de SDL_GetTiks()
int counter; // Contador
// Puntos predefinidos para colocar elementos en los paneles
SDL_Point slot4_1, slot4_2, slot4_3, slot4_4;
@@ -103,6 +104,9 @@ public:
// Pinta el marcador
void render();
// Establece el valor de la variable
void setName(int panel, std::string name);
// Establece el valor de la variable
void setScore(int panel, int score);