Pigeon0v0 2 лет назад
Родитель
Сommit
bec5ddd833

+ 1 - 21
Plain Craft Launcher 2/Modules/Minecraft/ModDownload.vb

@@ -841,22 +841,10 @@
         ''' </summary>
         Public VersionName As String
         ''' <summary>
-        ''' 对应的 Minecraft 版本,如“1.12.2”。
+        ''' 对应的 Minecraft 版本,如“1.20.4”。
         ''' </summary>
         Public Inherit As String
         ''' <summary>
-        ''' 发布时间,格式为“yyyy/MM/dd HH:mm”。
-        ''' </summary>
-        Public ReleaseTime As String
-        ''' <summary>
-        ''' 文件的 MD5 或 SHA1(BMCLAPI 的老版本是 MD5,新版本是 SHA1;官方源总是 MD5)。
-        ''' </summary>
-        Public Hash As String = Nothing
-        ''' <summary>
-        ''' 版本分支。若无分支则为 Nothing。
-        ''' </summary>
-        Public Branch As String = Nothing
-        ''' <summary>
         ''' 是否是 Beta 版。若未提供则默认为 False。
         ''' </summary>
         Public IsBeta As Boolean = False
@@ -879,14 +867,6 @@
             Public Value As JObject
         End Structure
         ''' <summary>
-        ''' 用于下载的文件版本名。可能在 Version 的基础上添加了分支。
-        ''' </summary>
-        Public ReadOnly Property FileVersion As String
-            Get
-                Return VersionName & If(Branch Is Nothing, "", "-" & Branch)
-            End Get
-        End Property
-        ''' <summary>
         ''' 即将下载的文件全名。
         ''' </summary>
         Public ReadOnly Property FileName As String

+ 4 - 4
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
 

+ 1 - 4
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

+ 5 - 8
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