2024-06-18 07:21:58 +02:00
7 changed files with 19 additions and 16 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.9 KiB

After

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 901 B

After

Width:  |  Height:  |  Size: 935 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

@@ -20,9 +20,9 @@ Background::Background(SDL_Renderer *renderer, Screen *screen, Asset *asset)
base = rect.h; base = rect.h;
gradientRect[0] = {0, 0, rect.w, rect.h}; gradientRect[0] = {0, 0, rect.w, rect.h};
gradientRect[1] = {256, 0, rect.w, rect.h}; gradientRect[1] = {rect.w, 0, rect.w, rect.h};
gradientRect[2] = {0, 192, rect.w, rect.h}; gradientRect[2] = {0, rect.h, rect.w, rect.h};
gradientRect[3] = {256, 192, rect.w, rect.h}; gradientRect[3] = {rect.w, rect.h, rect.w, rect.h};
// Carga las texturas // Carga las texturas
buildingsTexture = new Texture(renderer, asset->get("game_buildings.png")); buildingsTexture = new Texture(renderer, asset->get("game_buildings.png"));
@@ -31,20 +31,21 @@ Background::Background(SDL_Renderer *renderer, Screen *screen, Asset *asset)
gradientsTexture = new Texture(renderer, asset->get("game_sky_colors.png")); gradientsTexture = new Texture(renderer, asset->get("game_sky_colors.png"));
// Crea los sprites // Crea los sprites
clouds1A = new MovingSprite(0, base - 155, 256, 52, -0.4f, 0.0f, 0.0f, 0.0f, cloudsTexture, renderer); const int cloudsHeight = base - 196;
clouds1B = new MovingSprite(256, base - 155, 256, 52, -0.4f, 0.0f, 0.0f, 0.0f, cloudsTexture, renderer); clouds1A = new MovingSprite(0, cloudsHeight, rect.w, 52, -0.4f, 0.0f, 0.0f, 0.0f, cloudsTexture, renderer);
clouds2A = new MovingSprite(0, base - 155 + 57, 256, 32, -0.2f, 0.0f, 0.0f, 0.0f, cloudsTexture, renderer); clouds1B = new MovingSprite(rect.w, cloudsHeight, rect.w, 52, -0.4f, 0.0f, 0.0f, 0.0f, cloudsTexture, renderer);
clouds2B = new MovingSprite(256, base - 155 + 57, 256, 32, -0.2f, 0.0f, 0.0f, 0.0f, cloudsTexture, renderer); clouds2A = new MovingSprite(0, cloudsHeight + 57, rect.w, 32, -0.2f, 0.0f, 0.0f, 0.0f, cloudsTexture, renderer);
clouds2B = new MovingSprite(rect.w, cloudsHeight + 57, rect.w, 32, -0.2f, 0.0f, 0.0f, 0.0f, cloudsTexture, renderer);
buildingsSprite = new Sprite(0, 0, 256, 160, buildingsTexture, renderer); buildingsSprite = new Sprite(0, 0, rect.w, 135, buildingsTexture, renderer);
gradientSprite = new Sprite(0, 0, 256, 192, gradientsTexture, renderer); gradientSprite = new Sprite(0, 0, rect.w, rect.h, gradientsTexture, renderer);
grassSprite = new Sprite(0, 0, 256, 6, grassTexture, renderer); grassSprite = new Sprite(0, 0, 256, 6, grassTexture, renderer);
// Inicializa objetos // Inicializa objetos
clouds1A->setSpriteClip(0, 0, 256, 52); clouds1A->setSpriteClip(0, 0, cloudsTexture->getWidth(), 52);
clouds1B->setSpriteClip(0, 0, 256, 52); clouds1B->setSpriteClip(0, 0, cloudsTexture->getWidth(), 52);
clouds2A->setSpriteClip(0, 52, 256, 32); clouds2A->setSpriteClip(0, 52, cloudsTexture->getWidth(), 32);
clouds2B->setSpriteClip(0, 52, 256, 32); clouds2B->setSpriteClip(0, 52, cloudsTexture->getWidth(), 32);
buildingsSprite->setPosY(base - buildingsSprite->getHeight()); buildingsSprite->setPosY(base - buildingsSprite->getHeight());
grassSprite->setPosY(base - grassSprite->getHeight()); grassSprite->setPosY(base - grassSprite->getHeight());
@@ -151,7 +152,7 @@ void Background::fillCanvas()
buildingsSprite->render(); buildingsSprite->render();
// Dibuja la hierba // Dibuja la hierba
grassSprite->render(); //grassSprite->render();
// Deja el renderizador apuntando donde estaba // Deja el renderizador apuntando donde estaba
SDL_SetRenderTarget(renderer, temp); SDL_SetRenderTarget(renderer, temp);

View File

@@ -3150,6 +3150,7 @@ void Game::renderPausedGame()
// Pinta el escenario // Pinta el escenario
fillCanvas(); fillCanvas();
SDL_RenderCopy(renderer, canvas, nullptr, &playArea);
if ((deathCounter <= 150) && !players[0]->isAlive()) if ((deathCounter <= 150) && !players[0]->isAlive())
{ {

View File

@@ -239,7 +239,7 @@ void Title::render()
// Dibuja el mosacico de fondo // Dibuja el mosacico de fondo
tiledbg->render(); tiledbg->render();
// backgroundObj->render(); //backgroundObj->render();
// Dinuja el logo con el título del juego // Dinuja el logo con el título del juego
gameLogo->render(); gameLogo->render();

View File

@@ -11,4 +11,5 @@
[x] Quitar los static de title / crear clase para el logo de coffee crisis [x] Quitar los static de title / crear clase para el logo de coffee crisis
[] Añadir mini logo a pantalla de titulo [] Añadir mini logo a pantalla de titulo
[] Estandarizar tipografias, dejar solo una (o dos) [] Estandarizar tipografias, dejar solo una (o dos)
[] Crear objeto encargado de los mensajes en pantalla (en vez de ser la clase game) [] Crear objeto encargado de los mensajes en pantalla (en vez de ser la clase game)
[] ABSOLUTAMENTE TODO ha de estar en un fichero de texto y en una variable PARAMETROS: fisicas, tamaños de zona de juego, formaciones enemigas...