R-Type
R-Type project
EnemyController.hpp
1 #pragma once
2 
3 #include "KapEngine.hpp"
4 #include "KapMirror/KapMirror.hpp"
5 #include "MapScript.hpp"
6 
7 namespace RType {
9  private:
10  MapScript *mapScript = nullptr;
11 
12  std::vector<std::shared_ptr<KapEngine::GameObject>> collidedObjects;
13 
14  std::string enemyName;
15  int hp = 20;
16 
17  public:
18  explicit EnemyController(std::shared_ptr<KapEngine::GameObject> _gameObject);
19  ~EnemyController() = default;
20 
21  void setMapScript(MapScript *_mapScript);
22 
23  void setEnemyName(const std::string &_enemyName);
24 
25  void setHp(int _hp);
26 
27  void onFixedUpdate() override;
28 
29  void onTriggerEnter(std::shared_ptr<KapEngine::GameObject> other) override;
30 
31  void onSceneUpdated() override;
32  };
33 } // namespace RType
RType::EnemyController
Definition: EnemyController.hpp:8
RType::EnemyController::onTriggerEnter
void onTriggerEnter(std::shared_ptr< KapEngine::GameObject > other) override
something enter in object
Definition: EnemyController.cpp:39
RType::EnemyController::onSceneUpdated
void onSceneUpdated() override
call when scene is updated (not threaded)
Definition: EnemyController.cpp:47
RType::MapScript
Definition: MapScript.hpp:23
RType::EnemyController::onFixedUpdate
void onFixedUpdate() override
call eachv x ms
Definition: EnemyController.cpp:15
KapMirror::NetworkComponent
Definition: NetworkComponent.hpp:9