Fix: Guarda los logros también cuando se desbloquean

This commit is contained in:
2023-09-15 17:00:32 +02:00
parent f259fbb3a5
commit 38e0573a0e
3 changed files with 5 additions and 0 deletions

View File

@@ -138,6 +138,7 @@ void Cheevos::unlock(int id)
cheevos[index].completed = true; cheevos[index].completed = true;
screen->showNotification("ACHIEVEMENT UNLOCKED!", cheevos[index].caption, cheevos[index].icon); screen->showNotification("ACHIEVEMENT UNLOCKED!", cheevos[index].caption, cheevos[index].icon);
saveToFile();
} }
// Invalida un logro // Invalida un logro

View File

@@ -14,6 +14,7 @@ Title::Title(SDL_Renderer *renderer, Screen *screen, Resource *resource, Asset *
// Reserva memoria para los punteros // Reserva memoria para los punteros
eventHandler = new SDL_Event(); eventHandler = new SDL_Event();
cheevos = new Cheevos(screen, options, asset->get("cheevos.bin"));
if (options->palette == p_zxspectrum) if (options->palette == p_zxspectrum)
{ {
texture = resource->getTexture("loading_screen_color.png"); texture = resource->getTexture("loading_screen_color.png");
@@ -70,6 +71,7 @@ Title::Title(SDL_Renderer *renderer, Screen *screen, Resource *resource, Asset *
// Destructor // Destructor
Title::~Title() Title::~Title()
{ {
delete cheevos;
delete eventHandler; delete eventHandler;
delete sprite; delete sprite;
delete pressEnterSprite; delete pressEnterSprite;

View File

@@ -1,6 +1,7 @@
#pragma once #pragma once
#include <SDL2/SDL.h> #include <SDL2/SDL.h>
#include "cheevos.h"
#include "jail_engine/asset.h" #include "jail_engine/asset.h"
#include "jail_engine/input.h" #include "jail_engine/input.h"
#include "jail_engine/jail_audio.h" #include "jail_engine/jail_audio.h"
@@ -39,6 +40,7 @@ private:
options_t *options; // Puntero a las opciones del juego options_t *options; // Puntero a las opciones del juego
Texture *pressEnterTexture; // Textura con los graficos de PRESS ENTER Texture *pressEnterTexture; // Textura con los graficos de PRESS ENTER
Sprite *pressEnterSprite; // Sprite para manejar la textura de PRESS ENTER Sprite *pressEnterSprite; // Sprite para manejar la textura de PRESS ENTER
Cheevos *cheevos; // Objeto encargado de gestionar los logros del juego
section_t *section; // Estado del bucle principal para saber si continua o se sale section_t *section; // Estado del bucle principal para saber si continua o se sale
// Variables // Variables