diff --git a/Config/DefaultGame.ini b/Config/DefaultGame.ini index 9dece50..c017d90 100644 --- a/Config/DefaultGame.ini +++ b/Config/DefaultGame.ini @@ -3,7 +3,7 @@ ProjectID=F5529D354BF9DDA5B4BC06BB62D10933 bShouldWindowPreserveAspectRatio=False ProjectName=MediocreMapAssistant2 ProjectDisplayedTitle=NSLOCTEXT("[/Script/EngineSettings]", "A4F171D24A09E6B0C435A39031D526F5", "Mediocre Map Assistant 2") -ProjectVersion=4.8.0 +ProjectVersion=4.8.2 [/Script/UnrealEd.ProjectPackagingSettings] Build=IfProjectHasCode diff --git a/Content/Blueprints/BP_controller.uasset b/Content/Blueprints/BP_controller.uasset index a4efb6d..5aa6e60 100644 Binary files a/Content/Blueprints/BP_controller.uasset and b/Content/Blueprints/BP_controller.uasset differ diff --git a/Content/Blueprints/WidgetSongInfos.uasset b/Content/Blueprints/WidgetSongInfos.uasset index 5b532f8..7d6be2c 100644 Binary files a/Content/Blueprints/WidgetSongInfos.uasset and b/Content/Blueprints/WidgetSongInfos.uasset differ diff --git a/Content/Levels/Level_Startup.umap b/Content/Levels/Level_Startup.umap index 31667f9..75cac81 100644 Binary files a/Content/Levels/Level_Startup.umap and b/Content/Levels/Level_Startup.umap differ diff --git a/Source/MediocreMapAssistant2/BPFileIO.cpp b/Source/MediocreMapAssistant2/BPFileIO.cpp index dd83ca9..7a3ffb1 100644 --- a/Source/MediocreMapAssistant2/BPFileIO.cpp +++ b/Source/MediocreMapAssistant2/BPFileIO.cpp @@ -336,4 +336,35 @@ int UBPFileIO::getFileSize(const FString & File) int UBPFileIO::getTimestamp(const FString & File) { return FPlatformFileManager::Get().GetPlatformFile().GetTimeStamp(*File).ToUnixTimestamp(); +} + +bool UBPFileIO::SaveStringTextToFile( + FString SaveDirectory, + FString JoyfulFileName, + FString SaveText, + bool AllowOverWriting +) { + if (!FPlatformFileManager::Get().GetPlatformFile().CreateDirectoryTree(*SaveDirectory)) + { + //Could not make the specified directory + return false; + //~~~~~~~~~~~~~~~~~~~~~~ + } + + //get complete file path + SaveDirectory += "\\"; + SaveDirectory += JoyfulFileName; + + //No over-writing? + if (!AllowOverWriting) + { + //Check if file exists already + if (FPlatformFileManager::Get().GetPlatformFile().FileExists(*SaveDirectory)) + { + //no overwriting + return false; + } + } + + return FFileHelper::SaveStringToFile(SaveText, *SaveDirectory, FFileHelper::EEncodingOptions::ForceUTF8WithoutBOM); } \ No newline at end of file diff --git a/Source/MediocreMapAssistant2/BPFileIO.h b/Source/MediocreMapAssistant2/BPFileIO.h index 0e6347d..7a318ad 100644 --- a/Source/MediocreMapAssistant2/BPFileIO.h +++ b/Source/MediocreMapAssistant2/BPFileIO.h @@ -55,5 +55,11 @@ class MEDIOCREMAPASSISTANT2_API UBPFileIO : public UBlueprintFunctionLibrary UFUNCTION(BlueprintCallable, Category = "File IO") static int getTimestamp(const FString& File); - + + UFUNCTION(BlueprintCallable, Category = "File IO") + static bool SaveStringTextToFile( + FString SaveDirectory, + FString JoyfulFileName, + FString SaveText, + bool AllowOverWriting); };