OpenAstra
 
Loading...
Searching...
No Matches
capabilitymanager.h
1#ifndef CAPABILITYMANAGER_H
2#define CAPABILITYMANAGER_H
3
4#include <memory>
5#include <vector>
6
7#include "../engine/gameobject.h"
8
9#include "../utils/json.hpp"
10
11class Capability;
12
13class CapabilityManager
14{
15public:
16 CapabilityManager( std::shared_ptr<GameObject> owner );
17 virtual ~CapabilityManager();
18
19 bool capabilitiesFromTemplate(const nlohmann::json& template_data );
20
21 void addCapability( const ObjectId& id );
22
23 void tickCapabilities( double delta_time_s, double total_time_s );
24
25private:
26 std::shared_ptr<GameObject> _owner;
27};
28
29#endif // CAPABILITYMANAGER_H
Definition capability.h:13
Definition gameid.hpp:9