Merge pull request #5412 from hadesanc1/hadesanc1/issue5255

[可视化mod列表出错...]搜索Sand Filter时必报错
This commit is contained in:
龙腾猫跃
2025-01-15 22:44:58 +08:00
committed by GitHub
@@ -434,7 +434,10 @@
Public Function ToCompItem(ShowMcVersionDesc As Boolean, ShowLoaderDesc As Boolean) As MyCompItem Public Function ToCompItem(ShowMcVersionDesc As Boolean, ShowLoaderDesc As Boolean) As MyCompItem
'获取版本描述 '获取版本描述
Dim GameVersionDescription As String Dim GameVersionDescription As String
If GameVersions Is Nothing OrElse Not GameVersions.Any() Then Dim AllSnapshot As Boolean = GameVersions.All(Function(v) RegexCheck(v, "[0-9]{2}w[0-9]{2}[a-z]{1}"))
If AllSnapshot Then
GameVersionDescription = "仅快照版本"
ElseIf GameVersions Is Nothing OrElse Not GameVersions.Any() Then
GameVersionDescription = "未知" GameVersionDescription = "未知"
Else Else
Dim SpaVersions As New List(Of String) Dim SpaVersions As New List(Of String)
@@ -493,12 +496,19 @@
ModLoaderDescriptionFull = "仅 " & ModLoadersForDesc.Single.ToString ModLoaderDescriptionFull = "仅 " & ModLoadersForDesc.Single.ToString
ModLoaderDescriptionPart = ModLoadersForDesc.Single.ToString ModLoaderDescriptionPart = ModLoadersForDesc.Single.ToString
Case Else Case Else
If ModLoaders.Contains(CompModLoaderType.Forge) AndAlso If ModLoaders.Contains(CompModLoaderType.Forge) AndAlso Not AllSnapshot AndAlso
(GameVersions.Max < 14 OrElse ModLoaders.Contains(CompModLoaderType.Fabric)) AndAlso (GameVersions.Max < 14 OrElse ModLoaders.Contains(CompModLoaderType.Fabric)) AndAlso
(GameVersions.Max < 20 OrElse ModLoaders.Contains(CompModLoaderType.NeoForge)) AndAlso (GameVersions.Max < 20 OrElse ModLoaders.Contains(CompModLoaderType.NeoForge)) AndAlso
(GameVersions.Max < 14 OrElse ModLoaders.Contains(CompModLoaderType.Quilt) OrElse Setup.Get("ToolDownloadIgnoreQuilt")) Then (GameVersions.Max < 14 OrElse ModLoaders.Contains(CompModLoaderType.Quilt) OrElse Setup.Get("ToolDownloadIgnoreQuilt")) Then
ModLoaderDescriptionFull = "任意" ModLoaderDescriptionFull = "任意"
ModLoaderDescriptionPart = "" ModLoaderDescriptionPart = ""
ElseIf AllSnapshot AndAlso
ModLoaders.Contains(CompModLoaderType.Forge) AndAlso
ModLoaders.Contains(CompModLoaderType.Fabric) AndAlso
ModLoaders.Contains(CompModLoaderType.NeoForge) AndAlso
(ModLoaders.Contains(CompModLoaderType.Quilt) OrElse Setup.Get("ToolDownloadIgnoreQuilt")) Then
ModLoaderDescriptionFull = "任意"
ModLoaderDescriptionPart = ""
Else Else
ModLoaderDescriptionFull = ModLoadersForDesc.Join(" / ") ModLoaderDescriptionFull = ModLoadersForDesc.Join(" / ")
ModLoaderDescriptionPart = ModLoadersForDesc.Join(" / ") ModLoaderDescriptionPart = ModLoadersForDesc.Join(" / ")