SC2API
An API for AI for StarCraft II
sc2_agent.h
1 /* \file sc2_agent.h
2  \brief The base class for user defined bots.
3 
4 The Agent class provides a user with most access into SC2 state and unit manipulation.
5 A user will issue actions to units via the ActionInterface, examine game state with the
6 ObservationInterface, issue blocking commands (such as pathing queries) via the UnitQueryInterface
7 and override library provided events in ClientEvents.
8 */
9 
10 #pragma once
11 
12 #include "sc2api/sc2_client.h"
13 
14 namespace sc2 {
15 
16 class AgentControlImp;
17 class ActionInterface;
18 class ActionFeatureLayerInterface;
19 class AgentControlInterface;
20 
22 class Agent : public Client {
23 public:
24  Agent();
25  ~Agent() override;
26 
32 
36 
41 
42 private:
43  AgentControlImp* agent_control_imp_;
44 };
45 
46 }
ActionFeatureLayerInterface * ActionsFeatureLayer()
The base class for Agent and ReplayObserver.
Definition: sc2_client.h:97
Definition: sc2_action.h:9
ActionInterface * Actions()
The base class for Agent and ReplayObserver.
AgentControlInterface * AgentControl()
Definition: sc2_interfaces.h:301
Definition: sc2_control_interfaces.h:77
The base class for user defined bots.
Definition: sc2_agent.h:22
Definition: sc2_interfaces.h:367