25 Game(
eng::id assignedId,
const std::shared_ptr<eng::IRenderer> &renderer,
26 const std::shared_ptr<eng::IAudio> &audio,
bool &showDebug,
int skinIndex = 0,
27 const std::string &playerName =
"Player");
44 bool checkCircleRectCollision(
float circleX,
float circleY,
float circleR,
float rectX,
float rectY,
float rectW,
float rectH)
const;
50 const std::shared_ptr<eng::IAudio> &
m_audio;
58 std::vector<std::pair<ecs::Entity, ecs::Entity>>
m_pipes;
This file contains the Audio interface.
Class for managing entities and their components.
Abstract class for scene.
std::pair< ecs::Entity, ecs::Entity > createPipePair(ecs::Registry ®istry, float x, float gapY) const
ecs::Entity m_playerEntity
Game(eng::id assignedId, const std::shared_ptr< eng::IRenderer > &renderer, const std::shared_ptr< eng::IAudio > &audio, bool &showDebug, int skinIndex=0, const std::string &playerName="Player")
void update(float dt, const eng::WindowSize &size) override
Game & operator=(Game &&other)=delete
const std::shared_ptr< eng::IAudio > & m_audio
std::unordered_map< eng::Key, bool > m_keysPressed
void checkCollisions(ecs::Registry ®istry)
void event(const eng::Event &event) override
const std::shared_ptr< eng::IRenderer > & m_renderer
Game(Game &&other)=delete
ecs::Entity createPlayer(ecs::Registry ®istry)
bool checkCircleCollision(float x1, float y1, float r1, float x2, float y2, float r2) const
Game(const Game &other)=delete
Game & operator=(const Game &other)=delete
void checkScore(ecs::Registry ®istry)
ecs::Entity m_playerNameEntity
std::vector< std::pair< ecs::Entity, ecs::Entity > > m_pipes
bool checkCircleRectCollision(float circleX, float circleY, float circleR, float rectX, float rectY, float rectW, float rectH) const
void drawDebugRectangles(ecs::Registry ®istry) const
std::vector< bool > m_pipeScored
ecs::Entity m_scoreEntity
This file contains the IScene class.