10 #include "models/micromodel.h" 12 #include "squadcombat/agent.h" 13 #include "squadcombat/behavior.h" 39 virtual void step(
State* s)
override;
42 void enqueueModel(std::shared_ptr<MicroModel> model, std::string name);
44 std::shared_ptr<MicroModel> getModel(std::string);
45 virtual void onGameEnd(
State* state)
override;
46 virtual void onGameStart(
State* state)
override;
52 std::unordered_map<Unit const*, Agent>
agents_;
58 std::unordered_map<std::string, std::shared_ptr<MicroModel>>
models_;
62 bool formNewSquad(std::shared_ptr<UPCTuple> sourceUpc,
int sourceUpcId);
64 void updateTask(std::shared_ptr<Task>);
Game state.
Definition: state.h:42
Module which controls ("micromanages") units into and out of combat.
Definition: squadcombat.h:37
Definition: squadcombat.h:18
std::unordered_map< Unit const *, EnemyState > enemyStates_
Micromanagement state of enemy units.
Definition: squadcombat.h:55
int lastRepairing
Definition: squadcombat.h:20
std::unordered_map< std::string, std::shared_ptr< MicroModel > > models_
Models for SquadCombat to solicit for unit UPCs.
Definition: squadcombat.h:58
std::vector< std::shared_ptr< Behavior > > BehaviorList
Gives a series of Behaviors the option of issuing a UPC for the unit.
Definition: behavior.h:89
int damages
Definition: squadcombat.h:19
std::unordered_map< Unit const *, Agent > agents_
Micromanagement state of our units.
Definition: squadcombat.h:52
Main namespace for bot-related code.
Definition: areainfo.cpp:17
State * state
Definition: squadcombat.h:49
Interface for bot modules.
Definition: module.h:30