private void PerformPreCompilationStepForFolder(AudioClipFolder folder, PreCompileGameEventArgs evArgs, List <AudioClip> filesToCopy, List <string> fileNamesToUpdate, int inheritedVolume, bool inheritedRepeat, AudioClipPriority inheritedPriority) { if (folder.DefaultPriority != AudioClipPriority.Inherit) { inheritedPriority = folder.DefaultPriority; } if (folder.DefaultRepeat != InheritableBool.Inherit) { inheritedRepeat = (folder.DefaultRepeat == InheritableBool.True) ? true : false; } if (folder.DefaultVolume >= 0) { inheritedVolume = folder.DefaultVolume; } foreach (AudioClip clip in folder.Items) { AddAudioClipToListIfFileNeedsToBeCopiedFromSource(clip, evArgs, filesToCopy, fileNamesToUpdate); SetActualAudioClipProperties(clip, inheritedVolume, inheritedRepeat, inheritedPriority); } foreach (AudioClipFolder subFolder in folder.SubFolders) { PerformPreCompilationStepForFolder(subFolder, evArgs, filesToCopy, fileNamesToUpdate, inheritedVolume, inheritedRepeat, inheritedPriority); } }
private void SetActualAudioClipProperties(AudioClip clip, int inheritedVolume, bool inheritedRepeat, AudioClipPriority inheritedPriority) { if (clip.DefaultPriority == AudioClipPriority.Inherit) { clip.ActualPriority = inheritedPriority; } else { clip.ActualPriority = clip.DefaultPriority; } if (clip.DefaultRepeat == InheritableBool.Inherit) { clip.ActualRepeat = inheritedRepeat; } else { clip.ActualRepeat = (clip.DefaultRepeat == InheritableBool.True); } if (clip.DefaultVolume < 0) { clip.ActualVolume = inheritedVolume; } else { clip.ActualVolume = clip.DefaultVolume; } }