forked from jaildesigner-jailgames/jaildoctors_dilemma
Trabajando en el marcador
This commit is contained in:
@@ -15,6 +15,7 @@ Game::Game(SDL_Renderer *renderer, Screen *screen, Asset *asset, Input *input)
|
||||
this->input = input;
|
||||
|
||||
// Crea los objetos
|
||||
scoreboard = new ScoreBoard(renderer, asset);
|
||||
itemTracker = new ItemTracker();
|
||||
room = new Room(asset->get(currentRoom), renderer, asset, itemTracker);
|
||||
player = new Player(spawnPoint, asset->get("player01.png"), asset->get("player01.ani"), renderer, asset, input, room);
|
||||
@@ -38,6 +39,9 @@ Game::~Game()
|
||||
input = nullptr;
|
||||
|
||||
// Libera la memoria de los objetos
|
||||
delete scoreboard;
|
||||
scoreboard = nullptr;
|
||||
|
||||
delete itemTracker;
|
||||
itemTracker = nullptr;
|
||||
|
||||
@@ -118,7 +122,7 @@ void Game::update()
|
||||
case SDL_SCANCODE_F4:
|
||||
screen->setWindowSize(4);
|
||||
break;
|
||||
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -134,6 +138,7 @@ void Game::update()
|
||||
checkPlayerOnFloor();
|
||||
checkPlayerAndItems();
|
||||
checkPlayerAndEnemies();
|
||||
scoreboard->update();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -148,14 +153,8 @@ void Game::render()
|
||||
room->renderEnemies();
|
||||
room->renderItems();
|
||||
player->render();
|
||||
|
||||
// Texto en el centro de la pantalla
|
||||
SDL_Rect rect = {0, 16 * 8, PLAY_AREA_RIGHT, 8};
|
||||
color_t color = stringToColor("light_black");
|
||||
SDL_SetRenderDrawColor(renderer, color.r, color.g, color.b, 0xFF);
|
||||
SDL_RenderFillRect(renderer, &rect);
|
||||
|
||||
text->writeCentered(GAMECANVAS_CENTER_X, 16 * 8, room->getName());
|
||||
renderRoomName();
|
||||
scoreboard->render();
|
||||
|
||||
// Debug info
|
||||
renderDebugInfo();
|
||||
@@ -204,6 +203,18 @@ void Game::renderDebugInfo()
|
||||
debugText->write(0, line += inc, text);
|
||||
}
|
||||
|
||||
// Escribe el nombre de la pantalla
|
||||
void Game::renderRoomName()
|
||||
{
|
||||
// Texto en el centro de la pantalla
|
||||
SDL_Rect rect = {0, 16 * BLOCK, PLAY_AREA_WIDTH, BLOCK};
|
||||
color_t color = stringToColor("light_black");
|
||||
SDL_SetRenderDrawColor(renderer, color.r, color.g, color.b, 0xFF);
|
||||
SDL_RenderFillRect(renderer, &rect);
|
||||
|
||||
text->writeCentered(GAMECANVAS_CENTER_X, 16 * 8, room->getName());
|
||||
}
|
||||
|
||||
// Cambia de habitación
|
||||
bool Game::changeRoom(std::string file)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user