| 122 | } |
| 123 | |
| 124 | void UFlowSubsystem::FinishRootFlow(UObject* Owner, UFlowAsset* TemplateAsset, const EFlowFinishPolicy FinishPolicy) |
| 125 | { |
| 126 | UFlowAsset* InstanceToFinish = nullptr; |
| 127 | |
| 128 | for (TPair<TObjectPtr<UFlowAsset>, TWeakObjectPtr<UObject>>& RootInstance : RootInstances) |
| 129 | { |
| 130 | if (Owner && Owner == RootInstance.Value.Get() && RootInstance.Key && RootInstance.Key->GetTemplateAsset() == TemplateAsset) |
| 131 | { |
| 132 | InstanceToFinish = RootInstance.Key; |
| 133 | break; |
| 134 | } |
| 135 | } |
| 136 | |
| 137 | if (InstanceToFinish) |
| 138 | { |
| 139 | RootInstances.Remove(InstanceToFinish); |
| 140 | InstanceToFinish->FinishFlow(FinishPolicy); |
| 141 | } |
| 142 | } |
| 143 | |
| 144 | void UFlowSubsystem::FinishAllRootFlows(UObject* Owner, const EFlowFinishPolicy FinishPolicy) |
| 145 | { |
no test coverage detected