Spike.hpp 462 B

123456789101112131415161718192021222324
  1. #pragma once
  2. #include <SFML/Graphics.hpp>
  3. #include <SFML/Audio.hpp>
  4. #include "IEntity.hpp"
  5. class Collider;
  6. class Spike: public sf::Sprite, public IEntity {
  7. public:
  8. Spike(Collider* collider, bool alive);
  9. void update(float delta) override;
  10. void move(float dy);
  11. void release();
  12. void registerColl();
  13. private:
  14. Collider* m_collider;
  15. bool m_hold;
  16. bool m_falling;
  17. sf::Clock m_clock;
  18. float m_baseY;
  19. sf::Sound m_boom;
  20. bool m_alive;
  21. };