From 00bc19dbefc1dbc1c755968b320c76f39e38a5ba Mon Sep 17 00:00:00 2001 From: Lev Rusanov <30170278+JDM170@users.noreply.github.com> Date: Sun, 6 Apr 2025 23:31:51 +0700 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Исправлена постоянная загрузка конфигов с GitHub (даже когда конфиги актуальные) * Функционал по взаимодействию с ADR Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com> --- SaveWizard/MainForm.cs | 29 ++++++++++++++++++++++------- SaveWizard/UpdateForm.cs | 14 +++++++------- 2 files changed, 29 insertions(+), 14 deletions(-) diff --git a/SaveWizard/MainForm.cs b/SaveWizard/MainForm.cs index 0d420d2..75f96e1 100644 --- a/SaveWizard/MainForm.cs +++ b/SaveWizard/MainForm.cs @@ -99,13 +99,8 @@ namespace SaveWizard item.Value.GetCheck().Checked = true; } - List adr_value = GetADR(RegexHandler.GetValue(RegexHandler.SearchLine("adr:"))); - for (int i = 0; i < 6; i++) - { - txt_adr.Text += adr_value[i]; - if (i != 5) - txt_adr.Text += ","; - } + txt_adr.Text = string.Join(",", GetADR(RegexHandler.GetValue(RegexHandler.SearchLine("adr:")))); + chk_adr.Checked = true; if (RegexHandler.SearchLine("company.volatile.stokes.calais") != 0) selected_game = "ets2"; @@ -149,6 +144,8 @@ namespace SaveWizard item.Key.Text = ""; item.Value.GetCheck().Checked = true; } + txt_adr.Text = ""; + chk_adr.Checked = true; btn_unlock_garages.Enabled = false; btn_recover_backup.Enabled = false; btn_apply_changes.Enabled = false; @@ -266,6 +263,24 @@ namespace SaveWizard private void btn_apply_changes_Click(object sender, EventArgs e) { + if (!chk_adr.Checked) + { + List adrList = txt_adr.Text.ToList(); + adrList.RemoveAll(i => i == ' ' || i == ',' || i == '.'); + if (adrList.Count < 6) + { + Utils.ShowError("ADR can't have less than 6 elements."); + } + else if (adrList.Count > 6) + { + Utils.ShowError("ADR can't have more than 6 elements."); + } + else + { + int adrNew = Convert.ToInt32(string.Join("", adrList), 2); + RegexHandler.SetValue(RegexHandler.SearchLine("adr:"), adrNew.ToString()); + } + } foreach (KeyValuePair item in items) if (!item.Value.GetCheck().Checked) RegexHandler.SetValue(RegexHandler.SearchLine(item.Value.GetString()), item.Key.Text); diff --git a/SaveWizard/UpdateForm.cs b/SaveWizard/UpdateForm.cs index 9c753f0..737f3a1 100644 --- a/SaveWizard/UpdateForm.cs +++ b/SaveWizard/UpdateForm.cs @@ -24,16 +24,16 @@ namespace SaveWizard foreach (string unit in Regex.Split(path, "/")) { currentDirectory = Path.Combine(currentDirectory, unit); - if (!unit.Contains(".json")) - { - if (!Directory.Exists(currentDirectory)) - Directory.CreateDirectory(currentDirectory); - } - else + if (unit.Contains(".json")) { if (!File.Exists(currentDirectory)) File.WriteAllText(currentDirectory, ""); } + else + { + if (!Directory.Exists(currentDirectory)) + Directory.CreateDirectory(currentDirectory); + } } } @@ -59,7 +59,7 @@ namespace SaveWizard if (Utils.GenerateMD5(path) != unit.Value) { string newConfigText = wb.DownloadString($"{githubLink}{path}"); - File.WriteAllText(Path.Combine(Environment.CurrentDirectory, path), newConfigText); + File.WriteAllText(Path.Combine(Environment.CurrentDirectory, path), newConfigText.Replace("\n", "\r\n")); } backgroundWorker1.ReportProgress(progressBar1.Value + 1); }