Crystal AI  1.0.0
Crystal.DecisionMaker Class Reference

The decision maker, every agent will have one or more of these to execute different AIs. More...

Inheritance diagram for Crystal.DecisionMaker:
Crystal.DecisionMakerBase Crystal.IDecisionMaker

Classes

class  SchedulerNullException
 

Public Member Functions

 DecisionMaker (IUtilityAi uai, IContextProvider contextProvider, IScheduler aiScheduler)
 Initializes a new instance of the DecisionMaker class. More...
 
- Public Member Functions inherited from Crystal.DecisionMakerBase
void Start ()
 Starts the associated AI and sets the decision maker state to F:Crystal.DecisionMakerState.Running. More...
 
void Stop ()
 Stops the associated AI and sets the decision maker state to F:Crystal.DecisionMakerState.Stopped. More...
 
void Pause ()
 Pauses the associated AI and the decision maker state to F:Crystal.DecisionMakerState.Paused. More...
 
void Resume ()
 Resumes execution of the associated AI and sets the decision maker state to F:Crystal.DecisionMakerState.Running. More...
 
void Think ()
 Makes a decision on what should be the next action to be executed. More...
 
void Update ()
 Updates the action selected by Think() - that is if it needs updating, otherwise this will simply return. More...
 

Protected Member Functions

override void OnStart ()
 Called after M:Crystal.DecisionMakerBase.Start. More...
 
override void OnStop ()
 Called after M:Crystal.DecisionMakerBase.Stop. More...
 
override void OnPause ()
 Called after M:Crystal.DecisionMakerBase.Pause. More...
 
override void OnResume ()
 Called after M:Crystal.DecisionMakerBase.Resume. More...
 
- Protected Member Functions inherited from Crystal.DecisionMakerBase
 DecisionMakerBase (IUtilityAi ai, IContextProvider contextProvider)
 Initializes a new instance of the DecisionMakerBase class. More...
 

Properties

float InitThinkDelayMin [get, set]
 The minimum initial think delay in seconds. More...
 
float InitThinkDelayMax [get, set]
 Gets or sets the initialize think delay maximum. More...
 
float ThinkDelayMin [get, set]
 Gets or sets the think delay minimum. More...
 
float ThinkDelayMax [get, set]
 Gets or sets the think delay maximum. More...
 
float InitUpdateDelayMin [get, set]
 Gets or sets the initialize update delay minimum. More...
 
float InitUpdateDelayMax [get, set]
 Gets or sets the initialize update delay maximum. More...
 
float UpdateDelayMin [get, set]
 Gets or sets the update delay minimum. More...
 
float UpdateDelayMax [get, set]
 Gets or sets the update delay maximum. More...
 
- Properties inherited from Crystal.DecisionMakerBase
DecisionMakerState State [get, protected set]
 The state of the decision maker. More...
 
- Properties inherited from Crystal.IDecisionMaker
DecisionMakerState State [get]
 The state of the decision maker. More...
 

Detailed Description

The decision maker, every agent will have one or more of these to execute different AIs.

Constructor & Destructor Documentation

Crystal.DecisionMaker.DecisionMaker ( IUtilityAi  uai,
IContextProvider  contextProvider,
IScheduler  aiScheduler 
)
inline

Initializes a new instance of the DecisionMaker class.

Parameters
uaiThe uai.
contextProviderThe context provider.
aiSchedulerThe ai scheduler.
Exceptions
Crystal.DecisionMaker.SchedulerNullException

Member Function Documentation

override void Crystal.DecisionMaker.OnPause ( )
inlineprotectedvirtual

Called after M:Crystal.DecisionMakerBase.Pause.

Implements Crystal.DecisionMakerBase.

override void Crystal.DecisionMaker.OnResume ( )
inlineprotectedvirtual

Called after M:Crystal.DecisionMakerBase.Resume.

Implements Crystal.DecisionMakerBase.

override void Crystal.DecisionMaker.OnStart ( )
inlineprotectedvirtual

Called after M:Crystal.DecisionMakerBase.Start.

Implements Crystal.DecisionMakerBase.

override void Crystal.DecisionMaker.OnStop ( )
inlineprotectedvirtual

Called after M:Crystal.DecisionMakerBase.Stop.

Implements Crystal.DecisionMakerBase.

Property Documentation

float Crystal.DecisionMaker.InitThinkDelayMax
getset

Gets or sets the initialize think delay maximum.

The initialize think delay maximum.

float Crystal.DecisionMaker.InitThinkDelayMin
getset

The minimum initial think delay in seconds.

float Crystal.DecisionMaker.InitUpdateDelayMax
getset

Gets or sets the initialize update delay maximum.

The initialize update delay maximum.

float Crystal.DecisionMaker.InitUpdateDelayMin
getset

Gets or sets the initialize update delay minimum.

The initialize update delay minimum.

float Crystal.DecisionMaker.ThinkDelayMax
getset

Gets or sets the think delay maximum.

The think delay maximum.

float Crystal.DecisionMaker.ThinkDelayMin
getset

Gets or sets the think delay minimum.

The think delay minimum.

float Crystal.DecisionMaker.UpdateDelayMax
getset

Gets or sets the update delay maximum.

The update delay maximum.

float Crystal.DecisionMaker.UpdateDelayMin
getset

Gets or sets the update delay minimum.

The update delay minimum.


The documentation for this class was generated from the following file: