diff --git a/Plain Craft Launcher 2/Modules/Minecraft/ModDownload.vb b/Plain Craft Launcher 2/Modules/Minecraft/ModDownload.vb index 5bc3131..9f454a9 100644 --- a/Plain Craft Launcher 2/Modules/Minecraft/ModDownload.vb +++ b/Plain Craft Launcher 2/Modules/Minecraft/ModDownload.vb @@ -841,22 +841,10 @@ ''' Public VersionName As String ''' - ''' 对应的 Minecraft 版本,如“1.12.2”。 + ''' 对应的 Minecraft 版本,如“1.20.4”。 ''' Public Inherit As String ''' - ''' 发布时间,格式为“yyyy/MM/dd HH:mm”。 - ''' - Public ReleaseTime As String - ''' - ''' 文件的 MD5 或 SHA1(BMCLAPI 的老版本是 MD5,新版本是 SHA1;官方源总是 MD5)。 - ''' - Public Hash As String = Nothing - ''' - ''' 版本分支。若无分支则为 Nothing。 - ''' - Public Branch As String = Nothing - ''' ''' 是否是 Beta 版。若未提供则默认为 False。 ''' Public IsBeta As Boolean = False @@ -879,14 +867,6 @@ Public Value As JObject End Structure ''' - ''' 用于下载的文件版本名。可能在 Version 的基础上添加了分支。 - ''' - Public ReadOnly Property FileVersion As String - Get - Return VersionName & If(Branch Is Nothing, "", "-" & Branch) - End Get - End Property - ''' ''' 即将下载的文件全名。 ''' Public ReadOnly Property FileName As String diff --git a/Plain Craft Launcher 2/Modules/Minecraft/ModMinecraft.vb b/Plain Craft Launcher 2/Modules/Minecraft/ModMinecraft.vb index 676d5b1..64ffbe8 100644 --- a/Plain Craft Launcher 2/Modules/Minecraft/ModMinecraft.vb +++ b/Plain Craft Launcher 2/Modules/Minecraft/ModMinecraft.vb @@ -1208,10 +1208,10 @@ OnLoaded: .McCodeSub = ReadIni(Version.Path & "PCL\Setup.ini", "VersionOriginalSub", -1), .IsApiLoaded = True } - VersionInfo.HasFabric = VersionInfo.FabricVersion.Count > 1 - VersionInfo.HasForge = VersionInfo.ForgeVersion.Count > 1 - VersionInfo.HasNeoForge = VersionInfo.NeoForgeVersion.Count > 1 - VersionInfo.HasOptiFine = VersionInfo.OptiFineVersion.Count > 1 + VersionInfo.HasFabric = VersionInfo.FabricVersion.Any() + VersionInfo.HasForge = VersionInfo.ForgeVersion.Any() + VersionInfo.HasNeoForge = VersionInfo.NeoForgeVersion.Any() + VersionInfo.HasOptiFine = VersionInfo.OptiFineVersion.Any() Version.Version = VersionInfo End If diff --git a/Plain Craft Launcher 2/Modules/Minecraft/ModModpack.vb b/Plain Craft Launcher 2/Modules/Minecraft/ModModpack.vb index 20ab3fc..c64aaef 100644 --- a/Plain Craft Launcher 2/Modules/Minecraft/ModModpack.vb +++ b/Plain Craft Launcher 2/Modules/Minecraft/ModModpack.vb @@ -388,10 +388,7 @@ Retry: Case "forge" 'eg. 14.23.5.2859 / 1.19-41.1.0 ForgeVersion = Entry.Value.ToString Log("[ModPack] 整合包 Forge 版本:" & ForgeVersion) - Case "neoforge" 'eg. 20.6.98-beta - NeoForgeVersion = Entry.Value.ToString - Log("[ModPack] 整合包 NeoForge 版本:" & NeoForgeVersion) - Case "neo-forge" 'eg. 20.6.98-beta / 有些早期的 Modrinth 整合包可能会写成这样,也检测一下 + Case "neoforge", "neo-forge" 'eg. 20.6.98-beta NeoForgeVersion = Entry.Value.ToString Log("[ModPack] 整合包 NeoForge 版本:" & NeoForgeVersion) Case "fabric-loader" 'eg. 0.14.14 diff --git a/Plain Craft Launcher 2/Pages/PageDownload/ModDownloadLib.vb b/Plain Craft Launcher 2/Pages/PageDownload/ModDownloadLib.vb index 7d87ce3..9da7e8b 100644 --- a/Plain Craft Launcher 2/Pages/PageDownload/ModDownloadLib.vb +++ b/Plain Craft Launcher 2/Pages/PageDownload/ModDownloadLib.vb @@ -1099,7 +1099,7 @@ Retry: Files.Add(New NetFile({ $"https://bmclapi2.bangbang93.com/maven/net/neoforged/{If(IsLegacyNeo, "", "neo")}forge/{If(IsLegacyNeo, "1.20.1-", "")}{DownloadInfo.VersionCode}{If(DownloadInfo.IsBeta, "-beta", "")}/{DownloadInfo.FileName}", $"https://maven.neoforged.net/releases/net/neoforged/{If(IsLegacyNeo, "", "neo")}forge/{If(IsLegacyNeo, "1.20.1-", "")}{DownloadInfo.VersionCode}{If(DownloadInfo.IsBeta, "-beta", "")}/{DownloadInfo.FileName}" - }, Target, New FileChecker(MinSize:=64 * 1024, Hash:=DownloadInfo.Hash))) + }, Target, New FileChecker(MinSize:=64 * 1024, Hash:=If(IsNeo, Nothing, DownloadInfo.Hash)))) Task.Output = Files End Sub) With {.ProgressWeight = 0.1, .Show = False}) Else @@ -1110,7 +1110,7 @@ Retry: Files.Add(New NetFile({ "https://bmclapi2.bangbang93.com/maven/net/minecraftforge/forge/" & DownloadInfo.Inherit & "-" & DownloadInfo.FileVersion & "/" & DownloadInfo.FileName, "https://files.minecraftforge.net/maven/net/minecraftforge/forge/" & DownloadInfo.Inherit & "-" & DownloadInfo.FileVersion & "/" & DownloadInfo.FileName - }, Target, New FileChecker(MinSize:=64 * 1024, Hash:=DownloadInfo.Hash))) + }, Target, New FileChecker(MinSize:=64 * 1024, Hash:=If(IsNeo, Nothing, DownloadInfo.Hash)))) Task.Output = Files End Sub) With {.ProgressWeight = 0.1, .Show = False}) End If @@ -1359,12 +1359,12 @@ Retry: Files = New List(Of NetFile) From {New NetFile({ $"https://bmclapi2.bangbang93.com/maven/net/neoforged/{If(IsLegacyNeo, "", "neo")}forge/{If(IsLegacyNeo, "1.20.1-", "")}{DownloadInfo.VersionCode}{If(DownloadInfo.IsBeta, "-beta", "")}/{DownloadInfo.FileName}", $"https://maven.neoforged.net/releases/net/neoforged/{If(IsLegacyNeo, "", "neo")}forge/{If(IsLegacyNeo, "1.20.1-", "")}{DownloadInfo.VersionCode}{If(DownloadInfo.IsBeta, "-beta", "")}/{DownloadInfo.FileName}" - }, InstallerAddress, New FileChecker(MinSize:=64 * 1024, Hash:=DownloadInfo.Hash))} + }, InstallerAddress, New FileChecker(MinSize:=64 * 1024, Hash:=If(IsNeo, Nothing, DownloadInfo.Hash)))} Else 'Forge Files = New List(Of NetFile) From {New NetFile({ "https://bmclapi2.bangbang93.com/maven/net/minecraftforge/forge/" & Inherit & "-" & DownloadInfo.FileVersion & "/" & DownloadInfo.FileName, "https://files.minecraftforge.net/maven/net/minecraftforge/forge/" & Inherit & "-" & DownloadInfo.FileVersion & "/" & DownloadInfo.FileName - }, InstallerAddress, New FileChecker(MinSize:=64 * 1024, Hash:=DownloadInfo.Hash))} + }, InstallerAddress, New FileChecker(MinSize:=64 * 1024, Hash:=If(IsNeo, Nothing, DownloadInfo.Hash)))} End If Task.Output = Files End Sub) With {.ProgressWeight = 0.5, .Show = False}) @@ -1777,10 +1777,7 @@ Retry: '建立控件 Dim NewItem As New MyListItem With { .Title = If(Entry.IsBeta, Entry.VersionCode & "-beta", Entry.VersionCode), .SnapsToDevicePixels = True, .Height = 42, .Type = MyListItem.CheckType.Clickable, .Tag = Entry, - .Info = If(Entry.IsBeta, "测试版", "稳定版") & - If(Entry.ReleaseTime = "", - If(ModeDebug, If(Entry.Branch Is Nothing, "", ",开发分支:" & Entry.Branch), ""), - "发布于 " & Entry.ReleaseTime & If(ModeDebug, If(Entry.Branch Is Nothing, "", ",开发分支:" & Entry.Branch), "")), + .Info = If(Entry.IsBeta, "测试版", "稳定版"), .Logo = PathImage & "Blocks/NeoForge.png" } AddHandler NewItem.Click, OnClick