Difference between revisions of "SummerOfCodeProposal AI Improvement Crab AI Manager"
From The Battle for Wesnoth Wiki
(New page: = AI Manager = First version of this class is already written and committed to Wesnoth. The purpose of this class is to act as a single point of contact between Wesnoth code and AI code ...) |
m (→AI Manager) |
||
Line 3: | Line 3: | ||
First version of this class is already written and committed to Wesnoth. | First version of this class is already written and committed to Wesnoth. | ||
− | The purpose of this class is to act as a single point of contact between Wesnoth code and AI code | + | The purpose of this class is to act as a single point of contact between Wesnoth code and AI code and to manage AI lifecycle, thus avoiding any leaks and allowing AI hot-redeployment. |
This class is used by Wesnoth in the following ways: | This class is used by Wesnoth in the following ways: |
Revision as of 20:41, 2 April 2009
AI Manager
First version of this class is already written and committed to Wesnoth.
The purpose of this class is to act as a single point of contact between Wesnoth code and AI code and to manage AI lifecycle, thus avoiding any leaks and allowing AI hot-redeployment.
This class is used by Wesnoth in the following ways:
- to add, create AIs, or list all known AI types (aliases)
- to remove AIs
- to get active AI parameters
- to set active AI parameters
- to ask the AI to play its turn.
Also, this class is a factory for the AIs (at the moment, this functionality is used by master AIs who need additional AIs to be created)