Working on support for various controllers

This commit is contained in:
2021-08-31 21:05:04 +02:00
parent 8d1cabb288
commit 42c0f19c68
6 changed files with 101 additions and 32 deletions

View File

@@ -4,6 +4,9 @@
#include <dirent.h>
#endif
# define INIT_FADE 100
# define END_LOGO 200
// Constructor
Logo::Logo(SDL_Renderer *renderer, std::string *fileList)
{
@@ -71,6 +74,7 @@ section_t Logo::run()
{
init();
const SDL_Rect rect = {0, 0, SCREEN_WIDTH, SCREEN_HEIGHT};
const int fadeLenght = END_LOGO - INIT_FADE;
while (mSection.name == PROG_SECTION_LOGO)
{
@@ -92,9 +96,6 @@ section_t Logo::run()
}
}
// Cambia el destino donde se pinta todo
//SDL_SetRenderTarget(mRenderer, mBackbuffer);
// Limpia el destino
SDL_SetRenderDrawColor(mRenderer, bgColor.r, bgColor.g, bgColor.b, 255);
SDL_RenderClear(mRenderer);
@@ -103,22 +104,16 @@ section_t Logo::run()
mSprite->render();
// Dibuja el fade
if (mCounter >= 200)
if (mCounter >= INIT_FADE)
{
Uint16 alpha = mCounter - 200;
Uint16 alpha = (255 * (mCounter - INIT_FADE)) / fadeLenght;
if (alpha < 256)
SDL_SetRenderDrawColor(mRenderer, bgColor.r, bgColor.g, bgColor.b, alpha);
else
SDL_SetRenderDrawColor(mRenderer, bgColor.r, bgColor.g, bgColor.b, 255); // alpha - 0 trans, 255 opaco
SDL_SetRenderDrawColor(mRenderer, bgColor.r, bgColor.g, bgColor.b, 255);
SDL_RenderFillRect(mRenderer, &rect);
}
// Vuelve a usar el renderizador como destino
//SDL_SetRenderTarget(mRenderer, NULL);
// Copia el backbufer al renderizador
//SDL_RenderCopy(mRenderer, mBackbuffer, NULL, NULL);
// Actualiza la pantalla
SDL_RenderPresent(mRenderer);
@@ -134,7 +129,7 @@ section_t Logo::run()
JA_StopMusic();
}
if (mCounter == 500) // minimo 200 + 255
if (mCounter == END_LOGO + 20)
{
mCounter = 0;
mSection.name = PROG_SECTION_INTRO;