Recarga de texturas en el cambio de modo de video

This commit is contained in:
2022-09-22 08:27:28 +02:00
parent e517ef62c8
commit 5806f7352f
6 changed files with 44 additions and 9 deletions

View File

@@ -151,22 +151,27 @@ void Game::checkEventHandler()
case SDL_SCANCODE_F:
screen->switchVideoMode();
reLoadTextures();
break;
case SDL_SCANCODE_F1:
screen->setWindowSize(1);
reLoadTextures();
break;
case SDL_SCANCODE_F2:
screen->setWindowSize(2);
reLoadTextures();
break;
case SDL_SCANCODE_F3:
screen->setWindowSize(3);
reLoadTextures();
break;
case SDL_SCANCODE_F4:
screen->setWindowSize(4);
reLoadTextures();
break;
default:
@@ -258,3 +263,11 @@ void Game::checkScreenBorders()
}
}
}
// Recarga las texturas
void Game::reLoadTextures()
{
map->reLoadTextures();
player->reLoadTextures();
scoreboard->reLoadTexture();
}

View File

@@ -58,6 +58,9 @@ private:
// Comprueba si el jugador está en el borde y se ha de cambiar el mapa
void checkScreenBorders();
// Recarga las texturas
void reLoadTextures();
public:
// Constructor
Game(SDL_Renderer *renderer, Screen *screen, Asset *asset, Input *input, Debug *debug);

View File

@@ -669,3 +669,10 @@ std::string Map::getEnemyFile()
{
return enemy_file;
}
// Recarga las texturas
void Map::reLoadTextures()
{
texture_tile->reLoad();
fillMapTexture();
}

View File

@@ -123,6 +123,9 @@ public:
// Obtiene el valor de la variable
std::string getEnemyFile();
// Recarga las texturas
void reLoadTextures();
};
#endif

View File

@@ -481,3 +481,9 @@ int Player::checkActors()
return index;
}
// Recarga las texturas
void Player::reLoadTextures()
{
texture->reLoad();
}

View File

@@ -119,6 +119,9 @@ public:
// Pasa la referencia del mapa
void setMap(Map *map);
// Recarga las texturas
void reLoadTextures();
};
#endif