| 199 | } |
| 200 | |
| 201 | void UFlowSubsystem::RemoveSubFlow(UFlowNode_SubGraph* SubGraphNode, const EFlowFinishPolicy FinishPolicy) |
| 202 | { |
| 203 | if (InstancedSubFlows.Contains(SubGraphNode)) |
| 204 | { |
| 205 | UFlowAsset* AssetInstance = InstancedSubFlows[SubGraphNode]; |
| 206 | |
| 207 | SubGraphNode->GetFlowAsset()->ActiveSubGraphs.Remove(SubGraphNode); |
| 208 | InstancedSubFlows.Remove(SubGraphNode); |
| 209 | |
| 210 | AssetInstance->FinishFlow(FinishPolicy); |
| 211 | |
| 212 | // Make sure to set the NodeOwningThisAssetInstance after the FinishFlow call, as it may be needed in the FinishFlow method |
| 213 | AssetInstance->NodeOwningThisAssetInstance = nullptr; |
| 214 | } |
| 215 | } |
| 216 | |
| 217 | UFlowAsset* UFlowSubsystem::CreateFlowInstance(const TWeakObjectPtr<UObject> Owner, UFlowAsset* LoadedFlowAsset, FString NewInstanceName) |
| 218 | { |
no test coverage detected