27 lines
691 B
C++
27 lines
691 B
C++
#pragma once
|
|
|
|
#include <memory>
|
|
|
|
#include "core/scene/scene.hpp"
|
|
|
|
class Text;
|
|
|
|
// Escena placeholder del logotip. Durada fixa (5 s) o skip amb qualsevol tecla
|
|
// no reservada. Quan expira, publica un `ExitRequest` cap a TITLE; Director
|
|
// és qui construeix la nova escena (l'escena no coneix els altres tipus i
|
|
// es pot exercir en tests sense arrossegar dependències).
|
|
class LogoScene : public Scene {
|
|
public:
|
|
static constexpr int DURATION_MS = 5000;
|
|
|
|
explicit LogoScene(std::shared_ptr<Text> font);
|
|
~LogoScene() override;
|
|
|
|
void update(int delta_ms) override;
|
|
void render() override;
|
|
|
|
private:
|
|
std::shared_ptr<Text> font_;
|
|
int timer_ms_{DURATION_MS};
|
|
};
|