feat(PageDownloadCompDetail): 支持为资源包和光影包选择默认下载位置
This commit is contained in:
@@ -382,6 +382,42 @@
|
|||||||
Log("[Comp] 使用适合的游戏版本作为默认下载位置(" & SelectedVersion.Name & ")")
|
Log("[Comp] 使用适合的游戏版本作为默认下载位置(" & SelectedVersion.Name & ")")
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
ElseIf File.Type = CompType.ResourcePack OrElse File.Type = CompType.Shader Then
|
||||||
|
Dim IsVersionSuitable As Func(Of McVersion, Boolean) =
|
||||||
|
Function(Version)
|
||||||
|
If Not Version.IsLoaded Then Version.Load()
|
||||||
|
If File.GameVersions.Any(Function(v) v.Contains(".")) AndAlso
|
||||||
|
Not File.GameVersions.Any(Function(v) v.Contains(".") AndAlso v = Version.Version.McName) Then Return False
|
||||||
|
Return False
|
||||||
|
End Function
|
||||||
|
If McVersionCurrent IsNot Nothing Then
|
||||||
|
DefaultFolder = McVersionCurrent.PathIndie & If(File.Type = CompType.ResourcePack, "resourcepacks\", "shaderpacks\")
|
||||||
|
Directory.CreateDirectory(DefaultFolder)
|
||||||
|
Log("[Comp] 使用当前版本的对应资源文件夹作为默认下载位置(" & McVersionCurrent.Name & ")")
|
||||||
|
Else
|
||||||
|
Dim NeedLoad As Boolean = McVersionListLoader.State <> LoadState.Finished
|
||||||
|
If NeedLoad Then
|
||||||
|
Hint("正在查找适合的游戏版本……")
|
||||||
|
LoaderFolderRun(McVersionListLoader, PathMcFolder, LoaderFolderRunType.ForceRun, MaxDepth:=1, ExtraPath:="versions\", WaitForExit:=True)
|
||||||
|
End If
|
||||||
|
Dim SuitableVersions As New List(Of McVersion)
|
||||||
|
For Each Version As McVersion In McVersionList.Values.SelectMany(Function(l) l)
|
||||||
|
If IsVersionSuitable(Version) Then SuitableVersions.Add(Version)
|
||||||
|
Next
|
||||||
|
If Not SuitableVersions.Any() Then
|
||||||
|
DefaultFolder = PathMcFolder
|
||||||
|
If NeedLoad Then
|
||||||
|
Hint("当前 MC 文件夹中没有找到适合这个资源的版本!")
|
||||||
|
Else
|
||||||
|
Log("[Comp] 由于当前版本不兼容,使用当前的 MC 文件夹作为默认下载位置")
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
Dim SelectedVersion = SuitableVersions.LastOrDefault()
|
||||||
|
DefaultFolder = SelectedVersion.PathIndie & If(File.Type = CompType.ResourcePack, "resourcepacks\", "shaderpacks\")
|
||||||
|
Directory.CreateDirectory(DefaultFolder)
|
||||||
|
Log("[Comp] 使用适合的游戏版本作为默认下载位置(" & SelectedVersion.Name & ")")
|
||||||
|
End If
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
'获取基本信息
|
'获取基本信息
|
||||||
Dim FileName As String
|
Dim FileName As String
|
||||||
|
|||||||
Reference in New Issue
Block a user