AiMalgam Core 1.1.0
API documentation for the generic Unity3D AI System
|
A specific AiMalgamDeciderWrapper that can represent either a leaf-branch or decider branch More...
Public Member Functions | |
override AiMalgamDecision | RootTraverse (AiMalgamEntity aiMalgamEntity, AiMalgamDecision decision) |
Traverse through valid child IAiMalgamDeciders until valid AiMalgamBaseSettings are found to form the AiMalgamDecision More... | |
abstract AiMalgamDecision | RootTraverse (AiMalgamEntity aiMalgamEntity, AiMalgamDecision decision) |
Traverse through valid child IAiMalgamDeciders until valid AiMalgamBaseSettings are found to form the AiMalgamDecision More... | |
Public Member Functions inherited from NikosAssets.AiMalgam.Settings.AiMalgamNode | |
override void | OnOpen () |
Called if the AiMalgamNodeGraph hosting this Node is opened | |
virtual void | NotifyOnNodeChanged () |
A helper method to notify node value changes and emit the OnNodeChanged event | |
override object | GetValue (NodePort port) |
Used in the AiMalgamNodeGraph. More... | |
virtual void | ResetMarkingInGraph (AiMalgamEntity requester, bool forceRepaint=false) |
EDITOR ONLY EFFECT. Reset the node's visuals in the AiMalgamNodeGraph More... | |
virtual void | MarkInGraph (AiMalgamEntity requester, bool acceptedOrFailed, bool forceRepaint=false) |
EDITOR ONLY EFFECT. Set the node's visuals in the AiMalgamNodeGraph (accepted or failed) More... | |
virtual void | MarkInGraph (AiMalgamEntity requester, Color markColor, bool forceRepaint=false) |
EDITOR ONLY EFFECT. Set the node's visuals in the AiMalgamNodeGraph More... | |
AiMalgamDecision | RootTraverse (AiMalgamEntity aiMalgamEntity, AiMalgamDecision decision) |
Traverse through valid child IAiMalgamDeciders until valid AiMalgamBaseSettings are found to form the AiMalgamDecision More... | |
Public Attributes | |
bool | isLeaf |
Only branch to AiMalgamBaseSettings rather than IAiMalgamDeciders, if set to true | |
AiMalgamDeciderListWrapper | childDecisionNodes = new AiMalgamDeciderListWrapper() |
Only shown and processed if isLeaf is set to false | |
AiMalgamBaseSettingsListWrapper | leafSettingsListWrapper = new AiMalgamBaseSettingsListWrapper() |
Only shown and processed if isLeaf is set to true | |
Public Attributes inherited from NikosAssets.AiMalgam.Settings.Deciders.AiMalgamDeciderWrapper | |
AiMalgamDeciderWrapper | output |
Used in the AiMalgamNodeGraph. Do not temper with it! | |
AiMalgamBaseCondition | condition = default |
The AiMalgamBaseCondition that must validate in order for this decider to traverse further | |
bool | removeAllActiveStatesAndActions = false |
If this decider validates, force the requesting AiMalgamEntity to dispose of any AiMalgamState and running AiMalgamBaseAction<BlackboardType> | |
AiMalgamStatesListWrapper | removeSpecificActiveStatesAndActions = new AiMalgamStatesListWrapper() |
Removes specific AiMalgamStates and their represented AiMalgamBaseAction<BlackboardType>s on the requesting AiMalgamEntity if this decider validates | |
Protected Member Functions | |
abstract AiMalgamDecision | BranchTraverse (AiMalgamEntity aiMalgamEntity, AiMalgamDecision decision) |
Do a custom implementation to traverse the childDecisionNodes in your desired fashion More... | |
abstract AiMalgamDecision | LeafTraverse (AiMalgamEntity aiMalgamEntity, AiMalgamDecision decision) |
Do a custom implementation to traverse the leafSettingsListWrapper in your desired fashion More... | |
virtual AiMalgamApplyDeciderResult | ApplyBranchLeafToEntity (AiMalgamEntity aiMalgamEntity, AiMalgamDecision decision, List< AiMalgamBaseSettings > baseSettingsList) |
Handles found AiMalgamBaseSettings and applies them on the requesting AiMalgamEntity More... | |
Protected Member Functions inherited from NikosAssets.AiMalgam.Settings.Deciders.AiMalgamDeciderWrapper | |
virtual void | HandleRunningStates (AiMalgamEntity aiMalgamEntity, bool success) |
Handle the set removeAllActiveStatesAndActions and removeSpecificActiveStatesAndActions fields here More... | |
Protected Member Functions inherited from NikosAssets.AiMalgam.Settings.AiMalgamNode | |
override void | Reset () |
override void | OnEnable () |
override void | Awake () |
override void | OnValidate () |
Properties | |
override bool | IsLeaf [get] |
Only branch to AiMalgamBaseSettings rather than IAiMalgamDeciders, if set to true | |
Properties inherited from NikosAssets.AiMalgam.Settings.Deciders.AiMalgamDeciderWrapper | |
abstract bool | IsLeaf [get] |
Does this decider represent a branch-leaf? | |
Additional Inherited Members | |
Events inherited from NikosAssets.AiMalgam.Settings.AiMalgamNode | |
virtual Action< AiMalgamNode > | OnNodeChanged |
Emitted, if the node values where changed (OnValidate()) | |
A specific AiMalgamDeciderWrapper that can represent either a leaf-branch or decider branch
|
protectedvirtual |
Handles found AiMalgamBaseSettings and applies them on the requesting AiMalgamEntity
aiMalgamEntity | The requesting AiMalgamEntity to apply the baseSettingsList on |
decision | The final AiMalgamDecision |
baseSettingsList | The final AiMalgamBaseSettings list of this (root or sub) branch |
Reimplemented in NikosAssets.AiMalgam.Settings.Deciders.AiMalgamMultipleDecider.
|
protectedpure virtual |
Do a custom implementation to traverse the childDecisionNodes in your desired fashion
aiMalgamEntity | The requesting AiMalgamEntity to apply the resulting (valid) AiMalgamBaseSettings on |
decision | The AiMalgamDecision to form |
Implemented in NikosAssets.AiMalgam.Settings.Deciders.AiMalgamMultipleDecider, NikosAssets.AiMalgam.Settings.Deciders.AiMalgamRandomDecider, NikosAssets.AiMalgam.Settings.Deciders.AiMalgamScoreDecider, and NikosAssets.AiMalgam.Settings.Deciders.AiMalgamSingleDecider.
|
protectedpure virtual |
Do a custom implementation to traverse the leafSettingsListWrapper in your desired fashion
aiMalgamEntity | The requesting AiMalgamEntity to apply the resulting (valid) AiMalgamBaseSettings on |
decision | The AiMalgamDecision to form |
Implemented in NikosAssets.AiMalgam.Settings.Deciders.AiMalgamMultipleDecider, NikosAssets.AiMalgam.Settings.Deciders.AiMalgamRandomDecider, NikosAssets.AiMalgam.Settings.Deciders.AiMalgamScoreDecider, and NikosAssets.AiMalgam.Settings.Deciders.AiMalgamSingleDecider.
|
virtual |
Traverse through valid child IAiMalgamDeciders until valid AiMalgamBaseSettings are found to form the AiMalgamDecision
aiMalgamEntity | The requesting AiMalgamEntity to apply the resulting (valid) AiMalgamBaseSettings on |
decision | The previous (or initial) AiMalgamDecision to expand |
Implements NikosAssets.AiMalgam.Settings.Deciders.AiMalgamDeciderWrapper.