Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Base Code
- //https://answers.unrealengine.com/questions/134539/list-all-maps-in-project-or-directory.html
- //
- TArray<FString> UMusicalRangeBPFunctionLibrary::GetSongNamesInsideFolder(FString SongPath) {
- if (SongPath.IsEmpty())
- {
- TArray<FString> EmptyArray;
- EmptyArray.Add("ERROR");
- EmptyArray.Add("Invalid Path");
- return EmptyArray;
- }
- auto ObjectLibrary = UObjectLibrary::CreateLibrary(UObject::StaticClass(), false, true); //UWorld::StaticClass() UObject::StaticClass()
- ObjectLibrary->LoadAssetDataFromPath(SongPath); //Path input here "/Game/MusicShoot/Audio/Songs" //Had TEXT() here
- TArray<FAssetData> AssetDatas;
- ObjectLibrary->GetAssetDataList(AssetDatas);
- UE_LOG(LogTemp, Warning, TEXT("Found Songs: %d"), AssetDatas.Num()); //Display ItemsFound
- TArray<FString> Names = TArray<FString>();
- for (int32 i = 0; i < AssetDatas.Num(); ++i)
- {
- FAssetData& AssetData = AssetDatas[i];
- FString name = AssetData.AssetName.ToString();
- if (name.Contains("Track-",ESearchCase::CaseSensitive, ESearchDir::FromStart))
- {
- name.RemoveFromStart("Track-");
- Names.Add(name);
- }
- }
- return Names;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement