Añadido puntero a la estructura param en las clases necesarias

This commit is contained in:
2024-06-18 08:58:28 +02:00
parent c98f0fc3d9
commit 022e44cfeb
22 changed files with 133 additions and 98 deletions

View File

@@ -1,7 +1,7 @@
#include "title.h"
// Constructor
Title::Title(SDL_Renderer *renderer, Screen *screen, Input *input, Asset *asset, options_t *options, Lang *lang, section_t *section)
Title::Title(SDL_Renderer *renderer, Screen *screen, Input *input, Asset *asset, options_t *options, Lang *lang, param_t *param, section_t *section)
{
// Copia las direcciones de los punteros y objetos
this->renderer = renderer;
@@ -10,11 +10,12 @@ Title::Title(SDL_Renderer *renderer, Screen *screen, Input *input, Asset *asset,
this->asset = asset;
this->options = options;
this->lang = lang;
this->param = param;
this->section = section;
// Reserva memoria y crea los objetos
eventHandler = new SDL_Event();
fade = new Fade(renderer);
fade = new Fade(renderer, param);
text1 = new Text(asset->get("smb2.png"), asset->get("smb2.txt"), renderer);
text2 = new Text(asset->get("8bithud.png"), asset->get("8bithud.txt"), renderer);
@@ -22,7 +23,7 @@ Title::Title(SDL_Renderer *renderer, Screen *screen, Input *input, Asset *asset,
miniLogoTexture = new Texture(renderer, asset->get("logo_jailgames_mini.png"));
miniLogoSprite = new Sprite(GAMECANVAS_CENTER_X - miniLogoTexture->getWidth() / 2, 0, miniLogoTexture->getWidth(), miniLogoTexture->getHeight(), miniLogoTexture, renderer);
backgroundObj = new Background(renderer, screen, asset);
backgroundObj = new Background(renderer, screen, asset, param);
backgroundObj->setSrcDest(windowArea);
backgroundObj->setDstDest(windowArea);
backgroundObj->setCloudsSpeed(-0.5f);
@@ -31,7 +32,7 @@ Title::Title(SDL_Renderer *renderer, Screen *screen, Input *input, Asset *asset,
tiledbg = new Tiledbg(renderer, screen, asset, {0, 0, param->gameWidth, param->gameHeight});
gameLogo = new GameLogo(renderer, screen, asset, GAMECANVAS_CENTER_X, GAMECANVAS_FIRST_QUARTER_Y + 20);
gameLogo = new GameLogo(renderer, screen, asset, param, GAMECANVAS_CENTER_X, GAMECANVAS_FIRST_QUARTER_Y + 20);
gameLogo->enable();
// Musicas
@@ -355,7 +356,7 @@ void Title::run()
// Ejecuta la parte donde se muestran las instrucciones
void Title::runInstructions(mode_e mode)
{
instructions = new Instructions(renderer, screen, asset, input, lang, section);
instructions = new Instructions(renderer, screen, asset, input, lang, param, section);
instructions->run(mode);
delete instructions;
}
@@ -363,7 +364,7 @@ void Title::runInstructions(mode_e mode)
// Ejecuta la parte donde se muestra la tabla de puntuaciones
void Title::runHiScoreTable(mode_hiScoreTable_e mode)
{
hiScoreTable = new HiScoreTable(renderer, screen, asset, input, lang, options, section);
hiScoreTable = new HiScoreTable(renderer, screen, asset, input, lang, param, options, section);
hiScoreTable->run(mode);
delete hiScoreTable;
}
@@ -371,7 +372,7 @@ void Title::runHiScoreTable(mode_hiScoreTable_e mode)
// Ejecuta el juego en modo demo
void Title::runDemoGame()
{
demoGame = new Game(1, 0, renderer, screen, asset, lang, input, true, options, section);
demoGame = new Game(1, 0, renderer, screen, asset, lang, input, true, param, options, section);
demoGame->run();
delete demoGame;
}