Argentum Online - Servidor
npc.h
1 #ifndef NPC_H
2 #define NPC_H
3 
4 #include "../../../include/nlohmann/json.hpp"
5 #include "../../../include/types.h"
6 #include "entity.h"
7 
8 class Map;
9 
10 class Npc : public Entity {
11  private:
12  uint32_t sprite_id;
13  npc_proffesion_t proffesion;
14 
15  public:
16  Npc(EntityId entity_id, nlohmann::json npc_info, Map& map);
17  ~Npc();
18 
19  void die() override;
20 
21  bool is_alive() const override;
22 
23  entity_type_t get_type() const override;
24 
25  nlohmann::json get_data() const override;
26 
27  void update(uint64_t delta_t) override;
28 
29  npc_proffesion_t get_profession();
30 
31  Map& get_map();
32 };
33 
34 #endif // NPC_H
Entity
Definition: entity.h:15
Npc
Definition: npc.h:10
Map
Definition: map.h:47