37 const std::shared_ptr<eng::IRenderer> &
m_renderer;
This file contains the IRenderer class declaration.
This file contains the interface for systems.
Abstract class for system.
Class for managing entities and their components.
System responsible for rendering and updating the game's Heads-Up Display.
void update(ecs::Registry ®istry, float) override
ecs::Registry & m_registry
ECS registry reference.
void updateScore(ecs::Registry ®istry, int newScore) const
std::vector< ecs::Entity > m_scoreDigitEntities
Entities for individual score digits.
HUDSystem & operator=(HUDSystem &&)=delete
HUDSystem(HUDSystem &&)=delete
HUDSystem & operator=(const HUDSystem &)=delete
const std::shared_ptr< eng::IRenderer > & m_renderer
Renderer for drawing HUD elements.
ecs::Entity m_scoreBgEntity
Entity for score background sprite.
HUDSystem(const HUDSystem &)=delete
~HUDSystem() override=default
void createScoreHUD(ecs::Registry ®istry, float x, float y)
Create the score display HUD elements.
HUDSystem(const std::shared_ptr< eng::IRenderer > &renderer, ecs::Registry ®istry)
This file contains common definitions and constants.