diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingRepositoryLibrary.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingRepositoryLibrary.cpp index 8ad93f6..07b310e 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingRepositoryLibrary.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingRepositoryLibrary.cpp @@ -5949,6 +5949,7 @@ FHyperTwistTrainingRunRecord UHyperTwistTrainingRepositoryLibrary::BuildRunRecor RunState.ImportedRuntimeSelectionState ); RunRecord.ImportedRuntimeSelectionState = RunState.ImportedRuntimeSelectionState; + RunRecord.ImportedGeneratedModeLaunchRequest = RunState.ImportedGeneratedModeLaunchRequest; RunRecord.Attempts = RunState.Attempts; RunRecord.RemainingCaseIds = RunState.RemainingCaseIds; RunRecord.ReplayId = RunState.ReplayPacket.ReplayId; diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingSubsystem.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingSubsystem.cpp index 773aaf4..924abc0 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingSubsystem.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingSubsystem.cpp @@ -797,6 +797,12 @@ FHyperTwistTrainingImportedGeneratedModeLaunchRequest UHyperTwistTrainingSubsyst ActiveImportedGeneratedModeLaunchRequest.RequestSource = RequestSource.IsEmpty() ? TEXT("runtime-imported-generated-mode") : RequestSource; ActiveImportedGeneratedModeLaunchRequest.LaunchConfig = LaunchConfig; + ActiveRunState.ImportedGeneratedModeLaunchRequest = ActiveImportedGeneratedModeLaunchRequest; + TrainingRepositoryState = UHyperTwistTrainingRepositoryLibrary::RecordRunState( + TrainingRepositoryState, + ActiveRunState + ); + RefreshRepositoryViews(); return ActiveImportedGeneratedModeLaunchRequest; } @@ -2823,6 +2829,7 @@ FHyperTwistTrainingRunState UHyperTwistTrainingSubsystem::StartTrainingRunFromDe ActiveCoachFollowUpBrief = FHyperTwistCoachBrief(); ActiveImportedGeneratedModeLaunchRequest = FHyperTwistTrainingImportedGeneratedModeLaunchRequest(); ActiveRunState = UHyperTwistTrainingLibrary::StartTrainingRun(Deck, UserId, SessionId, Mode); + ActiveRunState.ImportedGeneratedModeLaunchRequest = ActiveImportedGeneratedModeLaunchRequest; bHasActiveRun = ActiveRunState.IsStructurallyValid(); RefreshSummary(); TrainingRepositoryState = UHyperTwistTrainingRepositoryLibrary::RecordRunState( diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingTypes.h b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingTypes.h index df03018..110012d 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingTypes.h +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingTypes.h @@ -1066,6 +1066,9 @@ struct FHyperTwistTrainingRunState UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") FHyperTwistTrainingImportedRuntimeSelectionState ImportedRuntimeSelectionState; + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FHyperTwistTrainingImportedGeneratedModeLaunchRequest ImportedGeneratedModeLaunchRequest; + bool IsStructurallyValid() const { return ActiveDeck.IsStructurallyValid() @@ -1323,6 +1326,9 @@ struct FHyperTwistTrainingRunRecord UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") FHyperTwistTrainingImportedRuntimeSelectionState ImportedRuntimeSelectionState; + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FHyperTwistTrainingImportedGeneratedModeLaunchRequest ImportedGeneratedModeLaunchRequest; + bool IsStructurallyValid() const { return Session.IsStructurallyValid() && Summary.TrainingSessionId == Session.TrainingSessionId;