Preparando el juego para ser compatble con consolas

This commit is contained in:
2022-11-30 11:06:27 +01:00
parent 34fc2b6b06
commit 62c1e2715e
3 changed files with 32 additions and 29 deletions

View File

@@ -39,7 +39,7 @@ Title::Title(SDL_Renderer *renderer, Screen *screen, Resource *resource, Asset *
l.enabled = false;
letters.push_back(l);
}
letters.at(0).enabled = true;
letters[0].enabled = true;
marqueeSpeed = 3;
// Cambia el color del borde
@@ -70,6 +70,12 @@ void Title::checkEventHandler()
// Comprueba las teclas que se han pulsado
if ((eventHandler->type == SDL_KEYDOWN && eventHandler->key.repeat == 0) || (eventHandler->type == SDL_JOYBUTTONDOWN))
{
if (eventHandler->type == SDL_JOYBUTTONDOWN)
{
section.name = SECTION_PROG_GAME;
section.subsection = 0;
}
switch (eventHandler->key.keysym.scancode)
{
case SDL_SCANCODE_ESCAPE:
@@ -133,20 +139,20 @@ void Title::updateMarquee()
{
for (int i = 0; i < (int)letters.size(); ++i)
{
if (letters.at(i).enabled)
if (letters[i].enabled)
{
letters.at(i).x -= marqueeSpeed;
if (letters.at(i).x < -10)
letters[i].x -= marqueeSpeed;
if (letters[i].x < -10)
{
letters.at(i).enabled = false;
letters[i].enabled = false;
}
}
else
{
if (i > 0 && letters.at(i - 1).x < 256 && letters.at(i - 1).enabled)
if (i > 0 && letters[i - 1].x < 256 && letters[i - 1].enabled)
{
letters.at(i).enabled = true;
letters.at(i).x = letters.at(i - 1).x + text->lenght(letters.at(i - 1).letter) + 1;
letters[i].enabled = true;
letters[i].x = letters[i - 1].x + text->lenght(letters[i - 1].letter) + 1;
}
}
}
@@ -186,7 +192,7 @@ void Title::update()
screen->updateNotifier();
// Comprueba si ha terminado la marquesina y acaba con el titulo
if (letters.at(letters.size() - 1).x < -10)
if (letters[letters.size() - 1].x < -10)
{
section.name = SECTION_PROG_CREDITS;
section.subsection = 0;
@@ -206,15 +212,6 @@ void Title::render()
// Dibuja el fondo del titulo
sprite->render();
// Dibuja el texto de PRESS ENTER TO PLAY
// SDL_SetRenderDrawColor(renderer, 0, 0, 255, 255);
// const SDL_Rect rect = {0, 192 / 5 * 4, 256, 8};
// SDL_RenderFillRect(renderer, &rect);
// if (counter % 80 < 60)
//{
// text->writeCentered(256 / 2, 192 / 5 * 4, "PRESS ENTER TO PLAY");
//}
// Dibuja el texto de PRESS ENTER TO PLAY
if (counter % 80 < 60)
{