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
Update the HUD system (called each frame)
ecs::Registry & m_registry
ECS registry reference.
void updateScore(ecs::Registry ®istry, int newScore) const
Update the displayed score value.
std::vector< ecs::Entity > m_scoreDigitEntities
Entities for individual score digits.
HUDSystem & operator=(HUDSystem &&)=delete
Deleted move assignment operator (non-movable)
HUDSystem(HUDSystem &&)=delete
Deleted move constructor (non-movable)
HUDSystem & operator=(const HUDSystem &)=delete
Deleted copy assignment operator (non-copyable)
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
Deleted copy constructor (non-copyable)
~HUDSystem() override=default
Destructor.
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)
Constructor - initializes the HUD system and creates initial UI elements.
This file contains common definitions and constants.