From fce8781b220aac7a5ce17249751f288fcc543412 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=8D=95=E8=8E=89=E6=96=AF?=
<125196925+shanlisi567@users.noreply.github.com>
Date: Wed, 19 Mar 2025 19:25:48 +0800
Subject: [PATCH 01/11] Update MySkin.xaml.vb
---
Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb b/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb
index 6de3437..72bbb83 100644
--- a/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb
+++ b/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb
@@ -243,7 +243,7 @@ Retry:
{"Minecon2013", "Minecon 2013 参与者披风"}, {"Minecon2015", "Minecon 2015 参与者披风"}, {"Minecon2016", "Minecon 2016 参与者披风"},
{"Cherry Blossom", "樱花披风"}, {"15th Anniversary", "15 周年纪念披风"}, {"Purple Heart", "紫色心形披风"},
{"Follower's", "追随者披风"}, {"MCC 15th Year", "MCC 15 周年披风"}, {"Minecraft Experience", "村民救援披风"},
- {"Mojang Office", "Mojang 办公室披风"}
+ {"Mojang Office", "Mojang 办公室披风"},{"Home", "家园披风"},{"Menace", "威胁披风"}
}
Dim SelectionControl As New List(Of IMyRadio) From {New MyRadioBox With {.Text = "无披风"}}
For Each Cape In SkinData("capes")
From a4284dbc50d920938ab24f9a3ef5776faee2c878 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=8D=95=E8=8E=89=E6=96=AF?=
<125196925+shanlisi567@users.noreply.github.com>
Date: Wed, 19 Mar 2025 20:21:59 +0800
Subject: [PATCH 02/11] =?UTF-8?q?=E4=BB=8E=E5=85=A8=E8=A7=92=E6=9B=B4?=
=?UTF-8?q?=E6=94=B9=E5=88=B0=E5=8D=8A=E8=A7=92MySkin.xaml.vb?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Pages/PageLaunch/MySkin.xaml.vb | 92 +++++++++----------
1 file changed, 46 insertions(+), 46 deletions(-)
diff --git a/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb b/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb
index 72bbb83..59d631c 100644
--- a/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb
+++ b/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb
@@ -1,39 +1,39 @@
-Public Class MySkin
+公共 Class MySkin
'事件
- Public Event Click(sender As Object, e As MouseButtonEventArgs)
+ 公共 Event Click(sender As Object, e As MouseButtonEventArgs)
'皮肤储存
- Private _Address As String
- Public Property Address As String
+ 私有 _Address As String
+ 公共 Property Address As String
Get
Return _Address
End Get
Set(value As String)
_Address = value
- ToolTip = If(_Address = "", "加载中", "点击更换皮肤(右键查看更多选项)")
+ ToolTip = If(_Address = "", "加载中", "点击更换皮肤(右键查看更多选项)")
End Set
End Property
- Public Loader As LoaderTask(Of EqualableList(Of String), String)
+ 公共 Loader As LoaderTask(Of EqualableList(Of String), String)
'控件动画
- Private Sub PanSkin_MouseEnter(sender As Object, e As MouseEventArgs) Handles Me.MouseEnter
- AniStart(AaOpacity(ShadowSkin, 0.8 - ShadowSkin.Opacity, 200, 100), "Skin Shadow")
+ 私有 Sub PanSkin_MouseEnter(sender As Object, e As MouseEventArgs) Handles Me.MouseEnter
+ AniStart(AaOpacity(ShadowSkin, 0.8 - ShadowSkin.Opacity, 200, 100), "Skin Shadow")
End Sub
- Private Sub PanSkin_MouseLeave(sender As Object, e As MouseEventArgs) Handles Me.MouseLeave
+ 私有 Sub PanSkin_MouseLeave(sender As Object, e As MouseEventArgs) Handles Me.MouseLeave
AniStart(AaOpacity(ShadowSkin, 0.2 - ShadowSkin.Opacity, 200), "Skin Shadow")
IsSkinMouseDown = False
- AniStart(AaScaleTransform(Me, 1 - CType(Me.RenderTransform, ScaleTransform).ScaleX, 60,, New AniEaseOutFluent), "Skin Scale")
+ AniStart(AaScaleTransform(Me, 1 - CType(Me.RenderTransform, ScaleTransform).ScaleX, 60,, New AniEaseOutFluent), "Skin Scale")
End Sub
'点击
- Private IsSkinMouseDown As Boolean = False
- Private Sub PanSkin_MouseLeftButtonDown(sender As Object, e As MouseButtonEventArgs) Handles Me.MouseLeftButtonDown
+ 私有 IsSkinMouseDown As Boolean = False
+ 私有 Sub PanSkin_MouseLeftButtonDown(sender As Object, e As MouseButtonEventArgs) Handles Me.MouseLeftButtonDown
IsSkinMouseDown = True
- AniStart(AaScaleTransform(Me, 0.9 - CType(Me.RenderTransform, ScaleTransform).ScaleX, 60,, New AniEaseOutFluent), "Skin Scale")
+ AniStart(AaScaleTransform(Me, 0.9 - CType(Me.RenderTransform, ScaleTransform).ScaleX, 60,, New AniEaseOutFluent), "Skin Scale")
End Sub
- Private Sub PanSkin_MouseLeftButtonUp(sender As Object, e As MouseButtonEventArgs) Handles Me.MouseLeftButtonUp
- AniStart(AaScaleTransform(Me, 1 - CType(Me.RenderTransform, ScaleTransform).ScaleX, 60,, New AniEaseOutFluent), "Skin Scale")
+ 私有 Sub PanSkin_MouseLeftButtonUp(sender As Object, e As MouseButtonEventArgs) Handles Me.MouseLeftButtonUp
+ AniStart(AaScaleTransform(Me, 1 - CType(Me.RenderTransform, ScaleTransform).ScaleX, 60,, New AniEaseOutFluent), "Skin Scale")
If IsSkinMouseDown Then
IsSkinMouseDown = False
RaiseEvent Click(sender, e)
@@ -41,10 +41,10 @@
End Sub
'保存皮肤
- Public Sub BtnSkinSave_Click() Handles BtnSkinSave.Click
+ 公共 Sub BtnSkinSave_Click() Handles BtnSkinSave.Click
Save(Loader)
End Sub
- Public Shared Sub Save(Loader As LoaderTask(Of EqualableList(Of String), String))
+ 公共 Shared Sub Save(Loader As LoaderTask(Of EqualableList(Of String), String))
Dim Address = Loader.Output
If Not Loader.State = LoadState.Finished Then
Hint("皮肤正在获取中,请稍候!", HintType.Critical)
@@ -67,14 +67,14 @@
Log(ex, "保存皮肤失败", LogLevel.Hint)
End Try
End Sub
- Private Sub BtnSkinSave_Checked(sender As MyMenuItem, e As RoutedEventArgs) Handles BtnSkinSave.Checked
+ 私有 Sub BtnSkinSave_Checked(sender As MyMenuItem, e As RoutedEventArgs) Handles BtnSkinSave.Checked
sender.IsEnabled = Address = ""
End Sub
'''
''' 载入皮肤。
'''
- Public Sub Load()
+ 公共 Sub Load()
Try
'检查文件存在
Address = Loader.Output
@@ -98,10 +98,10 @@
End If
'头发层(附加层)
If Image.Pic.Width >= 64 AndAlso Image.Pic.Height >= 32 Then
- If (Image.Pic.GetPixel(1, 1).A = 0 OrElse '如果图片中有任何透明像素(避免纯色白底)
+ If (Image.Pic.GetPixel(1, 1).A = 0 OrElse '如果图片中有任何透明像素(避免纯色白底)
Image.Pic.GetPixel(Image.Pic.Width - 1, Image.Pic.Height - 1).A = 0 OrElse
Image.Pic.GetPixel(Image.Pic.Width - 2, Image.Pic.Height / 2 - 2).A = 0) OrElse
- (Image.Pic.GetPixel(1, 1) <> Image.Pic.GetPixel(Scale * 41, Scale * 9) AndAlso '或是头部颜色和透明区均不一样
+ (Image.Pic.GetPixel(1, 1) <> Image.Pic.GetPixel(Scale * 41, Scale * 9) AndAlso '或是头部颜色和透明区均不一样
Image.Pic.GetPixel(Image.Pic.Width - 1, Image.Pic.Height - 1) <> Image.Pic.GetPixel(Scale * 41, Scale * 9) AndAlso
Image.Pic.GetPixel(Image.Pic.Width - 2, Image.Pic.Height / 2 - 2) <> Image.Pic.GetPixel(Scale * 41, Scale * 9)) Then
ImgFore.Source = Image.Clip(Scale * 40, Scale * 8, Scale * 8, Scale * 8)
@@ -121,26 +121,26 @@
'''
''' 清空皮肤。
'''
- Public Sub Clear()
+ 公共 Sub Clear()
Address = ""
ImgFore.Source = Nothing
ImgBack.Source = Nothing
End Sub
'刷新缓存
- Public Sub RefreshClick() Handles BtnSkinRefresh.Click
+ 公共 Sub RefreshClick() Handles BtnSkinRefresh.Click
RefreshCache(Loader)
End Sub
'''
''' 刷新皮肤缓存。
'''
- Public Shared Sub RefreshCache(Optional sender As LoaderTask(Of EqualableList(Of String), String) = Nothing)
+ 公共 Shared Sub RefreshCache(Optional sender As LoaderTask(Of EqualableList(Of String), String) = Nothing)
Dim HasLoaderRunning As Boolean = False
For Each SkinLoader In PageLaunchLeft.SkinLoaders
If SkinLoader.State = LoadState.Loading Then
HasLoaderRunning = True : Exit For
End If
- Next
+ 下一页
If FrmLaunchLeft IsNot Nothing AndAlso HasLoaderRunning Then
'由于 Abort 不是实时的,暂时不会释放文件,会导致删除报错,故只能取消执行
Hint("有正在获取中的皮肤,请稍后再试!", HintType.Info)
@@ -160,7 +160,7 @@
'刷新控件
For Each SkinLoader In If(sender IsNot Nothing, {sender}, {PageLaunchLeft.SkinLegacy, PageLaunchLeft.SkinMs})
SkinLoader.WaitForExit(IsForceRestart:=True)
- Next
+ 下一页
Hint("已刷新头像!", HintType.Finish)
Catch ex As Exception
Log(ex, "刷新皮肤缓存失败", LogLevel.Msgbox)
@@ -172,7 +172,7 @@
''' 在更换正版皮肤后,刷新正版皮肤。
'''
''' 新的正版皮肤完整地址。
- Public Shared Sub ReloadCache(SkinAddress As String)
+ 公共 Shared Sub ReloadCache(SkinAddress As String)
RunInThread(
Sub()
Try
@@ -182,7 +182,7 @@
'刷新控件
For Each SkinLoader In {PageLaunchLeft.SkinMs, PageLaunchLeft.SkinLegacy}
SkinLoader.WaitForExit(IsForceRestart:=True)
- Next
+ 下一页
'完成提示
Hint("更改皮肤成功!", HintType.Finish)
Catch ex As Exception
@@ -192,7 +192,7 @@
End Sub
'披风
- Public Property HasCape As Boolean
+ 公共 Property HasCape As Boolean
Get
Return BtnSkinCape.Visibility = Visibility.Collapsed
End Get
@@ -204,8 +204,8 @@
End If
End Set
End Property
- Private IsChanging As Boolean = False
- Public Sub BtnSkinCape_Click() Handles BtnSkinCape.Click
+ 私有 IsChanging As Boolean = False
+ 公共 Sub BtnSkinCape_Click() Handles BtnSkinCape.Click
'检查条件,获取新披风
If IsChanging Then
Hint("正在更改披风中,请稍候!")
@@ -236,32 +236,32 @@ Retry:
RunInUiWait(
Sub()
Try
- Dim CapeNames As New Dictionary(Of String, String) From {
- {"Migrator", "迁移者披风"}, {"MapMaker", "Realms 地图制作者披风"}, {"Moderator", "Mojira 管理员披风"},
- {"Translator-Chinese", "Crowdin 中文翻译者披风"}, {"Translator", "Crowdin 翻译者披风"}, {"Cobalt", "Cobalt 披风"},
- {"Vanilla", "原版披风"}, {"Minecon2011", "Minecon 2011 参与者披风"}, {"Minecon2012", "Minecon 2012 参与者披风"},
- {"Minecon2013", "Minecon 2013 参与者披风"}, {"Minecon2015", "Minecon 2015 参与者披风"}, {"Minecon2016", "Minecon 2016 参与者披风"},
- {"Cherry Blossom", "樱花披风"}, {"15th Anniversary", "15 周年纪念披风"}, {"Purple Heart", "紫色心形披风"},
- {"Follower's", "追随者披风"}, {"MCC 15th Year", "MCC 15 周年披风"}, {"Minecraft Experience", "村民救援披风"},
- {"Mojang Office", "Mojang 办公室披风"},{"Home", "家园披风"},{"Menace", "威胁披风"}
+ Dim CapeNames As New Dictionary(Of String, String) From {
+ {"Migrator", "迁移者披风"}, {"MapMaker", "Realms 地图制作者披风"}, {"Moderator", "Mojira 管理员披风"},
+ {"Translator-Chinese", "Crowdin 中文翻译者披风"}, {"Translator", "Crowdin 翻译者披风"}, {"Cobalt", "Cobalt 披风"},
+ {"Vanilla", "原版披风"}, {"Minecon2011", "Minecon 2011 参与者披风"}, {"Minecon2012", "Minecon 2012 参与者披风"},
+ {"Minecon2013", "Minecon 2013 参与者披风"}, {"Minecon2015", "Minecon 2015 参与者披风"}, {"Minecon2016", "Minecon 2016 参与者披风"},
+ {"Cherry Blossom", "樱花披风"}, {"15th Anniversary", "15 周年纪念披风"}, {"Purple Heart", "紫色心形披风"},
+ {"Follower's", "追随者披风"}, {"MCC 15th Year", "MCC 15 周年披风"}, {"Minecraft Experience", "村民救援披风"},
+ {"Mojang Office","Mojang 办公室披风"},{"Home","家园披风"},{"Menace","威胁披风"}
}
Dim SelectionControl As New List(Of IMyRadio) From {New MyRadioBox With {.Text = "无披风"}}
For Each Cape In SkinData("capes")
Dim CapeName As String = Cape("alias").ToString
If CapeNames.ContainsKey(CapeName) Then CapeName = CapeNames(CapeName)
SelectionControl.Add(New MyRadioBox With {.Text = CapeName})
- Next
- SelId = MyMsgBoxSelect(SelectionControl, "选择披风", "确定", "取消")
+ 下一页
+ SelId = MyMsgBoxSelect(SelectionControl, "选择披风", "确定", "取消")
Catch ex As Exception
Log(ex, "获取玩家皮肤列表失败", LogLevel.Feedback)
End Try
End Sub)
If SelId Is Nothing Then Exit Sub
'发送请求
- Dim Result As String = NetRequestRetry("https://api.minecraftservices.com/minecraft/profile/capes/active",
- If(SelId = 0, "DELETE", "PUT"),
- If(SelId = 0, "", New JObject(New JProperty("capeId", SkinData("capes")(SelId - 1)("id"))).ToString(0)),
- "application/json", Headers:=New Dictionary(Of String, String) From {{"Authorization", "Bearer " & AccessToken}})
+ Dim Result As String = NetRequestRetry("https://api.minecraftservices.com/minecraft/profile/capes/active",
+ If(SelId = 0, "DELETE", "PUT"),
+ If(SelId = 0, "", New JObject(New JProperty("capeId", SkinData("capes")(SelId - 1)("id"))).ToString(0)),
+ "application/json", Headers:=New Dictionary(Of String, String) From {{"Authorization", "Bearer " & AccessToken}})
If Result.Contains("""errorMessage""") Then
Hint("更改披风失败:" & GetJson(Result)("errorMessage"), HintType.Critical)
Exit Sub
@@ -273,7 +273,7 @@ Retry:
Finally
IsChanging = False
End Try
- End Sub, "Cape Change")
+ End Sub, "Cape Change")
End Sub
End Class
From 34697c0d27c9370830085033ea080fa55614cde9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=8D=95=E8=8E=89=E6=96=AF?=
<125196925+shanlisi567@users.noreply.github.com>
Date: Wed, 19 Mar 2025 20:32:52 +0800
Subject: [PATCH 03/11] Ctrl+C Ctrl+V MySkin.xaml.vb
---
.../Pages/PageLaunch/MySkin.xaml.vb | 92 +++++++++----------
1 file changed, 46 insertions(+), 46 deletions(-)
diff --git a/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb b/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb
index 59d631c..696dba7 100644
--- a/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb
+++ b/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb
@@ -1,39 +1,39 @@
-公共 Class MySkin
+Public Class MySkin
'事件
- 公共 Event Click(sender As Object, e As MouseButtonEventArgs)
+ Public Event Click(sender As Object, e As MouseButtonEventArgs)
'皮肤储存
- 私有 _Address As String
- 公共 Property Address As String
+ Private _Address As String
+ Public Property Address As String
Get
Return _Address
End Get
Set(value As String)
_Address = value
- ToolTip = If(_Address = "", "加载中", "点击更换皮肤(右键查看更多选项)")
+ ToolTip = If(_Address = "", "加载中", "点击更换皮肤(右键查看更多选项)")
End Set
End Property
- 公共 Loader As LoaderTask(Of EqualableList(Of String), String)
+ Public Loader As LoaderTask(Of EqualableList(Of String), String)
'控件动画
- 私有 Sub PanSkin_MouseEnter(sender As Object, e As MouseEventArgs) Handles Me.MouseEnter
- AniStart(AaOpacity(ShadowSkin, 0.8 - ShadowSkin.Opacity, 200, 100), "Skin Shadow")
+ Private Sub PanSkin_MouseEnter(sender As Object, e As MouseEventArgs) Handles Me.MouseEnter
+ AniStart(AaOpacity(ShadowSkin, 0.8 - ShadowSkin.Opacity, 200, 100), "Skin Shadow")
End Sub
- 私有 Sub PanSkin_MouseLeave(sender As Object, e As MouseEventArgs) Handles Me.MouseLeave
+ Private Sub PanSkin_MouseLeave(sender As Object, e As MouseEventArgs) Handles Me.MouseLeave
AniStart(AaOpacity(ShadowSkin, 0.2 - ShadowSkin.Opacity, 200), "Skin Shadow")
IsSkinMouseDown = False
- AniStart(AaScaleTransform(Me, 1 - CType(Me.RenderTransform, ScaleTransform).ScaleX, 60,, New AniEaseOutFluent), "Skin Scale")
+ AniStart(AaScaleTransform(Me, 1 - CType(Me.RenderTransform, ScaleTransform).ScaleX, 60,, New AniEaseOutFluent), "Skin Scale")
End Sub
'点击
- 私有 IsSkinMouseDown As Boolean = False
- 私有 Sub PanSkin_MouseLeftButtonDown(sender As Object, e As MouseButtonEventArgs) Handles Me.MouseLeftButtonDown
+ Private IsSkinMouseDown As Boolean = False
+ Private Sub PanSkin_MouseLeftButtonDown(sender As Object, e As MouseButtonEventArgs) Handles Me.MouseLeftButtonDown
IsSkinMouseDown = True
- AniStart(AaScaleTransform(Me, 0.9 - CType(Me.RenderTransform, ScaleTransform).ScaleX, 60,, New AniEaseOutFluent), "Skin Scale")
+ AniStart(AaScaleTransform(Me, 0.9 - CType(Me.RenderTransform, ScaleTransform).ScaleX, 60,, New AniEaseOutFluent), "Skin Scale")
End Sub
- 私有 Sub PanSkin_MouseLeftButtonUp(sender As Object, e As MouseButtonEventArgs) Handles Me.MouseLeftButtonUp
- AniStart(AaScaleTransform(Me, 1 - CType(Me.RenderTransform, ScaleTransform).ScaleX, 60,, New AniEaseOutFluent), "Skin Scale")
+ Private Sub PanSkin_MouseLeftButtonUp(sender As Object, e As MouseButtonEventArgs) Handles Me.MouseLeftButtonUp
+ AniStart(AaScaleTransform(Me, 1 - CType(Me.RenderTransform, ScaleTransform).ScaleX, 60,, New AniEaseOutFluent), "Skin Scale")
If IsSkinMouseDown Then
IsSkinMouseDown = False
RaiseEvent Click(sender, e)
@@ -41,10 +41,10 @@
End Sub
'保存皮肤
- 公共 Sub BtnSkinSave_Click() Handles BtnSkinSave.Click
+ Public Sub BtnSkinSave_Click() Handles BtnSkinSave.Click
Save(Loader)
End Sub
- 公共 Shared Sub Save(Loader As LoaderTask(Of EqualableList(Of String), String))
+ Public Shared Sub Save(Loader As LoaderTask(Of EqualableList(Of String), String))
Dim Address = Loader.Output
If Not Loader.State = LoadState.Finished Then
Hint("皮肤正在获取中,请稍候!", HintType.Critical)
@@ -67,14 +67,14 @@
Log(ex, "保存皮肤失败", LogLevel.Hint)
End Try
End Sub
- 私有 Sub BtnSkinSave_Checked(sender As MyMenuItem, e As RoutedEventArgs) Handles BtnSkinSave.Checked
+ Private Sub BtnSkinSave_Checked(sender As MyMenuItem, e As RoutedEventArgs) Handles BtnSkinSave.Checked
sender.IsEnabled = Address = ""
End Sub
'''
''' 载入皮肤。
'''
- 公共 Sub Load()
+ Public Sub Load()
Try
'检查文件存在
Address = Loader.Output
@@ -98,10 +98,10 @@
End If
'头发层(附加层)
If Image.Pic.Width >= 64 AndAlso Image.Pic.Height >= 32 Then
- If (Image.Pic.GetPixel(1, 1).A = 0 OrElse '如果图片中有任何透明像素(避免纯色白底)
+ If (Image.Pic.GetPixel(1, 1).A = 0 OrElse '如果图片中有任何透明像素(避免纯色白底)
Image.Pic.GetPixel(Image.Pic.Width - 1, Image.Pic.Height - 1).A = 0 OrElse
Image.Pic.GetPixel(Image.Pic.Width - 2, Image.Pic.Height / 2 - 2).A = 0) OrElse
- (Image.Pic.GetPixel(1, 1) <> Image.Pic.GetPixel(Scale * 41, Scale * 9) AndAlso '或是头部颜色和透明区均不一样
+ (Image.Pic.GetPixel(1, 1) <> Image.Pic.GetPixel(Scale * 41, Scale * 9) AndAlso '或是头部颜色和透明区均不一样
Image.Pic.GetPixel(Image.Pic.Width - 1, Image.Pic.Height - 1) <> Image.Pic.GetPixel(Scale * 41, Scale * 9) AndAlso
Image.Pic.GetPixel(Image.Pic.Width - 2, Image.Pic.Height / 2 - 2) <> Image.Pic.GetPixel(Scale * 41, Scale * 9)) Then
ImgFore.Source = Image.Clip(Scale * 40, Scale * 8, Scale * 8, Scale * 8)
@@ -121,26 +121,26 @@
'''
''' 清空皮肤。
'''
- 公共 Sub Clear()
+ Public Sub Clear()
Address = ""
ImgFore.Source = Nothing
ImgBack.Source = Nothing
End Sub
'刷新缓存
- 公共 Sub RefreshClick() Handles BtnSkinRefresh.Click
+ Public Sub RefreshClick() Handles BtnSkinRefresh.Click
RefreshCache(Loader)
End Sub
'''
''' 刷新皮肤缓存。
'''
- 公共 Shared Sub RefreshCache(Optional sender As LoaderTask(Of EqualableList(Of String), String) = Nothing)
+ Public Shared Sub RefreshCache(Optional sender As LoaderTask(Of EqualableList(Of String), String) = Nothing)
Dim HasLoaderRunning As Boolean = False
For Each SkinLoader In PageLaunchLeft.SkinLoaders
If SkinLoader.State = LoadState.Loading Then
HasLoaderRunning = True : Exit For
End If
- 下一页
+ Next
If FrmLaunchLeft IsNot Nothing AndAlso HasLoaderRunning Then
'由于 Abort 不是实时的,暂时不会释放文件,会导致删除报错,故只能取消执行
Hint("有正在获取中的皮肤,请稍后再试!", HintType.Info)
@@ -160,7 +160,7 @@
'刷新控件
For Each SkinLoader In If(sender IsNot Nothing, {sender}, {PageLaunchLeft.SkinLegacy, PageLaunchLeft.SkinMs})
SkinLoader.WaitForExit(IsForceRestart:=True)
- 下一页
+ Next
Hint("已刷新头像!", HintType.Finish)
Catch ex As Exception
Log(ex, "刷新皮肤缓存失败", LogLevel.Msgbox)
@@ -172,7 +172,7 @@
''' 在更换正版皮肤后,刷新正版皮肤。
'''
''' 新的正版皮肤完整地址。
- 公共 Shared Sub ReloadCache(SkinAddress As String)
+ Public Shared Sub ReloadCache(SkinAddress As String)
RunInThread(
Sub()
Try
@@ -182,7 +182,7 @@
'刷新控件
For Each SkinLoader In {PageLaunchLeft.SkinMs, PageLaunchLeft.SkinLegacy}
SkinLoader.WaitForExit(IsForceRestart:=True)
- 下一页
+ Next
'完成提示
Hint("更改皮肤成功!", HintType.Finish)
Catch ex As Exception
@@ -192,7 +192,7 @@
End Sub
'披风
- 公共 Property HasCape As Boolean
+ Public Property HasCape As Boolean
Get
Return BtnSkinCape.Visibility = Visibility.Collapsed
End Get
@@ -204,8 +204,8 @@
End If
End Set
End Property
- 私有 IsChanging As Boolean = False
- 公共 Sub BtnSkinCape_Click() Handles BtnSkinCape.Click
+ Private IsChanging As Boolean = False
+ Public Sub BtnSkinCape_Click() Handles BtnSkinCape.Click
'检查条件,获取新披风
If IsChanging Then
Hint("正在更改披风中,请稍候!")
@@ -236,32 +236,32 @@ Retry:
RunInUiWait(
Sub()
Try
- Dim CapeNames As New Dictionary(Of String, String) From {
- {"Migrator", "迁移者披风"}, {"MapMaker", "Realms 地图制作者披风"}, {"Moderator", "Mojira 管理员披风"},
- {"Translator-Chinese", "Crowdin 中文翻译者披风"}, {"Translator", "Crowdin 翻译者披风"}, {"Cobalt", "Cobalt 披风"},
- {"Vanilla", "原版披风"}, {"Minecon2011", "Minecon 2011 参与者披风"}, {"Minecon2012", "Minecon 2012 参与者披风"},
- {"Minecon2013", "Minecon 2013 参与者披风"}, {"Minecon2015", "Minecon 2015 参与者披风"}, {"Minecon2016", "Minecon 2016 参与者披风"},
- {"Cherry Blossom", "樱花披风"}, {"15th Anniversary", "15 周年纪念披风"}, {"Purple Heart", "紫色心形披风"},
- {"Follower's", "追随者披风"}, {"MCC 15th Year", "MCC 15 周年披风"}, {"Minecraft Experience", "村民救援披风"},
- {"Mojang Office","Mojang 办公室披风"},{"Home","家园披风"},{"Menace","威胁披风"}
+ Dim CapeNames As New Dictionary(Of String, String) From {
+ {"Migrator", "迁移者披风"}, {"MapMaker", "Realms 地图制作者披风"}, {"Moderator", "Mojira 管理员披风"},
+ {"Translator-Chinese", "Crowdin 中文翻译者披风"}, {"Translator", "Crowdin 翻译者披风"}, {"Cobalt", "Cobalt 披风"},
+ {"Vanilla", "原版披风"}, {"Minecon2011", "Minecon 2011 参与者披风"}, {"Minecon2012", "Minecon 2012 参与者披风"},
+ {"Minecon2013", "Minecon 2013 参与者披风"}, {"Minecon2015", "Minecon 2015 参与者披风"}, {"Minecon2016", "Minecon 2016 参与者披风"},
+ {"Cherry Blossom", "樱花披风"}, {"15th Anniversary", "15 周年纪念披风"}, {"Purple Heart", "紫色心形披风"},
+ {"Follower's", "追随者披风"}, {"MCC 15th Year", "MCC 15 周年披风"}, {"Minecraft Experience", "村民救援披风"},
+ {"Mojang Office", "Mojang 办公室披风"},{"Home","家园披风"},{"Menace","威胁披风"}
}
Dim SelectionControl As New List(Of IMyRadio) From {New MyRadioBox With {.Text = "无披风"}}
For Each Cape In SkinData("capes")
Dim CapeName As String = Cape("alias").ToString
If CapeNames.ContainsKey(CapeName) Then CapeName = CapeNames(CapeName)
SelectionControl.Add(New MyRadioBox With {.Text = CapeName})
- 下一页
- SelId = MyMsgBoxSelect(SelectionControl, "选择披风", "确定", "取消")
+ Next
+ SelId = MyMsgBoxSelect(SelectionControl, "选择披风", "确定", "取消")
Catch ex As Exception
Log(ex, "获取玩家皮肤列表失败", LogLevel.Feedback)
End Try
End Sub)
If SelId Is Nothing Then Exit Sub
'发送请求
- Dim Result As String = NetRequestRetry("https://api.minecraftservices.com/minecraft/profile/capes/active",
- If(SelId = 0, "DELETE", "PUT"),
- If(SelId = 0, "", New JObject(New JProperty("capeId", SkinData("capes")(SelId - 1)("id"))).ToString(0)),
- "application/json", Headers:=New Dictionary(Of String, String) From {{"Authorization", "Bearer " & AccessToken}})
+ Dim Result As String = NetRequestRetry("https://api.minecraftservices.com/minecraft/profile/capes/active",
+ If(SelId = 0, "DELETE", "PUT"),
+ If(SelId = 0, "", New JObject(New JProperty("capeId", SkinData("capes")(SelId - 1)("id"))).ToString(0)),
+ "application/json", Headers:=New Dictionary(Of String, String) From {{"Authorization", "Bearer " & AccessToken}})
If Result.Contains("""errorMessage""") Then
Hint("更改披风失败:" & GetJson(Result)("errorMessage"), HintType.Critical)
Exit Sub
@@ -273,7 +273,7 @@ Retry:
Finally
IsChanging = False
End Try
- End Sub, "Cape Change")
+ End Sub, "Cape Change")
End Sub
End Class
From c41b6b361edfaf86c5972b12fe4604f9d1f9d1d9 Mon Sep 17 00:00:00 2001
From: shanlisi567 <911755868@qq.com>
Date: Wed, 19 Mar 2025 22:54:31 +0800
Subject: [PATCH 04/11] cape
---
Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb b/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb
index 696dba7..f66d459 100644
--- a/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb
+++ b/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb
@@ -243,7 +243,7 @@ Retry:
{"Minecon2013", "Minecon 2013 参与者披风"}, {"Minecon2015", "Minecon 2015 参与者披风"}, {"Minecon2016", "Minecon 2016 参与者披风"},
{"Cherry Blossom", "樱花披风"}, {"15th Anniversary", "15 周年纪念披风"}, {"Purple Heart", "紫色心形披风"},
{"Follower's", "追随者披风"}, {"MCC 15th Year", "MCC 15 周年披风"}, {"Minecraft Experience", "村民救援披风"},
- {"Mojang Office", "Mojang 办公室披风"},{"Home","家园披风"},{"Menace","威胁披风"}
+ {"Mojang Office", "Mojang 办公室披风"}, {"Home", "家园披风"}, {"Menace", "威胁披风"}
}
Dim SelectionControl As New List(Of IMyRadio) From {New MyRadioBox With {.Text = "无披风"}}
For Each Cape In SkinData("capes")
From 5f7c5b2770d13f55a982bae36ab9d8ecf03119d0 Mon Sep 17 00:00:00 2001
From: shanlisi567 <911755868@qq.com>
Date: Fri, 21 Mar 2025 12:35:08 +0800
Subject: [PATCH 05/11] =?UTF-8?q?=E6=9B=B4=E6=94=B9=E2=80=9C=E5=A8=81?=
=?UTF-8?q?=E8=83=81=E6=8A=AB=E9=A3=8E=E2=80=9D=E4=B8=BA=E2=80=9C=E5=85=A5?=
=?UTF-8?q?=E4=BE=B5=E6=8A=AB=E9=A3=8E=E2=80=9D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb b/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb
index f66d459..448df0b 100644
--- a/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb
+++ b/Plain Craft Launcher 2/Pages/PageLaunch/MySkin.xaml.vb
@@ -243,7 +243,7 @@ Retry:
{"Minecon2013", "Minecon 2013 参与者披风"}, {"Minecon2015", "Minecon 2015 参与者披风"}, {"Minecon2016", "Minecon 2016 参与者披风"},
{"Cherry Blossom", "樱花披风"}, {"15th Anniversary", "15 周年纪念披风"}, {"Purple Heart", "紫色心形披风"},
{"Follower's", "追随者披风"}, {"MCC 15th Year", "MCC 15 周年披风"}, {"Minecraft Experience", "村民救援披风"},
- {"Mojang Office", "Mojang 办公室披风"}, {"Home", "家园披风"}, {"Menace", "威胁披风"}
+ {"Mojang Office", "Mojang 办公室披风"}, {"Home", "家园披风"}, {"Menace", "入侵披风"}
}
Dim SelectionControl As New List(Of IMyRadio) From {New MyRadioBox With {.Text = "无披风"}}
For Each Cape In SkinData("capes")
From 6b9bfbf4f66021f2a16e283f43453eb7cabcf3a3 Mon Sep 17 00:00:00 2001
From: wyc-26
Date: Sat, 22 Mar 2025 22:28:12 +0800
Subject: [PATCH 06/11] =?UTF-8?q?fix(ModDownloadLib):=201.14=20=E5=8F=8A?=
=?UTF-8?q?=E4=BB=A5=E4=B8=8A=E7=89=88=E6=9C=AC=E6=97=A0=E6=B3=95=E4=B8=8B?=
=?UTF-8?q?=E8=BD=BD=20OptiFine?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Plain Craft Launcher 2/Modules/ModMain.vb | 18 +++++++++++++-----
.../Pages/PageDownload/ModDownloadLib.vb | 6 +++---
2 files changed, 16 insertions(+), 8 deletions(-)
diff --git a/Plain Craft Launcher 2/Modules/ModMain.vb b/Plain Craft Launcher 2/Modules/ModMain.vb
index 51cde8e..2839a54 100644
--- a/Plain Craft Launcher 2/Modules/ModMain.vb
+++ b/Plain Craft Launcher 2/Modules/ModMain.vb
@@ -873,15 +873,23 @@ NextFile:
End Sub
'''
- ''' 申请一个可用于任务缓存的临时文件夹,以 \ 结尾。
+ ''' 申请一个可用于任务缓存的临时文件夹。
''' 这些文件夹无需进行后续清理。
'''
''' 是否要求路径不包含空格。
- Public Function RequestTaskTempFolder(Optional RequireNonSpace As Boolean = False) As String
+ ''' 是否要求路径斜杠。
+ Public Function RequestTaskTempFolder(Optional RequireNonSpace As Boolean = False, Optional RequireSlash As Boolean = True) As String
TryClearTaskTemp()
- RequestTaskTempFolder = $"{PathTemp}TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}\"
- If RequireNonSpace AndAlso RequestTaskTempFolder.Contains(" ") Then
- RequestTaskTempFolder = $"{OsDrive}ProgramData\PCL\TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}\"
+ If RequireSlash Then
+ RequestTaskTempFolder = $"{PathTemp}TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}\"
+ If RequireNonSpace AndAlso RequestTaskTempFolder.Contains(" ") Then
+ RequestTaskTempFolder = $"{OsDrive}ProgramData\PCL\TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}\"
+ End If
+ Else
+ RequestTaskTempFolder = $"{PathTemp}TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}"
+ If RequireNonSpace AndAlso RequestTaskTempFolder.Contains(" ") Then
+ RequestTaskTempFolder = $"{OsDrive}ProgramData\PCL\TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}"
+ End If
End If
Directory.CreateDirectory(RequestTaskTempFolder)
End Function
diff --git a/Plain Craft Launcher 2/Pages/PageDownload/ModDownloadLib.vb b/Plain Craft Launcher 2/Pages/PageDownload/ModDownloadLib.vb
index 4707dc6..f2431af 100644
--- a/Plain Craft Launcher 2/Pages/PageDownload/ModDownloadLib.vb
+++ b/Plain Craft Launcher 2/Pages/PageDownload/ModDownloadLib.vb
@@ -545,7 +545,7 @@ pause"
Dim VersionFolder As String = McFolder & "versions\" & Id & "\"
Dim IsNewVersion As Boolean = DownloadInfo.Inherit.Contains("w") OrElse Val(DownloadInfo.Inherit.Split(".")(1)) >= 14
Dim Target As String = If(IsNewVersion,
- RequestTaskTempFolder(),
+ RequestTaskTempFolder() & "temp",
McFolder & "libraries\optifine\OptiFine\" & DownloadInfo.NameFile.Replace("OptiFine_", "").Replace(".jar", "").Replace("preview_", "") & "\" & DownloadInfo.NameFile.Replace("OptiFine_", "OptiFine-").Replace("preview_", ""))
Dim Loaders As New List(Of LoaderBase)
@@ -613,8 +613,8 @@ pause"
Log("[Download] 检测为新版 OptiFine:" & DownloadInfo.Inherit)
Loaders.Add(New LoaderTask(Of List(Of NetFile), Boolean)("安装 OptiFine(方式 A)",
Sub(Task As LoaderTask(Of List(Of NetFile), Boolean))
- Dim BaseMcFolderHome As String = RequestTaskTempFolder()
- Dim BaseMcFolder As String = BaseMcFolderHome & ".minecraft\"
+ Dim BaseMcFolderHome As String = RequestTaskTempFolder(False, False)
+ Dim BaseMcFolder As String = BaseMcFolderHome & "\.minecraft\"
Try
'准备安装环境
If Directory.Exists(BaseMcFolder & "versions\" & DownloadInfo.Inherit) Then
From 207ebb4e2713ede9407723d40505c089d4fed806 Mon Sep 17 00:00:00 2001
From: wyc-26
Date: Sat, 22 Mar 2025 22:30:51 +0800
Subject: [PATCH 07/11] =?UTF-8?q?chore(ModMain):=20=E4=BF=AE=E6=94=B9?=
=?UTF-8?q?=E6=8F=8F=E8=BF=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Plain Craft Launcher 2/Modules/ModMain.vb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Plain Craft Launcher 2/Modules/ModMain.vb b/Plain Craft Launcher 2/Modules/ModMain.vb
index 2839a54..ec59f66 100644
--- a/Plain Craft Launcher 2/Modules/ModMain.vb
+++ b/Plain Craft Launcher 2/Modules/ModMain.vb
@@ -877,7 +877,7 @@ NextFile:
''' 这些文件夹无需进行后续清理。
'''
''' 是否要求路径不包含空格。
- ''' 是否要求路径斜杠。
+ ''' 是否要求路径包含斜杠。
Public Function RequestTaskTempFolder(Optional RequireNonSpace As Boolean = False, Optional RequireSlash As Boolean = True) As String
TryClearTaskTemp()
If RequireSlash Then
From f2b6ef27ed70a264930b3ac75cfb979d050546bc Mon Sep 17 00:00:00 2001
From: wyc-26
Date: Sat, 22 Mar 2025 15:11:33 +0000
Subject: [PATCH 08/11] =?UTF-8?q?chore(ModMain):=20=E4=BC=98=E5=8C=96?=
=?UTF-8?q?=E4=BB=A3=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Plain Craft Launcher 2/Modules/ModMain.vb | 15 ++++-----------
1 file changed, 4 insertions(+), 11 deletions(-)
diff --git a/Plain Craft Launcher 2/Modules/ModMain.vb b/Plain Craft Launcher 2/Modules/ModMain.vb
index ec59f66..7702f6c 100644
--- a/Plain Craft Launcher 2/Modules/ModMain.vb
+++ b/Plain Craft Launcher 2/Modules/ModMain.vb
@@ -880,17 +880,10 @@ NextFile:
''' 是否要求路径包含斜杠。
Public Function RequestTaskTempFolder(Optional RequireNonSpace As Boolean = False, Optional RequireSlash As Boolean = True) As String
TryClearTaskTemp()
- If RequireSlash Then
- RequestTaskTempFolder = $"{PathTemp}TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}\"
- If RequireNonSpace AndAlso RequestTaskTempFolder.Contains(" ") Then
- RequestTaskTempFolder = $"{OsDrive}ProgramData\PCL\TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}\"
- End If
- Else
- RequestTaskTempFolder = $"{PathTemp}TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}"
- If RequireNonSpace AndAlso RequestTaskTempFolder.Contains(" ") Then
- RequestTaskTempFolder = $"{OsDrive}ProgramData\PCL\TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}"
- End If
- End If
+ Dim RequestTaskTempFolderWithoutSlash As String = If(RequireNonSpace AndAlso $"{PathTemp}TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}".Contains(" "),
+ $"{OsDrive}ProgramData\PCL\TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}",
+ $"{PathTemp}TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}")
+ RequestTaskTempFolder = If(RequireSlash, $"{RequestTaskTempFolderWithoutSlash}\", RequestTaskTempFolderWithoutSlash)
Directory.CreateDirectory(RequestTaskTempFolder)
End Function
From d546528904fe1760338bffa4cf838e9df4746a8b Mon Sep 17 00:00:00 2001
From: wyc-26
Date: Sat, 22 Mar 2025 15:21:33 +0000
Subject: [PATCH 09/11] =?UTF-8?q?chore(ModDownloadLib):=20=E6=8C=89?=
=?UTF-8?q?=E6=84=8F=E8=A7=81=E8=BF=9B=E8=A1=8C=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Plain Craft Launcher 2/Modules/ModMain.vb | 13 ++++++-------
.../Pages/PageDownload/ModDownloadLib.vb | 2 +-
2 files changed, 7 insertions(+), 8 deletions(-)
diff --git a/Plain Craft Launcher 2/Modules/ModMain.vb b/Plain Craft Launcher 2/Modules/ModMain.vb
index 7702f6c..51cde8e 100644
--- a/Plain Craft Launcher 2/Modules/ModMain.vb
+++ b/Plain Craft Launcher 2/Modules/ModMain.vb
@@ -873,17 +873,16 @@ NextFile:
End Sub
'''
- ''' 申请一个可用于任务缓存的临时文件夹。
+ ''' 申请一个可用于任务缓存的临时文件夹,以 \ 结尾。
''' 这些文件夹无需进行后续清理。
'''
''' 是否要求路径不包含空格。
- ''' 是否要求路径包含斜杠。
- Public Function RequestTaskTempFolder(Optional RequireNonSpace As Boolean = False, Optional RequireSlash As Boolean = True) As String
+ Public Function RequestTaskTempFolder(Optional RequireNonSpace As Boolean = False) As String
TryClearTaskTemp()
- Dim RequestTaskTempFolderWithoutSlash As String = If(RequireNonSpace AndAlso $"{PathTemp}TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}".Contains(" "),
- $"{OsDrive}ProgramData\PCL\TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}",
- $"{PathTemp}TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}")
- RequestTaskTempFolder = If(RequireSlash, $"{RequestTaskTempFolderWithoutSlash}\", RequestTaskTempFolderWithoutSlash)
+ RequestTaskTempFolder = $"{PathTemp}TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}\"
+ If RequireNonSpace AndAlso RequestTaskTempFolder.Contains(" ") Then
+ RequestTaskTempFolder = $"{OsDrive}ProgramData\PCL\TaskTemp\{GetUuid()}-{RandomInteger(0, 1000000)}\"
+ End If
Directory.CreateDirectory(RequestTaskTempFolder)
End Function
diff --git a/Plain Craft Launcher 2/Pages/PageDownload/ModDownloadLib.vb b/Plain Craft Launcher 2/Pages/PageDownload/ModDownloadLib.vb
index f2431af..fb323e5 100644
--- a/Plain Craft Launcher 2/Pages/PageDownload/ModDownloadLib.vb
+++ b/Plain Craft Launcher 2/Pages/PageDownload/ModDownloadLib.vb
@@ -613,7 +613,7 @@ pause"
Log("[Download] 检测为新版 OptiFine:" & DownloadInfo.Inherit)
Loaders.Add(New LoaderTask(Of List(Of NetFile), Boolean)("安装 OptiFine(方式 A)",
Sub(Task As LoaderTask(Of List(Of NetFile), Boolean))
- Dim BaseMcFolderHome As String = RequestTaskTempFolder(False, False)
+ Dim BaseMcFolderHome As String = BaseMcFolderHome.TrimEnd("\")
Dim BaseMcFolder As String = BaseMcFolderHome & "\.minecraft\"
Try
'准备安装环境
From 59e93114a9a340d0038de6476059802a257629fc Mon Sep 17 00:00:00 2001
From: wyc-26
Date: Sun, 23 Mar 2025 21:33:39 +0800
Subject: [PATCH 10/11] =?UTF-8?q?fix(ModLaunch):=20=E7=BC=93=E5=AD=98?=
=?UTF-8?q?=E9=97=AE=E9=A2=98=E5=AF=BC=E8=87=B4=E5=88=87=E6=8D=A2=E8=AF=AD?=
=?UTF-8?q?=E8=A8=80=E5=A4=B1=E8=B4=A5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Plain Craft Launcher 2/Modules/Minecraft/ModLaunch.vb | 1 +
1 file changed, 1 insertion(+)
diff --git a/Plain Craft Launcher 2/Modules/Minecraft/ModLaunch.vb b/Plain Craft Launcher 2/Modules/Minecraft/ModLaunch.vb
index 2c0f3f6..41bb5e3 100644
--- a/Plain Craft Launcher 2/Modules/Minecraft/ModLaunch.vb
+++ b/Plain Craft Launcher 2/Modules/Minecraft/ModLaunch.vb
@@ -1899,6 +1899,7 @@ NextVersion:
'1.6 ~ 10 :zh_CN 时正常,zh_cn 时自动切换为英文
'1.11 ~ 12:zh_cn 时正常,zh_CN 时虽然显示了中文但语言设置会错误地显示选择英文
'1.13+ :zh_cn 时正常,zh_CN 时自动切换为英文
+ IniClearCache(SetupFileAddress) '清除缓存(#2294)
Dim CurrentLang As String = ReadIni(SetupFileAddress, "lang", "none")
Dim RequiredLang As String = If(CurrentLang = "none" OrElse Not Directory.Exists(McVersionCurrent.PathIndie & "saves"), '#3844,整合包可能已经自带了 options.txt
If(Setup.Get("ToolHelpChinese"), "zh_cn", "en_us"), CurrentLang.ToLower)
From 0b888f7b0147256586ccc452959b2131d0f7c98a Mon Sep 17 00:00:00 2001
From: tangge233
Date: Mon, 31 Mar 2025 22:35:09 +0800
Subject: [PATCH 11/11] =?UTF-8?q?chore:=20=E9=98=B2=E6=AD=A2=E5=B0=8F?=
=?UTF-8?q?=E7=99=BD=E6=97=A0=E8=84=91=E5=A4=8D=E5=88=B6=E4=B8=8A=E9=9D=A2?=
=?UTF-8?q?=E7=9A=84=20LittleSkin=20=E5=9C=B0=E5=9D=80?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Plain Craft Launcher 2/Pages/PageVersion/PageVersionSetup.xaml | 3 +++
1 file changed, 3 insertions(+)
diff --git a/Plain Craft Launcher 2/Pages/PageVersion/PageVersionSetup.xaml b/Plain Craft Launcher 2/Pages/PageVersion/PageVersionSetup.xaml
index e564185..dacd5dd 100644
--- a/Plain Craft Launcher 2/Pages/PageVersion/PageVersionSetup.xaml
+++ b/Plain Craft Launcher 2/Pages/PageVersion/PageVersionSetup.xaml
@@ -176,6 +176,9 @@
"
“
”
+ /
+ http://
+ https://