- Ya se puede usar el mando en todas las secciones del juego

- Definido flag para compilar para consola de juegos (GAME_CONSOLE)
This commit is contained in:
2023-02-10 20:08:06 +01:00
parent 76e928e21d
commit 3be9d4459c
19 changed files with 393 additions and 354 deletions

View File

@@ -2,13 +2,14 @@
#include <algorithm>
// Constructor
Ending2::Ending2(SDL_Renderer *renderer, Screen *screen, Resource *resource, Asset *asset, options_t *options, section_t *section)
Ending2::Ending2(SDL_Renderer *renderer, Screen *screen, Resource *resource, Asset *asset, Input *input, options_t *options, section_t *section)
{
// Copia los punteros
this->renderer = renderer;
this->screen = screen;
this->resource = resource;
this->asset = asset;
this->input = input;
this->options = options;
this->section = section;
@@ -74,14 +75,17 @@ Ending2::~Ending2()
// Actualiza el objeto
void Ending2::update()
{
// Comprueba el manejador de eventos
checkEventHandler();
// Comprueba que la diferencia de ticks sea mayor a la velocidad del juego
if (SDL_GetTicks() - ticks > ticksSpeed)
{
// Actualiza el contador de ticks
ticks = SDL_GetTicks();
// Comprueba el manejador de eventos
checkEventHandler();
// Comprueba las entradas
checkInput();
// Actualiza los contadores
updateCounters();
@@ -188,55 +192,52 @@ void Ending2::checkEventHandler()
section->name = SECTION_PROG_QUIT;
break;
}
}
}
// Comprueba las teclas que se han pulsado
if ((eventHandler->type == SDL_KEYDOWN && eventHandler->key.repeat == 0) || (eventHandler->type == SDL_JOYBUTTONDOWN))
{
switch (eventHandler->key.keysym.scancode)
{
case SDL_SCANCODE_ESCAPE:
section->name = SECTION_PROG_LOGO;
section->subsection = SUBSECTION_LOGO_TO_INTRO;
break;
// Comprueba las entradas
void Ending2::checkInput()
{
case SDL_SCANCODE_B:
screen->switchBorder();
resource->reLoadTextures();
break;
if (input->checkInput(input_exit, REPEAT_FALSE))
{
section->name = SECTION_PROG_LOGO;
section->subsection = SUBSECTION_LOGO_TO_INTRO;
}
case SDL_SCANCODE_F:
screen->switchVideoMode();
resource->reLoadTextures();
break;
else if (input->checkInput(input_toggle_border, REPEAT_FALSE))
{
screen->switchBorder();
}
case SDL_SCANCODE_F1:
screen->setWindowSize(1);
resource->reLoadTextures();
break;
else if (input->checkInput(input_video_mode, REPEAT_FALSE))
{
screen->switchVideoMode();
}
case SDL_SCANCODE_F2:
screen->setWindowSize(2);
resource->reLoadTextures();
break;
else if (input->checkInput(input_window_size_1, REPEAT_FALSE))
{
screen->setWindowSize(1);
}
case SDL_SCANCODE_F3:
screen->setWindowSize(3);
resource->reLoadTextures();
break;
else if (input->checkInput(input_window_size_2, REPEAT_FALSE))
{
screen->setWindowSize(2);
}
case SDL_SCANCODE_F4:
screen->setWindowSize(4);
resource->reLoadTextures();
break;
else if (input->checkInput(input_window_size_3, REPEAT_FALSE))
{
screen->setWindowSize(3);
}
case SDL_SCANCODE_F5:
switchPalette();
break;
else if (input->checkInput(input_window_size_4, REPEAT_FALSE))
{
screen->setWindowSize(4);
}
default:
break;
}
}
else if (input->checkInput(input_swap_palette, REPEAT_FALSE))
{
switchPalette();
}
}