AiMalgam Core 1.1.0
API documentation for the generic Unity3D AI System
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Properties | List of all members
NikosAssets.AiMalgam.Settings.AiMalgamNodeGraph Class Reference

A custom NodeGraph to display any AiMalgamNode to configure AI behaviors in. Is visible and assignable in the Unity inspector More...

Public Types

enum  AiMalgamGraphEditorTab { GraphInspector = 0 , NodeInspector = 1 , AIAssetsInspector = 2 }
 Shows the respective panel body
 

Public Member Functions

override void Clear ()
 Clear the hosted nodes
 
override void OnOpen ()
 
override void RemoveNode (Node node, bool record, bool clearConnections, params Node[] maintainConnections)
 
virtual void CollectRequiredEnginesForActionSettings (bool clear=false, List< AiMalgamNodeGraph > excludeSubGraphs=null)
 Fill the requiredEnginesForActions dictionary to be displayed in the panel and to indicate what AiMalgamBaseEngineWrappers are needed in order for this graph to work on an AiMalgamEntity More...
 
virtual void CollectRequiredDescriptorsForConditionSettings (bool clear=false, List< AiMalgamNodeGraph > excludeSubGraphs=null)
 Fill the requiredDescriptorsForConditions dictionary to be displayed in the panel and to indicate what AiMalgamBaseDescriptors are needed in order for this graph to work on an AiMalgamEntity More...
 

Public Attributes

bool foldOutGraphContainer = true
 
AiMalgamDeciderWrapper rootDecider
 The mandatory AiMalgamDeciderWrapper where the AI decision is made via different (custom) traversal mechanics
 
AiMalgamDeciderWrapper awakeDecider
 Optional AiMalgamDeciderWrapper traversed through on its respective Unity event function (as its name suggests)
 
AiMalgamDeciderWrapper enableDecider
 
AiMalgamDeciderWrapper startDecider
 
bool collapseNodesOnPanning = true
 Collapse the node bodies to safe performance and reduce lags (optional)
 
bool collapseNodesOnSelection = true
 
Dictionary< string, string[]> requiredEnginesForActions = new Dictionary<string, string[]>()
 Displays the required AiMalgamBaseEngineWrappers for every found AiMalgamBaseSettings in this graph that are required to be on the AiMalgamEntity
 
Dictionary< string, string[]> requiredDescriptorsForConditions = new Dictionary<string, string[]>()
 Displays the required AiMalgamBaseDescriptors for every found AiMalgamBaseConditionForDescriptors<DescriptorType> in this graph that are required to be on the AiMalgamEntity
 

Protected Member Functions

override void OnValidate ()
 

Properties

AiMalgamGraphEditorTab CurrentAIGraphEditorTab = AiMalgamGraphEditorTab.AIAssetsInspector [get, set]
 Shows the respective panel body
 

Detailed Description

A custom NodeGraph to display any AiMalgamNode to configure AI behaviors in. Is visible and assignable in the Unity inspector

Member Function Documentation

◆ CollectRequiredDescriptorsForConditionSettings()

virtual void NikosAssets.AiMalgam.Settings.AiMalgamNodeGraph.CollectRequiredDescriptorsForConditionSettings ( bool  clear = false,
List< AiMalgamNodeGraph excludeSubGraphs = null 
)
virtual

Fill the requiredDescriptorsForConditions dictionary to be displayed in the panel and to indicate what AiMalgamBaseDescriptors are needed in order for this graph to work on an AiMalgamEntity

Parameters
clearRestart the search and wipe old AiMalgamBaseDescriptors?
excludeSubGraphsAvoid forever recursion of repeating subgraphs

◆ CollectRequiredEnginesForActionSettings()

virtual void NikosAssets.AiMalgam.Settings.AiMalgamNodeGraph.CollectRequiredEnginesForActionSettings ( bool  clear = false,
List< AiMalgamNodeGraph excludeSubGraphs = null 
)
virtual

Fill the requiredEnginesForActions dictionary to be displayed in the panel and to indicate what AiMalgamBaseEngineWrappers are needed in order for this graph to work on an AiMalgamEntity

Parameters
clearRestart the search and wipe old AiMalgamBaseEngineWrappers?
excludeSubGraphsAvoid forever recursion of repeating subgraphs