Pular para o conteúdo
Baixar

Rooms

Função O que faz Exemplo
void goTo(std::string_view name) Troca para a room com esse nome, no fim do quadro. goTo("Fase2");
void restart() Recria a room atual do zero, no fim do quadro. Várias chamadas no mesmo passo valem uma. if (pressed(Key::R)) restart();
int roomWidth() const Largura da room atual, em pixels. if (x > roomWidth()) x = 0;
int roomHeight() const Altura da room atual, em pixels. if (y > roomHeight()) destroy();
void brasa::quit() Fecha o jogo no fim do quadro. É uma função solta: com using namespace brasa; no arquivo, basta quit(). if (pressed(Key::Escape)) brasa::quit();
void brasa::fadeTo(std::string_view room, float seconds = 0.6f, Color color = colors::black) Troca de room escurecendo: a tela vai para a cor, a room troca e a tela volta. fadeTo("Fase2");
void brasa::flash(Color color = colors::white, float seconds = 0.2f) Cobre a tela com uma cor que some em seconds segundos (um clarão, o vermelho do dano). flash(Color{255, 0, 0, 120}, 0.3f);

goTo só existe dentro de um objeto. Numa função solta (por exemplo, no game.cpp), use brasa::goToScene("Nome"), que faz o mesmo:

void newGame() {
state() = GameState{};
brasa::goToScene("Main");
}
  • Ao trocar de room, todas as instâncias da room atual são destruídas e as da nova room começam com onSpawn.
  • Um nome de room que não existe é avisado na Saída e ignorado.
  • A primeira room do jogo é a room inicial, definida em Configurações do projeto.