@@ -838,16 +838,16 @@ Public Module ModBase
|
|||||||
'确保目录存在
|
'确保目录存在
|
||||||
Directory.CreateDirectory(GetPathFromFullPath(FilePath))
|
Directory.CreateDirectory(GetPathFromFullPath(FilePath))
|
||||||
'写入文件
|
'写入文件
|
||||||
If File.Exists(FilePath) Then
|
If Append Then
|
||||||
'如果文件存在,刷新目前文件
|
'追加目前文件
|
||||||
Using writer As New StreamWriter(FilePath, Append, If(Encoding, GetEncoding(ReadFileBytes(FilePath))))
|
Using writer As New StreamWriter(FilePath, True, If(Encoding, GetEncoding(ReadFileBytes(FilePath))))
|
||||||
writer.Write(Text)
|
writer.Write(Text)
|
||||||
writer.Flush()
|
writer.Flush()
|
||||||
writer.Close()
|
writer.Close()
|
||||||
End Using
|
End Using
|
||||||
Else
|
Else
|
||||||
'如果文件不存在,则新建并写入
|
'直接写入字节集
|
||||||
File.WriteAllText(FilePath, Text, If(Encoding, New UTF8Encoding(False)))
|
File.WriteAllBytes(FilePath, If(Encoding Is Nothing, Encoding.UTF8.GetBytes(Text), Encoding.GetBytes(Text)))
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
''' <summary>
|
''' <summary>
|
||||||
|
|||||||
@@ -128,6 +128,10 @@ Public Module ModLaunch
|
|||||||
Loaders.Insert(3, New LoaderTask(Of Integer, Integer)("内存优化", AddressOf McLaunchMemoryOptimize) With {.ProgressWeight = 30})
|
Loaders.Insert(3, New LoaderTask(Of Integer, Integer)("内存优化", AddressOf McLaunchMemoryOptimize) With {.ProgressWeight = 30})
|
||||||
Case 2 '关闭
|
Case 2 '关闭
|
||||||
End Select
|
End Select
|
||||||
|
'显示设置
|
||||||
|
If Setup.Get("LaunchGraphicSetup") Then
|
||||||
|
Loaders.Insert(3, New LoaderTask(Of Integer, Integer)("检查显示设置", AddressOf McLaunchCheckGraphicSettings) With {.ProgressWeight = 2})
|
||||||
|
End If
|
||||||
Dim LaunchLoader As New LoaderCombo(Of Object)("Minecraft 启动", Loaders) With {.Show = False}
|
Dim LaunchLoader As New LoaderCombo(Of Object)("Minecraft 启动", Loaders) With {.Show = False}
|
||||||
If McLoginLoader.State = LoadState.Finished Then McLoginLoader.State = LoadState.Waiting '要求重启登录主加载器,它会自行决定是否启动副加载器
|
If McLoginLoader.State = LoadState.Finished Then McLoginLoader.State = LoadState.Waiting '要求重启登录主加载器,它会自行决定是否启动副加载器
|
||||||
'等待加载器执行并更新 UI
|
'等待加载器执行并更新 UI
|
||||||
@@ -203,6 +207,48 @@ NextInner:
|
|||||||
|
|
||||||
#End Region
|
#End Region
|
||||||
|
|
||||||
|
#Region "显示设置"
|
||||||
|
|
||||||
|
Private Sub McLaunchCheckGraphicSettings(Loader As LoaderTask(Of Integer, Integer))
|
||||||
|
Const GPU_KEY As String = "Software\Microsoft\DirectX\UserGpuPreferences"
|
||||||
|
Const TARGET_SETUP As String = "GpuPreference=2;"
|
||||||
|
Dim javaPath As String = McLaunchJavaSelected.PathJavaw
|
||||||
|
|
||||||
|
McLaunchLog("显示设置开始")
|
||||||
|
'读取现行设置
|
||||||
|
Try
|
||||||
|
Dim parentKey As Microsoft.Win32.RegistryKey = My.Computer.Registry.CurrentUser
|
||||||
|
Dim regKey As Microsoft.Win32.RegistryKey = parentKey.OpenSubKey(GPU_KEY, False)
|
||||||
|
If regKey IsNot Nothing Then
|
||||||
|
Dim currentSetting As Object = regKey.GetValue(javaPath)
|
||||||
|
If currentSetting IsNot Nothing And TARGET_SETUP.Equals(currentSetting.ToString()) Then
|
||||||
|
McLaunchLog("不需要调整显示设置")
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
regKey.Close()
|
||||||
|
End If
|
||||||
|
Catch ex As Exception
|
||||||
|
McLaunchLog("无法读取注册表,跳过显示设置")
|
||||||
|
Exit Sub
|
||||||
|
End Try
|
||||||
|
'更新设置
|
||||||
|
Try
|
||||||
|
If Not IsAdmin() Then RunAsAdmin("")
|
||||||
|
Dim parentKey As Microsoft.Win32.RegistryKey = My.Computer.Registry.CurrentUser
|
||||||
|
Dim regKey As Microsoft.Win32.RegistryKey = parentKey.OpenSubKey(GPU_KEY, True)
|
||||||
|
If regKey Is Nothing Then
|
||||||
|
regKey = parentKey.CreateSubKey(GPU_KEY)
|
||||||
|
End If
|
||||||
|
regKey.SetValue(javaPath, TARGET_SETUP)
|
||||||
|
Catch ex As Exception
|
||||||
|
McLaunchLog("无法写入显示设置")
|
||||||
|
Exit Sub
|
||||||
|
End Try
|
||||||
|
McLaunchLog("已修改显示设置")
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
#End Region
|
||||||
|
|
||||||
#Region "预检测"
|
#Region "预检测"
|
||||||
|
|
||||||
Private Sub McLaunchPrecheck()
|
Private Sub McLaunchPrecheck()
|
||||||
@@ -1317,14 +1363,15 @@ Retry:
|
|||||||
McLaunchLog("开始获取 Minecraft 启动参数")
|
McLaunchLog("开始获取 Minecraft 启动参数")
|
||||||
'获取基准字符串与参数信息
|
'获取基准字符串与参数信息
|
||||||
Dim Arguments As String
|
Dim Arguments As String
|
||||||
|
Arguments = If(McLaunchJavaSelected.VersionCode > 8, "-Dfile.encoding=UTF-8 -Dstdout.encoding=UTF-8 -Dstderr.encoding=UTF-8 ", Nothing) '#4700
|
||||||
If McVersionCurrent.JsonObject("arguments") IsNot Nothing AndAlso McVersionCurrent.JsonObject("arguments")("jvm") IsNot Nothing Then
|
If McVersionCurrent.JsonObject("arguments") IsNot Nothing AndAlso McVersionCurrent.JsonObject("arguments")("jvm") IsNot Nothing Then
|
||||||
McLaunchLog("获取新版 JVM 参数")
|
McLaunchLog("获取新版 JVM 参数")
|
||||||
Arguments = McLaunchArgumentsJvmNew(McVersionCurrent)
|
Arguments += McLaunchArgumentsJvmNew(McVersionCurrent)
|
||||||
McLaunchLog("新版 JVM 参数获取成功:")
|
McLaunchLog("新版 JVM 参数获取成功:")
|
||||||
McLaunchLog(Arguments)
|
McLaunchLog(Arguments)
|
||||||
Else
|
Else
|
||||||
McLaunchLog("获取旧版 JVM 参数")
|
McLaunchLog("获取旧版 JVM 参数")
|
||||||
Arguments = McLaunchArgumentsJvmOld(McVersionCurrent)
|
Arguments += McLaunchArgumentsJvmOld(McVersionCurrent)
|
||||||
McLaunchLog("旧版 JVM 参数获取成功:")
|
McLaunchLog("旧版 JVM 参数获取成功:")
|
||||||
McLaunchLog(Arguments)
|
McLaunchLog(Arguments)
|
||||||
End If
|
End If
|
||||||
@@ -1421,9 +1468,10 @@ Retry:
|
|||||||
|
|
||||||
'添加 Java Wrapper 作为主 Jar
|
'添加 Java Wrapper 作为主 Jar
|
||||||
If McLaunchJavaSelected.VersionCode >= 9 Then DataList.Add("--add-exports cpw.mods.bootstraplauncher/cpw.mods.bootstraplauncher=ALL-UNNAMED")
|
If McLaunchJavaSelected.VersionCode >= 9 Then DataList.Add("--add-exports cpw.mods.bootstraplauncher/cpw.mods.bootstraplauncher=ALL-UNNAMED")
|
||||||
|
If Setup.Get("VersionAdvanceUseLaunchWrapperV2", Version) AndAlso Setup.Get("LaunchAdvanceUseLaunchWrapper") Then
|
||||||
DataList.Add("-Doolloo.jlw.tmpdir=""" & PathPure.TrimEnd("\") & """")
|
DataList.Add("-Doolloo.jlw.tmpdir=""" & PathPure.TrimEnd("\") & """")
|
||||||
DataList.Add("-jar """ & ExtractJavaWrapper() & """")
|
DataList.Add("-jar """ & ExtractJavaWrapper() & """")
|
||||||
|
End If
|
||||||
'添加 MainClass
|
'添加 MainClass
|
||||||
If Version.JsonObject("mainClass") Is Nothing Then
|
If Version.JsonObject("mainClass") Is Nothing Then
|
||||||
Throw New Exception("版本 json 中没有 mainClass 项!")
|
Throw New Exception("版本 json 中没有 mainClass 项!")
|
||||||
@@ -1488,9 +1536,10 @@ NextVersion:
|
|||||||
|
|
||||||
'添加 Java Wrapper 作为主 Jar
|
'添加 Java Wrapper 作为主 Jar
|
||||||
If McLaunchJavaSelected.VersionCode >= 9 Then DataList.Add("--add-exports cpw.mods.bootstraplauncher/cpw.mods.bootstraplauncher=ALL-UNNAMED")
|
If McLaunchJavaSelected.VersionCode >= 9 Then DataList.Add("--add-exports cpw.mods.bootstraplauncher/cpw.mods.bootstraplauncher=ALL-UNNAMED")
|
||||||
|
If Setup.Get("VersionAdvanceUseLaunchWrapperV2", Version) AndAlso Setup.Get("LaunchAdvanceUseLaunchWrapper") Then
|
||||||
DataList.Add("-Doolloo.jlw.tmpdir=""" & PathPure.TrimEnd("\") & """")
|
DataList.Add("-Doolloo.jlw.tmpdir=""" & PathPure.TrimEnd("\") & """")
|
||||||
DataList.Add("-jar """ & ExtractJavaWrapper() & """")
|
DataList.Add("-jar """ & ExtractJavaWrapper() & """")
|
||||||
|
End If
|
||||||
'将 "-XXX" 与后面 "XXX" 合并到一起
|
'将 "-XXX" 与后面 "XXX" 合并到一起
|
||||||
'如果不合并,会导致 Forge 1.17 启动无效,它有两个 --add-exports,进一步导致其中一个在后面被去重
|
'如果不合并,会导致 Forge 1.17 启动无效,它有两个 --add-exports,进一步导致其中一个在后面被去重
|
||||||
Dim DeDuplicateDataList As New List(Of String)
|
Dim DeDuplicateDataList As New List(Of String)
|
||||||
@@ -2050,6 +2099,7 @@ IgnoreCustomSkin:
|
|||||||
'输出 bat
|
'输出 bat
|
||||||
Try
|
Try
|
||||||
Dim CmdString As String =
|
Dim CmdString As String =
|
||||||
|
$"{If(McLaunchJavaSelected.VersionCode > 8, "chcp 65001>nul" & vbCrLf, Nothing)}" &
|
||||||
"@echo off" & vbCrLf &
|
"@echo off" & vbCrLf &
|
||||||
"title 启动 - " & McVersionCurrent.Name & vbCrLf &
|
"title 启动 - " & McVersionCurrent.Name & vbCrLf &
|
||||||
"echo 游戏正在启动,请稍候。" & vbCrLf &
|
"echo 游戏正在启动,请稍候。" & vbCrLf &
|
||||||
@@ -2142,8 +2192,8 @@ IgnoreCustomSkin:
|
|||||||
StartInfo.EnvironmentVariables("Path") = Join(Paths.Distinct.ToList, ";")
|
StartInfo.EnvironmentVariables("Path") = Join(Paths.Distinct.ToList, ";")
|
||||||
|
|
||||||
'设置其他参数
|
'设置其他参数
|
||||||
StartInfo.StandardErrorEncoding = Encoding.UTF8
|
StartInfo.StandardErrorEncoding = If(McLaunchJavaSelected.VersionCode > 8, Encoding.UTF8, Nothing)
|
||||||
StartInfo.StandardOutputEncoding = Encoding.UTF8
|
StartInfo.StandardOutputEncoding = If(McLaunchJavaSelected.VersionCode > 8, Encoding.UTF8, Nothing)
|
||||||
StartInfo.WorkingDirectory = ShortenPath(McVersionCurrent.PathIndie)
|
StartInfo.WorkingDirectory = ShortenPath(McVersionCurrent.PathIndie)
|
||||||
StartInfo.UseShellExecute = False
|
StartInfo.UseShellExecute = False
|
||||||
StartInfo.RedirectStandardOutput = True
|
StartInfo.RedirectStandardOutput = True
|
||||||
|
|||||||
@@ -1,4 +1,7 @@
|
|||||||
Public Module ModMusic
|
Imports NAudio.CoreAudioApi
|
||||||
|
Imports NAudio.CoreAudioApi.Interfaces
|
||||||
|
|
||||||
|
Public Module ModMusic
|
||||||
|
|
||||||
#Region "播放列表"
|
#Region "播放列表"
|
||||||
|
|
||||||
@@ -255,7 +258,7 @@
|
|||||||
#End Region
|
#End Region
|
||||||
|
|
||||||
''' <summary>
|
''' <summary>
|
||||||
''' 当前正在播放的 NAudio.Wave.WaveOut。
|
''' 当前正在播放的 NAudio.Wave.WaveOutEvent。
|
||||||
''' </summary>
|
''' </summary>
|
||||||
Public MusicNAudio = Nothing
|
Public MusicNAudio = Nothing
|
||||||
''' <summary>
|
''' <summary>
|
||||||
@@ -267,12 +270,13 @@
|
|||||||
''' 在 MusicUuid 不变的前提下,持续播放某地址的音乐,且在播放结束后随机播放下一曲。
|
''' 在 MusicUuid 不变的前提下,持续播放某地址的音乐,且在播放结束后随机播放下一曲。
|
||||||
''' </summary>
|
''' </summary>
|
||||||
Private Sub MusicLoop(Optional IsFirstLoad As Boolean = False)
|
Private Sub MusicLoop(Optional IsFirstLoad As Boolean = False)
|
||||||
Dim CurrentWave As NAudio.Wave.WaveOut = Nothing
|
Dim CurrentWave As NAudio.Wave.WaveOutEvent = Nothing
|
||||||
Dim Reader As NAudio.Wave.WaveStream = Nothing
|
Dim Reader As NAudio.Wave.WaveStream = Nothing
|
||||||
Try
|
Try
|
||||||
'开始播放
|
'开始播放
|
||||||
CurrentWave = New NAudio.Wave.WaveOut()
|
CurrentWave = New NAudio.Wave.WaveOutEvent()
|
||||||
MusicNAudio = CurrentWave
|
MusicNAudio = CurrentWave
|
||||||
|
CurrentWave.DeviceNumber = -1
|
||||||
Reader = New NAudio.Wave.AudioFileReader(MusicCurrent)
|
Reader = New NAudio.Wave.AudioFileReader(MusicCurrent)
|
||||||
CurrentWave.Init(Reader)
|
CurrentWave.Init(Reader)
|
||||||
CurrentWave.Play()
|
CurrentWave.Play()
|
||||||
|
|||||||
@@ -2087,8 +2087,8 @@ Retry:
|
|||||||
'判断 OptiFine 是否作为 Mod 进行下载
|
'判断 OptiFine 是否作为 Mod 进行下载
|
||||||
Dim MinecraftCode As Integer = If(Request.MinecraftName.Contains("."), Val(Request.MinecraftName.Split(".")(1)), 0)
|
Dim MinecraftCode As Integer = If(Request.MinecraftName.Contains("."), Val(Request.MinecraftName.Split(".")(1)), 0)
|
||||||
Dim OptiFineAsMod As Boolean = Request.OptiFineEntry IsNot Nothing AndAlso '1. 选择了 OptiFine
|
Dim OptiFineAsMod As Boolean = Request.OptiFineEntry IsNot Nothing AndAlso '1. 选择了 OptiFine
|
||||||
(Request.FabricVersion IsNot Nothing OrElse '2. 选择了 Fabric...
|
Request.FabricVersion IsNot Nothing OrElse '2. 选择了 Mod 加载器
|
||||||
(Request.ForgeEntry IsNot Nothing AndAlso MinecraftCode >= 14 AndAlso MinecraftCode <= 15)) '...或者 Forge 1.14~15(#4134)
|
Request.ForgeEntry IsNot Nothing
|
||||||
Dim ModsFolder As String = New McVersion(OutputFolder).GetPathIndie(True) & "mods\"
|
Dim ModsFolder As String = New McVersion(OutputFolder).GetPathIndie(True) & "mods\"
|
||||||
|
|
||||||
If OptiFineAsMod Then
|
If OptiFineAsMod Then
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
Public Class PageDownloadCompDetail
|
Public Class PageDownloadCompDetail
|
||||||
Private CompItem As MyCompItem = Nothing
|
Private CompItem As MyCompItem = Nothing
|
||||||
|
|
||||||
#Region "加载器"
|
#Region "加载器"
|
||||||
@@ -367,8 +367,10 @@
|
|||||||
Case 0
|
Case 0
|
||||||
FileName = $"[{ChineseName}] {File.FileName}"
|
FileName = $"[{ChineseName}] {File.FileName}"
|
||||||
Case 1
|
Case 1
|
||||||
FileName = $"{ChineseName}-{File.FileName}"
|
FileName = $"【{ChineseName}】{File.FileName}"
|
||||||
Case 2
|
Case 2
|
||||||
|
FileName = $"{ChineseName}-{File.FileName}"
|
||||||
|
Case 3
|
||||||
FileName = $"{File.FileName}-{ChineseName}"
|
FileName = $"{File.FileName}-{ChineseName}"
|
||||||
Case Else
|
Case Else
|
||||||
FileName = File.FileName
|
FileName = File.FileName
|
||||||
|
|||||||
@@ -102,7 +102,9 @@
|
|||||||
{"LaunchAdvanceRun", New SetupEntry("")},
|
{"LaunchAdvanceRun", New SetupEntry("")},
|
||||||
{"LaunchAdvanceRunWait", New SetupEntry(True)},
|
{"LaunchAdvanceRunWait", New SetupEntry(True)},
|
||||||
{"LaunchAdvanceAssets", New SetupEntry(False)},
|
{"LaunchAdvanceAssets", New SetupEntry(False)},
|
||||||
|
{"LaunchAdvanceUseLaunchWrapper", New SetupEntry(True)},
|
||||||
{"LaunchAdvanceJava", New SetupEntry(False)},
|
{"LaunchAdvanceJava", New SetupEntry(False)},
|
||||||
|
{"LaunchGraphicSetup", New SetupEntry(False)},
|
||||||
{"LaunchRamType", New SetupEntry(0)},
|
{"LaunchRamType", New SetupEntry(0)},
|
||||||
{"LaunchRamCustom", New SetupEntry(15)},
|
{"LaunchRamCustom", New SetupEntry(15)},
|
||||||
{"LinkEula", New SetupEntry(False, Source:=SetupSource.Registry)},
|
{"LinkEula", New SetupEntry(False, Source:=SetupSource.Registry)},
|
||||||
@@ -171,6 +173,7 @@
|
|||||||
{"VersionAdvanceGame", New SetupEntry("", Source:=SetupSource.Version)},
|
{"VersionAdvanceGame", New SetupEntry("", Source:=SetupSource.Version)},
|
||||||
{"VersionAdvanceAssets", New SetupEntry(0, Source:=SetupSource.Version)},
|
{"VersionAdvanceAssets", New SetupEntry(0, Source:=SetupSource.Version)},
|
||||||
{"VersionAdvanceAssetsV2", New SetupEntry(False, Source:=SetupSource.Version)},
|
{"VersionAdvanceAssetsV2", New SetupEntry(False, Source:=SetupSource.Version)},
|
||||||
|
{"VersionAdvanceUseLaunchWrapperV2", New SetupEntry(True, Source:=SetupSource.Version)},
|
||||||
{"VersionAdvanceJava", New SetupEntry(False, Source:=SetupSource.Version)},
|
{"VersionAdvanceJava", New SetupEntry(False, Source:=SetupSource.Version)},
|
||||||
{"VersionAdvanceRun", New SetupEntry("", Source:=SetupSource.Version)},
|
{"VersionAdvanceRun", New SetupEntry("", Source:=SetupSource.Version)},
|
||||||
{"VersionAdvanceRunWait", New SetupEntry(True, Source:=SetupSource.Version)},
|
{"VersionAdvanceRunWait", New SetupEntry(True, Source:=SetupSource.Version)},
|
||||||
|
|||||||
@@ -170,6 +170,13 @@
|
|||||||
</Grid>
|
</Grid>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</local:MyCard>
|
</local:MyCard>
|
||||||
|
<local:MyCard Margin="0,0,0,15" Title="显示卡" CanSwap="True" IsSwaped="True">
|
||||||
|
<StackPanel Margin="25,40,25,15">
|
||||||
|
<local:MyHint Text="此选项对应 Windows 设置中的“系统 > 屏幕 > 显示卡”页面,只在部分设备上有实际效果。" IsWarn="False" Margin="0,0,0,10" />
|
||||||
|
<local:MyCheckBox Text="启动前调整图形设置" x:Name="CheckAdvanceGraphicSetup" Tag="LaunchGraphicSetup"
|
||||||
|
ToolTip="启动前将 Java 的显示卡设置调整为“高性能”。若游戏运行时 GPU 占用过低,或在使用 OBS 捕捉时遇到黑屏问题,可尝试此功能。" />
|
||||||
|
</StackPanel>
|
||||||
|
</local:MyCard>
|
||||||
<local:MyCard x:Name="CardSkin" Margin="0,0,0,15" Title="离线皮肤" CanSwap="True" IsSwaped="True">
|
<local:MyCard x:Name="CardSkin" Margin="0,0,0,15" Title="离线皮肤" CanSwap="True" IsSwaped="True">
|
||||||
<StackPanel Margin="25,40,25,15">
|
<StackPanel Margin="25,40,25,15">
|
||||||
<local:MyHint Text="由于技术问题,此功能只保证对 1.19.2 以前的版本有效!" IsWarn="True" Margin="0,0,0,10" />
|
<local:MyHint Text="由于技术问题,此功能只保证对 1.19.2 以前的版本有效!" IsWarn="True" Margin="0,0,0,10" />
|
||||||
@@ -252,6 +259,8 @@
|
|||||||
ToolTip="警告:强烈推荐在版本设置中关闭特定版本的警告,而不是在这里关闭所有版本的警告!
如果在设置中手动选择了与当前版本不兼容的 Java,则自动跳过兼容性警告弹窗,强制使用手动选择的 Java。" />
|
ToolTip="警告:强烈推荐在版本设置中关闭特定版本的警告,而不是在这里关闭所有版本的警告!
如果在设置中手动选择了与当前版本不兼容的 Java,则自动跳过兼容性警告弹窗,强制使用手动选择的 Java。" />
|
||||||
<local:MyCheckBox Text="关闭文件校验" x:Name="CheckAdvanceAssets" Tag="LaunchAdvanceAssets"
|
<local:MyCheckBox Text="关闭文件校验" x:Name="CheckAdvanceAssets" Tag="LaunchAdvanceAssets"
|
||||||
ToolTip="警告:强烈推荐在版本设置中关闭特定版本的校验,而不是在这里关闭所有版本的校验!
完全不更改 assets;不校验 libraries、第三方登录库与版本主 jar 文件是否被修改。
如果你没有修改相关文件,请勿勾选此项。" />
|
ToolTip="警告:强烈推荐在版本设置中关闭特定版本的校验,而不是在这里关闭所有版本的校验!
完全不更改 assets;不校验 libraries、第三方登录库与版本主 jar 文件是否被修改。
如果你没有修改相关文件,请勿勾选此项。" />
|
||||||
|
<local:MyCheckBox Text="使用 JLW" x:Name="CheckAdvanceUseLaunchWrapper" Tag="LaunchAdvanceUseLaunchWrapper" Margin="50,0,0,0"
|
||||||
|
ToolTip="警告:强烈推荐在版本设置中设置特定版本是否使用 JLW,而不是在这里设置全部版本是否使用 JLW!
在启动时额外加载 JLW 来处理中文目录。
如果服务器没有使用反作弊,请勿取消勾选此项。" />
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</Grid>
|
</Grid>
|
||||||
</local:MyCard>
|
</local:MyCard>
|
||||||
|
|||||||
@@ -45,6 +45,9 @@
|
|||||||
CType(FindName("RadioRamType" & Setup.Load("LaunchRamType")), MyRadioBox).Checked = True
|
CType(FindName("RadioRamType" & Setup.Load("LaunchRamType")), MyRadioBox).Checked = True
|
||||||
SliderRamCustom.Value = Setup.Get("LaunchRamCustom")
|
SliderRamCustom.Value = Setup.Get("LaunchRamCustom")
|
||||||
|
|
||||||
|
'显示卡
|
||||||
|
CheckAdvanceGraphicSetup.Checked = Setup.Get("LaunchGraphicSetup")
|
||||||
|
|
||||||
'高级设置
|
'高级设置
|
||||||
TextAdvanceJvm.Text = Setup.Get("LaunchAdvanceJvm")
|
TextAdvanceJvm.Text = Setup.Get("LaunchAdvanceJvm")
|
||||||
TextAdvanceGame.Text = Setup.Get("LaunchAdvanceGame")
|
TextAdvanceGame.Text = Setup.Get("LaunchAdvanceGame")
|
||||||
@@ -52,6 +55,7 @@
|
|||||||
CheckAdvanceRunWait.Checked = Setup.Get("LaunchAdvanceRunWait")
|
CheckAdvanceRunWait.Checked = Setup.Get("LaunchAdvanceRunWait")
|
||||||
CheckAdvanceAssets.Checked = Setup.Get("LaunchAdvanceAssets")
|
CheckAdvanceAssets.Checked = Setup.Get("LaunchAdvanceAssets")
|
||||||
CheckAdvanceJava.Checked = Setup.Get("LaunchAdvanceJava")
|
CheckAdvanceJava.Checked = Setup.Get("LaunchAdvanceJava")
|
||||||
|
CheckAdvanceUseLaunchWrapper.Checked = Setup.Get("LaunchAdvanceUseLaunchWrapper")
|
||||||
|
|
||||||
Catch ex As NullReferenceException
|
Catch ex As NullReferenceException
|
||||||
Log(ex, "启动设置项存在异常,已被自动重置", LogLevel.Msgbox)
|
Log(ex, "启动设置项存在异常,已被自动重置", LogLevel.Msgbox)
|
||||||
@@ -78,11 +82,13 @@
|
|||||||
Setup.Reset("LaunchSkinType")
|
Setup.Reset("LaunchSkinType")
|
||||||
Setup.Reset("LaunchSkinID")
|
Setup.Reset("LaunchSkinID")
|
||||||
Setup.Reset("LaunchAdvanceJvm")
|
Setup.Reset("LaunchAdvanceJvm")
|
||||||
|
Setup.Reset("LaunchAdvanceUseLaunchWrapper")
|
||||||
Setup.Reset("LaunchAdvanceGame")
|
Setup.Reset("LaunchAdvanceGame")
|
||||||
Setup.Reset("LaunchAdvanceJava")
|
Setup.Reset("LaunchAdvanceJava")
|
||||||
Setup.Reset("LaunchAdvanceAssets")
|
Setup.Reset("LaunchAdvanceAssets")
|
||||||
Setup.Reset("LaunchAdvanceRun")
|
Setup.Reset("LaunchAdvanceRun")
|
||||||
Setup.Reset("LaunchAdvanceRunWait")
|
Setup.Reset("LaunchAdvanceRunWait")
|
||||||
|
Setup.Reset("LaunchGraphicSetup")
|
||||||
|
|
||||||
Setup.Reset("LaunchArgumentJavaAll")
|
Setup.Reset("LaunchArgumentJavaAll")
|
||||||
Setup.Reset("LaunchArgumentJavaSelect")
|
Setup.Reset("LaunchArgumentJavaSelect")
|
||||||
@@ -110,7 +116,7 @@
|
|||||||
Private Shared Sub ComboChange(sender As MyComboBox, e As Object) Handles ComboArgumentIndie.SelectionChanged, ComboArgumentVisibie.SelectionChanged, ComboArgumentWindowType.SelectionChanged, ComboArgumentPriority.SelectionChanged
|
Private Shared Sub ComboChange(sender As MyComboBox, e As Object) Handles ComboArgumentIndie.SelectionChanged, ComboArgumentVisibie.SelectionChanged, ComboArgumentWindowType.SelectionChanged, ComboArgumentPriority.SelectionChanged
|
||||||
If AniControlEnabled = 0 Then Setup.Set(sender.Tag, sender.SelectedIndex)
|
If AniControlEnabled = 0 Then Setup.Set(sender.Tag, sender.SelectedIndex)
|
||||||
End Sub
|
End Sub
|
||||||
Private Shared Sub CheckBoxChange(sender As MyCheckBox, e As Object) Handles CheckAdvanceAssets.Change, CheckAdvanceJava.Change, CheckAdvanceRunWait.Change, CheckArgumentRam.Change
|
Private Shared Sub CheckBoxChange(sender As MyCheckBox, e As Object) Handles CheckAdvanceAssets.Change, CheckAdvanceJava.Change, CheckAdvanceRunWait.Change, CheckArgumentRam.Change, CheckAdvanceUseLaunchWrapper.Change, CheckAdvanceGraphicSetup.Change
|
||||||
If AniControlEnabled = 0 Then Setup.Set(sender.Tag, sender.Checked)
|
If AniControlEnabled = 0 Then Setup.Set(sender.Tag, sender.Checked)
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@@ -211,7 +217,7 @@
|
|||||||
End If
|
End If
|
||||||
'设置文本
|
'设置文本
|
||||||
LabRamGame.Text = If(RamGame = Math.Floor(RamGame), RamGame & ".0", RamGame) & " GB" &
|
LabRamGame.Text = If(RamGame = Math.Floor(RamGame), RamGame & ".0", RamGame) & " GB" &
|
||||||
If(RamGame <> RamGameActual, " (可用 " & If(RamGameActual = Math.Floor(RamGameActual), RamGameActual & ".0", RamGameActual) & " GB)", "")
|
If(Math.Abs(RamGame - RamGameActual) > 0.05, " (可用 " & If(RamGameActual = Math.Floor(RamGameActual), RamGameActual & ".0", RamGameActual) & " GB)", "")
|
||||||
LabRamUsed.Text = If(RamUsed = Math.Floor(RamUsed), RamUsed & ".0", RamUsed) & " GB"
|
LabRamUsed.Text = If(RamUsed = Math.Floor(RamUsed), RamUsed & ".0", RamUsed) & " GB"
|
||||||
LabRamTotal.Text = " / " & If(RamTotal = Math.Floor(RamTotal), RamTotal & ".0", RamTotal) & " GB"
|
LabRamTotal.Text = " / " & If(RamTotal = Math.Floor(RamTotal), RamTotal & ".0", RamTotal) & " GB"
|
||||||
LabRamWarn.Visibility = If(RamGame = 1 AndAlso Not JavaIs64Bit() AndAlso Not Is32BitSystem AndAlso JavaList.Any, Visibility.Visible, Visibility.Collapsed)
|
LabRamWarn.Visibility = If(RamGame = 1 AndAlso Not JavaIs64Bit() AndAlso Not Is32BitSystem AndAlso JavaList.Any, Visibility.Visible, Visibility.Collapsed)
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
<local:MyPageRight
|
<local:MyPageRight
|
||||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
xmlns:local="clr-namespace:PCL" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
xmlns:local="clr-namespace:PCL" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||||
@@ -66,6 +66,7 @@
|
|||||||
<local:MyComboBox Grid.Row="0" x:Name="ComboDownloadTranslate" Grid.ColumnSpan="2" Tag="ToolDownloadTranslate" Grid.Column="1"
|
<local:MyComboBox Grid.Row="0" x:Name="ComboDownloadTranslate" Grid.ColumnSpan="2" Tag="ToolDownloadTranslate" Grid.Column="1"
|
||||||
ToolTip="下载 Mod 时,Mod 的默认文件名中,中文译名应该放在哪个位置">
|
ToolTip="下载 Mod 时,Mod 的默认文件名中,中文译名应该放在哪个位置">
|
||||||
<local:MyComboBoxItem Content="译名位于文件名开头:[遗物] relics-0.1.14" IsSelected="True" />
|
<local:MyComboBoxItem Content="译名位于文件名开头:[遗物] relics-0.1.14" IsSelected="True" />
|
||||||
|
<local:MyComboBoxItem Content="译名位于文件名开头:【遗物】relics-0.1.14" />
|
||||||
<local:MyComboBoxItem Content="译名位于文件名开头:遗物-relics-0.1.14" />
|
<local:MyComboBoxItem Content="译名位于文件名开头:遗物-relics-0.1.14" />
|
||||||
<local:MyComboBoxItem Content="译名位于文件名末尾:relics-0.1.14-遗物" />
|
<local:MyComboBoxItem Content="译名位于文件名末尾:relics-0.1.14-遗物" />
|
||||||
<local:MyComboBoxItem Content="不添加中文译名:relics-0.1.14" />
|
<local:MyComboBoxItem Content="不添加中文译名:relics-0.1.14" />
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ Public Class PageVersionExport
|
|||||||
TextExportName.HintText = PageVersionLeft.Version.Name
|
TextExportName.HintText = PageVersionLeft.Version.Name
|
||||||
TextExportVersion.Text = ""
|
TextExportVersion.Text = ""
|
||||||
TextExportVersion.HintText = "1.0.0"
|
TextExportVersion.HintText = "1.0.0"
|
||||||
|
CheckAdvancedModrinth.Checked = False
|
||||||
GetExportOption(CheckOptionsBasic).Description = PageVersionLeft.Version.GetDefaultDescription()
|
GetExportOption(CheckOptionsBasic).Description = PageVersionLeft.Version.GetDefaultDescription()
|
||||||
ResetConfigOverrides()
|
ResetConfigOverrides()
|
||||||
ReloadAllSubOptions()
|
ReloadAllSubOptions()
|
||||||
|
|||||||
@@ -221,6 +221,8 @@
|
|||||||
ToolTip="如果在设置中手动选择了与当前版本不兼容的 Java,则自动跳过兼容性警告弹窗,强制使用手动选择的 Java。" />
|
ToolTip="如果在设置中手动选择了与当前版本不兼容的 Java,则自动跳过兼容性警告弹窗,强制使用手动选择的 Java。" />
|
||||||
<local:MyCheckBox Text="关闭文件校验" x:Name="CheckAdvanceAssetsV2" Tag="VersionAdvanceAssetsV2"
|
<local:MyCheckBox Text="关闭文件校验" x:Name="CheckAdvanceAssetsV2" Tag="VersionAdvanceAssetsV2"
|
||||||
ToolTip="完全不更改 assets;不校验 libraries、第三方登录库与版本主 jar 文件是否被修改。
如果你没有修改相关文件,请勿勾选此项。" />
|
ToolTip="完全不更改 assets;不校验 libraries、第三方登录库与版本主 jar 文件是否被修改。
如果你没有修改相关文件,请勿勾选此项。" />
|
||||||
|
<local:MyCheckBox Text="使用 JLW" x:Name="CheckAdvanceUseLaunchWrapperV2" Tag="VersionAdvanceUseLaunchWrapperV2" Margin="50,0,0,0"
|
||||||
|
ToolTip="在启动时额外加载 JLW 来处理中文目录。
如果服务器没有使用反作弊,请勿取消勾选此项。" />
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</Grid>
|
</Grid>
|
||||||
</local:MyCard>
|
</local:MyCard>
|
||||||
|
|||||||
@@ -74,6 +74,7 @@
|
|||||||
Setup.Set("VersionAdvanceAssetsV2", True, Version:=PageVersionLeft.Version)
|
Setup.Set("VersionAdvanceAssetsV2", True, Version:=PageVersionLeft.Version)
|
||||||
End If
|
End If
|
||||||
CheckAdvanceAssetsV2.Checked = Setup.Get("VersionAdvanceAssetsV2", Version:=PageVersionLeft.Version)
|
CheckAdvanceAssetsV2.Checked = Setup.Get("VersionAdvanceAssetsV2", Version:=PageVersionLeft.Version)
|
||||||
|
CheckAdvanceUseLaunchWrapperV2.Checked = Setup.Get("VersionAdvanceUseLaunchWrapperV2", Version:=PageVersionLeft.Version)
|
||||||
CheckAdvanceJava.Checked = Setup.Get("VersionAdvanceJava", Version:=PageVersionLeft.Version)
|
CheckAdvanceJava.Checked = Setup.Get("VersionAdvanceJava", Version:=PageVersionLeft.Version)
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
@@ -104,7 +105,7 @@
|
|||||||
Setup.Reset("VersionAdvanceJava", Version:=PageVersionLeft.Version)
|
Setup.Reset("VersionAdvanceJava", Version:=PageVersionLeft.Version)
|
||||||
Setup.Reset("VersionAdvanceRun", Version:=PageVersionLeft.Version)
|
Setup.Reset("VersionAdvanceRun", Version:=PageVersionLeft.Version)
|
||||||
Setup.Reset("VersionAdvanceRunWait", Version:=PageVersionLeft.Version)
|
Setup.Reset("VersionAdvanceRunWait", Version:=PageVersionLeft.Version)
|
||||||
|
Setup.Reset("VersionAdvanceUseLaunchWrapperV2", Version:=PageVersionLeft.Version)
|
||||||
Setup.Reset("VersionArgumentJavaSelect", Version:=PageVersionLeft.Version)
|
Setup.Reset("VersionArgumentJavaSelect", Version:=PageVersionLeft.Version)
|
||||||
JavaSearchLoader.Start(IsForceRestart:=True)
|
JavaSearchLoader.Start(IsForceRestart:=True)
|
||||||
|
|
||||||
@@ -135,7 +136,7 @@
|
|||||||
Private Shared Sub ComboChange(sender As MyComboBox, e As Object) Handles ComboArgumentIndie.SelectionChanged, ComboRamOptimize.SelectionChanged
|
Private Shared Sub ComboChange(sender As MyComboBox, e As Object) Handles ComboArgumentIndie.SelectionChanged, ComboRamOptimize.SelectionChanged
|
||||||
If AniControlEnabled = 0 Then Setup.Set(sender.Tag, sender.SelectedIndex, Version:=PageVersionLeft.Version)
|
If AniControlEnabled = 0 Then Setup.Set(sender.Tag, sender.SelectedIndex, Version:=PageVersionLeft.Version)
|
||||||
End Sub
|
End Sub
|
||||||
Private Shared Sub CheckBoxChange(sender As MyCheckBox, e As Object) Handles CheckAdvanceRunWait.Change, CheckAdvanceAssetsV2.Change, CheckAdvanceJava.Change
|
Private Shared Sub CheckBoxChange(sender As MyCheckBox, e As Object) Handles CheckAdvanceRunWait.Change, CheckAdvanceAssetsV2.Change, CheckAdvanceJava.Change, CheckAdvanceUseLaunchWrapperV2.Change
|
||||||
If AniControlEnabled = 0 Then Setup.Set(sender.Tag, sender.Checked, Version:=PageVersionLeft.Version)
|
If AniControlEnabled = 0 Then Setup.Set(sender.Tag, sender.Checked, Version:=PageVersionLeft.Version)
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@@ -170,7 +171,7 @@
|
|||||||
End If
|
End If
|
||||||
'设置文本
|
'设置文本
|
||||||
LabRamGame.Text = If(RamGame = Math.Floor(RamGame), RamGame & ".0", RamGame) & " GB" &
|
LabRamGame.Text = If(RamGame = Math.Floor(RamGame), RamGame & ".0", RamGame) & " GB" &
|
||||||
If(RamGame <> RamGameActual, " (可用 " & If(RamGameActual = Math.Floor(RamGameActual), RamGameActual & ".0", RamGameActual) & " GB)", "")
|
If(Math.Abs(RamGame - RamGameActual) > 0.05, " (可用 " & If(RamGameActual = Math.Floor(RamGameActual), RamGameActual & ".0", RamGameActual) & " GB)", "")
|
||||||
LabRamUsed.Text = If(RamUsed = Math.Floor(RamUsed), RamUsed & ".0", RamUsed) & " GB"
|
LabRamUsed.Text = If(RamUsed = Math.Floor(RamUsed), RamUsed & ".0", RamUsed) & " GB"
|
||||||
LabRamTotal.Text = " / " & If(RamTotal = Math.Floor(RamTotal), RamTotal & ".0", RamTotal) & " GB"
|
LabRamTotal.Text = " / " & If(RamTotal = Math.Floor(RamTotal), RamTotal & ".0", RamTotal) & " GB"
|
||||||
LabRamWarn.Visibility = If(RamGame = 1 AndAlso Not JavaIs64Bit(PageVersionLeft.Version) AndAlso Not Is32BitSystem AndAlso JavaList.Any, Visibility.Visible, Visibility.Collapsed)
|
LabRamWarn.Visibility = If(RamGame = 1 AndAlso Not JavaIs64Bit(PageVersionLeft.Version) AndAlso Not Is32BitSystem AndAlso JavaList.Any, Visibility.Visible, Visibility.Collapsed)
|
||||||
|
|||||||
Reference in New Issue
Block a user