Choose your operating system:
Windows
macOS
Linux
Module |
|
Header |
/Engine/Source/Runtime/AIModule/Classes/BehaviorTree/BTDecorator.h |
Include |
#include "BehaviorTree/BTDecorator.h" |
class UBTDecorator : public UBTAuxiliaryNode
Decorators are supporting nodes placed on parent-child connection, that receive notification about execution flow and can be ticked
Because some of them can be instanced for specific AI, following virtual functions are not marked as const:
OnNodeActivation
OnNodeDeactivation
OnNodeProcessed
OnBecomeRelevant (from UBTAuxiliaryNode)
OnCeaseRelevant (from UBTAuxiliaryNode)
TickNode (from UBTAuxiliaryNode)
If your node is not being instanced (default behavior), DO NOT change any properties of object within those functions! Template nodes are shared across all behavior tree components using the same tree asset and must store their runtime properties in provided NodeMemory block (allocation size determined by GetInstanceMemorySize() )
Name | Description | ||
---|---|---|---|
|
uint32: 1 |
bAllowAbortChildNodes |
If set, FlowAbortMode can be set to Self and Both |
|
uint32: 1 |
bAllowAbortLowerPri |
If set, FlowAbortMode can be set to LowerPriority and Both |
|
uint32: 1 |
bAllowAbortNone |
If set, FlowAbortMode can be set to None |
|
uint32: 1 |
bNotifyActivation |
If set, OnNodeActivation will be used |
|
uint32: 1 |
bNotifyDeactivation |
If set, OnNodeDeactivation will be used |
|
uint32: 1 |
bNotifyProcessed |
If set, OnNodeProcessed will be used |
|
uint32: 1 |
bShowInverseConditionDesc |
If set, static description will include default description of inversed condition |
|
friend |
FBehaviorDecoratorDetails |
|
|
TEnumAsByte< EB... |
FlowAbortMode |
Flow controller settings |
Name | Description | |
---|---|---|
|
UBTDecorator ( |
Name | Description | ||
---|---|---|---|
|
CalculateRawConditionValue ( |
Calculates raw, core value of decorator's condition. Should not include calling IsInversed |
|
|
ConditionalFlowAbort ( |
More "flow aware" version of calling RequestExecution(this) on owning behavior tree component should be used in external events that may change result of CalculateRawConditionValue |
|
|
EBTFlowAbort... |
GetFlowAbortMode() |
|
|
InitNotifyFlags |
||
|
IsFlowAbortModeValid() |
||
|
IsInversed() |
||
|
OnNodeActivation ( |
Called when underlying node is activated this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyActivation must be set to true for this function to be called Calling INIT_DECORATOR_NODE_NOTIFY_FLAGS in the constructor of the decorator will set this flag automatically |
|
|
OnNodeDeactivation ( |
Called when underlying node has finished this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyDeactivation must be set to true for this function to be called Calling INIT_DECORATOR_NODE_NOTIFY_FLAGS in the constructor of the decorator will set this flag automatically |
|
|
OnNodeProcessed ( |
Called when underlying node was processed (deactivated or failed to activate) this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyProcessed must be set to true for this function to be called Calling INIT_DECORATOR_NODE_NOTIFY_FLAGS in the constructor of the decorator will set this flag automatically |
|
|
SetIsInversed ( |
||
|
UpdateFlowAbortMode() |
Modify current flow abort mode, so it can be used with parent composite |
|
|
WrappedCanExecute ( |
Wrapper for node instancing: CalculateRawConditionValue |
|
|
WrappedOnNodeActivation ( |
Wrapper for node instancing: OnNodeActivation |
|
|
WrappedOnNodeDeactivation ( |
Wrapper for node instancing: OnNodeDeactivation |
|
|
WrappedOnNodeProcessed ( |
Wrapper for node instancing: OnNodeProcessed |
Name | Description | ||
---|---|---|---|
|
GetStaticDescription() |
Name | Description | ||
---|---|---|---|
|
InitializeDecorator ( |
This function is deprecated, please use InitializeParentLink instead. |