Commitet pa valgrind, he aprofitat i posat mes make_unique i enum class

This commit is contained in:
2024-10-07 10:49:29 +02:00
parent 4f0ea9dcf2
commit cffa4c3c92
8 changed files with 105 additions and 107 deletions

View File

@@ -7,7 +7,6 @@
#include <vector> // for vector
#include "asset.h" // for Asset
#include "background.h" // for Background
#include "fade.h" // for Fade, FADE_IN, FADE_OUT, FADE_RANDOM...
#include "global_inputs.h" // for globalInputs::check
#include "input.h" // for Input
#include "jail_audio.h" // for JA_GetMusicState, JA_Music_state
@@ -19,20 +18,19 @@
#include "utils.h" // for param_t, paramGame_t, hiScoreEntry_t
// Constructor
HiScoreTable::HiScoreTable(JA_Music_t *music)
HiScoreTable::HiScoreTable(JA_Music_t *music) : music(music)
{
// Copia punteros
this->music = music;
asset = Asset::get();
input = Input::get();
screen = Screen::get();
renderer = screen->getRenderer();
// Objetos
eventHandler = new SDL_Event();
fade = new Fade(renderer);
background = new Background(renderer);
text = new Text(asset->get("smb2.gif"), asset->get("smb2.txt"), renderer);
eventHandler = std::make_unique<SDL_Event>();
fade = std::make_unique<Fade>(renderer);
background = std::make_unique<Background>(renderer);
text = std::make_unique<Text>(asset->get("smb2.gif"), asset->get("smb2.txt"), renderer);
// Crea un backbuffer para el renderizador
backbuffer = SDL_CreateTexture(renderer, SDL_PIXELFORMAT_RGBA8888, SDL_TEXTUREACCESS_TARGET, param.game.width, param.game.height);
@@ -45,7 +43,7 @@ HiScoreTable::HiScoreTable(JA_Music_t *music)
counter = 0;
counterEnd = 800;
viewArea = {0, 0, param.game.width, param.game.height};
fadeMode = FADE_IN;
fadeMode = fadeMode::IN;
// Inicializa objetos
background->setPos(param.game.gameArea.rect);
@@ -53,7 +51,7 @@ HiScoreTable::HiScoreTable(JA_Music_t *music)
background->setGradientNumber(1);
background->setTransition(0.8f);
fade->setColor(fadeColor.r, fadeColor.g, fadeColor.b);
fade->setType(FADE_RANDOM_SQUARE);
fade->setType(fadeType::RANDOM_SQUARE);
fade->setPost(param.fade.postDuration);
fade->setMode(fadeMode);
fade->activate();
@@ -65,10 +63,6 @@ HiScoreTable::HiScoreTable(JA_Music_t *music)
// Destructor
HiScoreTable::~HiScoreTable()
{
delete text;
delete eventHandler;
delete background;
SDL_DestroyTexture(backbuffer);
}
@@ -184,7 +178,7 @@ void HiScoreTable::reloadTextures()
void HiScoreTable::checkEvents()
{
// Comprueba los eventos que hay en la cola
while (SDL_PollEvent(eventHandler) != 0)
while (SDL_PollEvent(eventHandler.get()) != 0)
{
// Evento de salida de la aplicación
if (eventHandler->type == SDL_QUIT)
@@ -281,14 +275,14 @@ void HiScoreTable::updateFade()
{
fade->update();
if (fade->hasEnded() && fadeMode == FADE_IN)
if (fade->hasEnded() && fadeMode == fadeMode::IN)
{
fade->reset();
fadeMode = FADE_OUT;
fadeMode = fadeMode::OUT;
fade->setMode(fadeMode);
}
if (fade->hasEnded() && fadeMode == FADE_OUT)
if (fade->hasEnded() && fadeMode == fadeMode::OUT)
{
section::name = section::NAME_INSTRUCTIONS;
}