From d13313898482b64d105d3ffd4dea2e95d763a474 Mon Sep 17 00:00:00 2001
From: Nattiden <2682645990@qq.com>
Date: Fri, 8 Aug 2025 14:55:38 +0800
Subject: [PATCH] =?UTF-8?q?=E5=AE=9E=E7=8E=B0=20#6973?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Plain Craft Launcher 2/Modules/ModEvent.vb | 7 +++++++
Plain Craft Launcher 2/Pages/PageSetup/ModSetup.vb | 7 +++++++
2 files changed, 14 insertions(+)
diff --git a/Plain Craft Launcher 2/Modules/ModEvent.vb b/Plain Craft Launcher 2/Modules/ModEvent.vb
index 693f4ca..e6bd0ec 100644
--- a/Plain Craft Launcher 2/Modules/ModEvent.vb
+++ b/Plain Craft Launcher 2/Modules/ModEvent.vb
@@ -115,6 +115,13 @@
PageOtherTest.StartCustomDownload(Data(0), "未知")
End Try
+ Case "修改设置"
+ If Setup.IsEncoded(Data(0)) Then
+ Throw New Exception($"无法修改受加密保护的设置:{Data(0)}")
+ End If
+ Setup.Set(Data(0), Data(1))
+ Hint("已修改设置!", HintType.Finish)
+
Case Else
MyMsgBox("未知的事件类型:" & Type & vbCrLf & "请检查事件类型填写是否正确,或者 PCL 是否为最新版本。", "事件执行失败")
End Select
diff --git a/Plain Craft Launcher 2/Pages/PageSetup/ModSetup.vb b/Plain Craft Launcher 2/Pages/PageSetup/ModSetup.vb
index 5d8b968..6a301ac 100644
--- a/Plain Craft Launcher 2/Pages/PageSetup/ModSetup.vb
+++ b/Plain Craft Launcher 2/Pages/PageSetup/ModSetup.vb
@@ -357,6 +357,13 @@
Return Not HasIniKey(Version.Path & "PCL\Setup.ini", Key)
End Select
End Function
+ '''
+ ''' 某个设置项是否加密。
+ '''
+ Public Function IsEncoded(Key As String) As Boolean
+ If Not SetupDict.ContainsKey(Key) Then Throw New KeyNotFoundException("未找到设置项:" & Key) With {.Source = Key}
+ Return SetupDict(Key).Encoded
+ End Function
'''
''' 读取设置。