Pārlūkot izejas kodu

fix: NeoForge 手动安装版本列表不能正常加载(修完了)

Pigeon0v0 2 gadi atpakaļ
vecāks
revīzija
707b6eec14

+ 13 - 0
Plain Craft Launcher 2/Controls/MyCard.vb

@@ -128,6 +128,16 @@
                 ForgeDownloadListItemPreload(Stack, Stack.Tag, AddressOf ForgeSave_Click, True)
                 ForgeDownloadListItemPreload(Stack, Stack.Tag, AddressOf ForgeSave_Click, True)
             Case 8
             Case 8
                 CompFilesCardPreload(Stack, Stack.Tag)
                 CompFilesCardPreload(Stack, Stack.Tag)
+            Case 13
+                Dim LoadingPickaxe As New MyLoading With {.Text = "正在获取版本列表", .Margin = New Thickness(5)}
+                Dim Loader = New LoaderTask(Of String, List(Of DlNeoForgeVersionEntry))("DlNeoForgeVersion Main", AddressOf DlNeoForgeVersionMain)
+                LoadingPickaxe.State = Loader
+                Loader.Start(Stack.Tag)
+                AddHandler LoadingPickaxe.StateChanged, AddressOf FrmDownloadNeoForge.NeoForge_StateChanged
+                AddHandler LoadingPickaxe.Click, AddressOf FrmDownloadNeoForge.NeoForge_Click
+                Stack.Children.Add(LoadingPickaxe)
+            Case 14
+                NeoForgeDownloadListItemPreload(Stack, Stack.Tag, AddressOf NeoForgeSave_Click, True)
         End Select
         End Select
         '实现控件虚拟化
         '实现控件虚拟化
         For Each Data As Object In Stack.Tag
         For Each Data As Object In Stack.Tag
@@ -171,6 +181,9 @@
                     Stack.Children.Add(CType(Data, HelpEntry).ToListItem)
                     Stack.Children.Add(CType(Data, HelpEntry).ToListItem)
                 Case 12
                 Case 12
                     Stack.Children.Add(FabricDownloadListItem(CType(Data, JObject), AddressOf FrmDownloadInstall.Fabric_Selected))
                     Stack.Children.Add(FabricDownloadListItem(CType(Data, JObject), AddressOf FrmDownloadInstall.Fabric_Selected))
+                Case 13
+                Case 14
+                    Stack.Children.Add(NeoForgeDownloadListItem(Data, AddressOf NeoForgeSave_Click, True))
                 Case Else
                 Case Else
                     Log("未知的虚拟化种类:" & Type, LogLevel.Feedback)
                     Log("未知的虚拟化种类:" & Type, LogLevel.Feedback)
             End Select
             End Select

+ 0 - 6
Plain Craft Launcher 2/Modules/Minecraft/ModDownload.vb

@@ -767,12 +767,6 @@
     ''' </summary>
     ''' </summary>
     Public DlNeoForgeListOfficialLoader As New LoaderTask(Of Integer, DlNeoForgeListResult)("DlNeoForgeList Official", AddressOf DlNeoForgeListOfficialMain)
     Public DlNeoForgeListOfficialLoader As New LoaderTask(Of Integer, DlNeoForgeListResult)("DlNeoForgeList Official", AddressOf DlNeoForgeListOfficialMain)
     Private Sub DlNeoForgeListOfficialMain(Loader As LoaderTask(Of Integer, DlNeoForgeListResult))
     Private Sub DlNeoForgeListOfficialMain(Loader As LoaderTask(Of Integer, DlNeoForgeListResult))
-        'Dim Result As String = NetGetCodeByRequestRetry("https://files.minecraftforge.net/maven/net/minecraftforge/forge/index_1.2.4.html", Encoding.Default, "text/html", UseBrowserUserAgent:=True)
-        'If Result.Length < 200 Then Throw New Exception("获取到的版本列表长度不足(" & Result & ")")
-        ''获取所有版本信息
-        'Dim Names As List(Of String) = RegexSearch(Result, "(?<=a href=""index_)[0-9.]+(_pre[0-9]?)?(?=.html)")
-        'If Names.Count < 10 Then Throw New Exception("获取到的版本数量不足(" & Result & ")")
-        'Loader.Output = New DlNeoForgeListResult With {.IsOfficial = True, .SourceName = "NeoForge 官方源", .Value = Names}
         Dim ResultLatest As String
         Dim ResultLatest As String
         Dim VersionsJArray As JArray
         Dim VersionsJArray As JArray
         Try
         Try

+ 2 - 3
Plain Craft Launcher 2/Pages/PageDownload/PageDownloadNeoForge.xaml.vb

@@ -11,11 +11,10 @@
         '结果数据化
         '结果数据化
         Try
         Try
             Dim Versions = Sort(DlNeoForgeListLoader.Output.Value, AddressOf VersionSortBoolean)
             Dim Versions = Sort(DlNeoForgeListLoader.Output.Value, AddressOf VersionSortBoolean)
-            'Dim Versions As List(Of DlNeoForgeVersionEntry) = DlNeoForgeListLoader.Output
             PanMain.Children.Clear()
             PanMain.Children.Clear()
             For Each Version As String In Versions
             For Each Version As String In Versions
                 '增加卡片
                 '增加卡片
-                Dim NewCard As New MyCard With {.Title = Version.Replace("_p", " P"), .Margin = New Thickness(0, 0, 0, 15), .SwapType = 5}
+                Dim NewCard As New MyCard With {.Title = Version.Replace("_p", " P"), .Margin = New Thickness(0, 0, 0, 15), .SwapType = 13}
                 Dim NewStack As New StackPanel With {.Margin = New Thickness(20, MyCard.SwapedHeight, 18, 0), .VerticalAlignment = VerticalAlignment.Top, .RenderTransform = New TranslateTransform(0, 0), .Tag = Version}
                 Dim NewStack As New StackPanel With {.Margin = New Thickness(20, MyCard.SwapedHeight, 18, 0), .VerticalAlignment = VerticalAlignment.Top, .RenderTransform = New TranslateTransform(0, 0), .Tag = Version}
                 NewCard.Children.Add(NewStack)
                 NewCard.Children.Add(NewStack)
                 NewCard.SwapControl = NewStack
                 NewCard.SwapControl = NewStack
@@ -34,7 +33,7 @@
         '载入列表
         '载入列表
         Card.SwapControl.Children.Clear()
         Card.SwapControl.Children.Clear()
         Card.SwapControl.Tag = Loader.Output
         Card.SwapControl.Tag = Loader.Output
-        Card.SwapType = 6
+        Card.SwapType = 14
         Card.StackInstall()
         Card.StackInstall()
     End Sub
     End Sub
     Public Sub NeoForge_Click(sender As MyLoading, e As MouseButtonEventArgs)
     Public Sub NeoForge_Click(sender As MyLoading, e As MouseButtonEventArgs)