From 81cf8c1901a4f777f36ff7122ac0ae4c7b2d6b6d Mon Sep 17 00:00:00 2001 From: hadesanc1 Date: Mon, 13 Jan 2025 19:36:28 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=8F=AF=E8=A7=86=E5=8C=96mod=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E5=87=BA=E9=94=99...]=E6=90=9C=E7=B4=A2Sand=20Filter?= =?UTF-8?q?=E6=97=B6=E5=BF=85=E6=8A=A5=E9=94=99=20Fixes=20#5255?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Modules/Minecraft/ModComp.vb | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/Plain Craft Launcher 2/Modules/Minecraft/ModComp.vb b/Plain Craft Launcher 2/Modules/Minecraft/ModComp.vb index 36cc7ee..bb64ae2 100644 --- a/Plain Craft Launcher 2/Modules/Minecraft/ModComp.vb +++ b/Plain Craft Launcher 2/Modules/Minecraft/ModComp.vb @@ -434,7 +434,10 @@ Public Function ToCompItem(ShowMcVersionDesc As Boolean, ShowLoaderDesc As Boolean) As MyCompItem '获取版本描述 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 = "未知" Else Dim SpaVersions As New List(Of String) @@ -493,12 +496,19 @@ ModLoaderDescriptionFull = "仅 " & ModLoadersForDesc.Single.ToString ModLoaderDescriptionPart = ModLoadersForDesc.Single.ToString 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 < 20 OrElse ModLoaders.Contains(CompModLoaderType.NeoForge)) AndAlso (GameVersions.Max < 14 OrElse ModLoaders.Contains(CompModLoaderType.Quilt) OrElse Setup.Get("ToolDownloadIgnoreQuilt")) Then ModLoaderDescriptionFull = "任意" 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 ModLoaderDescriptionFull = ModLoadersForDesc.Join(" / ") ModLoaderDescriptionPart = ModLoadersForDesc.Join(" / ")