R-TYPE
EnemyShootSystem.hpp
Go to the documentation of this file.
1 /*
2 ** EPITECH PROJECT, 2022
3 ** r-type
4 ** File description:
5 ** EnemyShootSystem
6 */
7 
8 #ifndef ENEMYSHOOTSYSTEM_HPP_
9 #define ENEMYSHOOTSYSTEM_HPP_
10 
11 #include "./System.hpp"
12 
13 namespace ECS {
14 class EnemyShootSystem : public System {
15 public:
16  EnemyShootSystem(const std::shared_ptr<ComponentManager>& componentsManager, const std::shared_ptr<EntityManager>& entityManager);
17  ~EnemyShootSystem() = default;
18 
19  void update();
20  void setSfml(std::shared_ptr<InitSfml> sfml);
21  void setClock(std::shared_ptr<Clock> clock);
22  bool checkIsValidEntity(Entity entity);
23 
24 protected:
25 private:
26  std::shared_ptr<InitSfml> _sfml;
27  std::shared_ptr<Clock> _clock;
28 };
29 } // namespace ECS
30 
31 #endif /* !ENEMYSHOOTSYSTEM_HPP_ */
Definition: EnemyShootSystem.hpp:14
bool checkIsValidEntity(Entity entity)
Definition: EnemyShootSystem.cpp:77
EnemyShootSystem(const std::shared_ptr< ComponentManager > &componentsManager, const std::shared_ptr< EntityManager > &entityManager)
Definition: EnemyShootSystem.cpp:17
~EnemyShootSystem()=default
void setSfml(std::shared_ptr< InitSfml > sfml)
Definition: EnemyShootSystem.cpp:59
void update()
Definition: EnemyShootSystem.cpp:27
void setClock(std::shared_ptr< Clock > clock)
Definition: EnemyShootSystem.cpp:64
Definition: Entity.hpp:30
Definition: System.hpp:18
Definition: ComponentManager.hpp:14