This commit is contained in:
xkeyC 2024-06-16 09:35:07 +08:00
parent a94f49eca2
commit 5cf8d5a0a0

View File

@ -351,9 +351,14 @@ class LocalizationUIModel extends _$LocalizationUIModel {
return iniString.contains("_starcitizen_doctor_localization_advanced=true"); return iniString.contains("_starcitizen_doctor_localization_advanced=true");
} }
Future<bool> _getLangCfgEnableLang({String lang = ""}) async { Future<bool> _getLangCfgEnableLang(
if (!await _cfgFile.exists()) return false; {String lang = "", String gamePath = ""}) async {
final str = (await _cfgFile.readAsString()).replaceAll(" ", ""); if (gamePath.isEmpty) {
gamePath = _scInstallPath;
}
final cfgFile = File("${_scDataDir.absolute.path}\\system.cfg");
if (!await cfgFile.exists()) return false;
final str = (await cfgFile.readAsString()).replaceAll(" ", "");
return str.contains("sys_languages=$lang") && return str.contains("sys_languages=$lang") &&
str.contains("g_language=$lang") && str.contains("g_language=$lang") &&
str.contains("g_languageAudio=english"); str.contains("g_languageAudio=english");
@ -397,7 +402,9 @@ class LocalizationUIModel extends _$LocalizationUIModel {
final dirList = await scDataDir.list().toList(); final dirList = await scDataDir.list().toList();
for (var element in dirList) { for (var element in dirList) {
for (var lang in languageSupport.keys) { for (var lang in languageSupport.keys) {
if (element.path.contains(lang)) { if (element.path.contains(lang) &&
await _getLangCfgEnableLang(
lang: lang, gamePath: scInstallPath)) {
final installedVersion = final installedVersion =
await _getInstalledIniVersion("${element.path}\\global.ini"); await _getInstalledIniVersion("${element.path}\\global.ini");
if (installedVersion == S.current.home_action_info_game_built_in || if (installedVersion == S.current.home_action_info_game_built_in ||