本文整理汇总了C++中UBTNode::GetExecutionIndex方法的典型用法代码示例。如果您正苦于以下问题:C++ UBTNode::GetExecutionIndex方法的具体用法?C++ UBTNode::GetExecutionIndex怎么用?C++ UBTNode::GetExecutionIndex使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UBTNode
的用法示例。
在下文中一共展示了UBTNode::GetExecutionIndex方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: CollectBreakpointsFromAsset
void FBehaviorTreeDebugger::CollectBreakpointsFromAsset(class UBehaviorTreeGraphNode* Node)
{
if (Node == NULL)
{
return;
}
for (int32 PinIdx = 0; PinIdx < Node->Pins.Num(); PinIdx++)
{
UEdGraphPin* Pin = Node->Pins[PinIdx];
if (Pin->Direction != EGPD_Output)
{
continue;
}
for (int32 i = 0; i < Pin->LinkedTo.Num(); i++)
{
UBehaviorTreeGraphNode* LinkedNode = Cast<UBehaviorTreeGraphNode>(Pin->LinkedTo[i]->GetOwningNode());
if (LinkedNode)
{
UBTNode* BTNode = Cast<UBTNode>(LinkedNode->NodeInstance);
if (BTNode && LinkedNode->bHasBreakpoint && LinkedNode->bIsBreakpointEnabled)
{
ActiveBreakpoints.Add(BTNode->GetExecutionIndex());
}
CollectBreakpointsFromAsset(LinkedNode);
}
}
}
}
示例2: OnBreakpointRemoved
void FBehaviorTreeDebugger::OnBreakpointRemoved(class UBehaviorTreeGraphNode* Node)
{
if (IsDebuggerReady())
{
UBTNode* BTNode = Cast<UBTNode>(Node->NodeInstance);
if (BTNode)
{
ActiveBreakpoints.RemoveSingleSwap(BTNode->GetExecutionIndex());
}
}
}
示例3: UpdateAbortHighlight
void UBehaviorTreeGraph::UpdateAbortHighlight(struct FAbortDrawHelper& Mode0, struct FAbortDrawHelper& Mode1)
{
for (int32 Index = 0; Index < Nodes.Num(); ++Index)
{
UBehaviorTreeGraphNode* Node = Cast<UBehaviorTreeGraphNode>(Nodes[Index]);
UBTNode* NodeInstance = Node ? Cast<UBTNode>(Node->NodeInstance) : NULL;
if (NodeInstance)
{
const uint16 ExecIndex = NodeInstance->GetExecutionIndex();
Node->bHighlightInAbortRange0 = (ExecIndex != MAX_uint16) && (ExecIndex >= Mode0.AbortStart) && (ExecIndex <= Mode0.AbortEnd);
Node->bHighlightInAbortRange1 = (ExecIndex != MAX_uint16) && (ExecIndex >= Mode1.AbortStart) && (ExecIndex <= Mode1.AbortEnd);
Node->bHighlightInSearchRange0 = (ExecIndex != MAX_uint16) && (ExecIndex >= Mode0.SearchStart) && (ExecIndex <= Mode0.SearchEnd);
Node->bHighlightInSearchRange1 = (ExecIndex != MAX_uint16) && (ExecIndex >= Mode1.SearchStart) && (ExecIndex <= Mode1.SearchEnd);
Node->bHighlightInSearchTree = false;
}
}
}