diff --git a/src/dusk/randomizer/game/randomizer_context.cpp b/src/dusk/randomizer/game/randomizer_context.cpp index 200ce68aa0..64ae7d7402 100644 --- a/src/dusk/randomizer/game/randomizer_context.cpp +++ b/src/dusk/randomizer/game/randomizer_context.cpp @@ -1303,17 +1303,14 @@ static void DeleteFailedGenerationFiles(randomizer::Randomizer& rando) { } } -/* - * Generates a seed and writes the necessary seed files to the players seed directory - */ -void GenerateAndWriteSeed(std::string& generationStatusMsg) { +bool GenerateAndWriteSeed(std::string& generationStatusMsg) { auto r = randomizer::Randomizer{dusk::ui::GetRandomizerPath()}; auto generationResult = r.Generate(); if (generationResult.has_value()) { - generationStatusMsg = fmt::format("Seed Generation failed. Reason:\n{}", generationResult.value()); + generationStatusMsg = fmt::format("Failed to generate seed. Reason:\n{}", generationResult.value()); DeleteFailedGenerationFiles(r); - return; + return false; } const auto world = r.GetWorld(); @@ -1324,7 +1321,7 @@ void GenerateAndWriteSeed(std::string& generationStatusMsg) { generationStatusMsg = fmt::format("Failed to write seed data. Reason:\n{}", e.what()); DeleteFailedGenerationFiles(r); - return; + return false; } randoData.mHash = r.GetConfig().GetHash(); @@ -1333,8 +1330,9 @@ void GenerateAndWriteSeed(std::string& generationStatusMsg) { generationStatusMsg = fmt::format("Failed to write seed data to file. Reason:\n{}", writeToFileResult.value()); DeleteFailedGenerationFiles(r); - return; + return false; } generationStatusMsg = fmt::format("Seed generated! Hash: {}", randoData.mHash); + return true; } \ No newline at end of file diff --git a/src/dusk/randomizer/game/randomizer_context.hpp b/src/dusk/randomizer/game/randomizer_context.hpp index 8a198b6b70..c36d9b73bb 100644 --- a/src/dusk/randomizer/game/randomizer_context.hpp +++ b/src/dusk/randomizer/game/randomizer_context.hpp @@ -255,6 +255,10 @@ u32 getActorPatchesCurrentStageKey(u8 roomNo); */ u32 getStageObjCRC32(u8* data, size_t size); -void GenerateAndWriteSeed(std::string& generationStatusMsg); +/* + * Generates a seed and writes the necessary seed files to the players seed directory + * Returns true if generation was successful, false otherwise. + */ +bool GenerateAndWriteSeed(std::string& generationStatusMsg); #endif //DUSK_RANDOMIZER_CONTEXT_HPP diff --git a/src/dusk/ui/modal.cpp b/src/dusk/ui/modal.cpp index b08a333163..31cc098bf1 100644 --- a/src/dusk/ui/modal.cpp +++ b/src/dusk/ui/modal.cpp @@ -27,14 +27,7 @@ Modal::Modal(Props props) : WindowSmall("modal", "modal-dialog"), mProps(std::mo actions->SetClass("modal-actions", true); for (auto& action : mProps.actions) { - auto btn = std::make_unique