Commit pa que Mon arregle el codi mentre em dutxe

This commit is contained in:
2024-10-09 21:48:01 +02:00
parent 3c1dcad3ab
commit f2fa216b0d
34 changed files with 862 additions and 1218 deletions

View File

@@ -23,12 +23,11 @@ Intro::Intro(JA_Music_t *music)
: music(music)
{
// Copia los punteros
SDL_Renderer *renderer = Screen::get()->getRenderer();
auto renderer = Screen::get()->getRenderer();
// Reserva memoria para los objetos
eventHandler = std::make_unique<SDL_Event>();
texture = std::make_unique<Texture>(renderer, Asset::get()->get("intro.png"));
text = std::make_unique<Text>(Asset::get()->get("nokia.png"), Asset::get()->get("nokia.txt"), renderer);
texture = std::make_shared<Texture>(renderer, Asset::get()->get("intro.png"));
text = std::make_shared<Text>(Asset::get()->get("nokia.png"), Asset::get()->get("nokia.txt"), renderer);
// Inicializa variables
section::name = section::NAME_INTRO;
@@ -41,10 +40,10 @@ Intro::Intro(JA_Music_t *music)
constexpr int totalBitmaps = 6;
for (int i = 0; i < totalBitmaps; ++i)
{
auto ss = std::make_unique<SmartSprite>(texture.get());
auto ss = std::make_unique<SmartSprite>(texture);
ss->setWidth(128);
ss->setHeight(96);
ss->setEnabledCounter(20);
ss->setFinishedCounter(20);
ss->setDestX(param.game.gameArea.centerX - 64);
ss->setDestY(param.game.gameArea.firstQuarterY - 24);
bitmaps.push_back(std::move(ss));
@@ -73,7 +72,7 @@ Intro::Intro(JA_Music_t *music)
bitmaps[2]->setAccelX(0.1f);
bitmaps[2]->setAccelY(0.3f);
bitmaps[2]->setSpriteClip(0, 96, 128, 96);
bitmaps[2]->setEnabledCounter(250);
bitmaps[2]->setFinishedCounter(250);
bitmaps[3]->setPosX(param.game.gameArea.centerX - 64);
bitmaps[3]->setPosY(param.game.height);
@@ -103,12 +102,12 @@ Intro::Intro(JA_Music_t *music)
constexpr int totalTexts = 9;
for (int i = 0; i < totalTexts; ++i)
{
auto w = std::make_unique<Writer>(text.get());
auto w = std::make_unique<Writer>(text);
w->setPosX(BLOCK * 0);
w->setPosY(param.game.height - (BLOCK * 6));
w->setKerning(-1);
w->setEnabled(false);
w->setEnabledCounter(180);
w->setFinishedCounter(180);
texts.push_back(std::move(w));
}
@@ -164,23 +163,30 @@ void Intro::reloadTextures()
// Comprueba los eventos
void Intro::checkEvents()
{
SDL_Event event;
// Comprueba los eventos que hay en la cola
while (SDL_PollEvent(eventHandler.get()) != 0)
while (SDL_PollEvent(&event))
{
// Evento de salida de la aplicación
if (eventHandler->type == SDL_QUIT)
switch (event.type)
{
case SDL_QUIT:
{
section::name = section::NAME_QUIT;
break;
}
// Comprueba si se ha cambiado el tamaño de la ventana
else if (eventHandler->type == SDL_WINDOWEVENT)
case SDL_WINDOWEVENT:
{
if (eventHandler->window.event == SDL_WINDOWEVENT_SIZE_CHANGED)
if (event.window.event == SDL_WINDOWEVENT_SIZE_CHANGED)
{
reloadTextures();
}
break;
}
default:
break;
}
}
}