From b532d7ae050b389b9c4a11d41c00c326f8f45e7c Mon Sep 17 00:00:00 2001 From: 1415ddfer <1783488228@qq.com> Date: Sun, 4 Aug 2024 18:24:17 +0800 Subject: [PATCH] clear New Account --- App.xaml.cs | 2 +- MainWindow.xaml.cs | 6 +-- Manager/AccountManager.cs | 78 +++++++++++++++------------ Manager/DataStreamNew.cs | 93 +++++++++++++++----------------- Manager/EngineManager.cs | 2 +- dialog/EditMember.xaml.cs | 6 +-- dialog/EditTeamControl.xaml.cs | 2 +- dialog/UseAccDataTextAdd.xaml.cs | 2 +- 8 files changed, 96 insertions(+), 95 deletions(-) diff --git a/App.xaml.cs b/App.xaml.cs index ce65910..1135030 100644 --- a/App.xaml.cs +++ b/App.xaml.cs @@ -84,7 +84,7 @@ namespace Zerolauncher }); DataStreamNew.Load(); _ = WebApiManager.StartListener(); - AccountManager.initLoadData(); + AccountManager.InitLoadData(); } protected override void OnExit(ExitEventArgs e) diff --git a/MainWindow.xaml.cs b/MainWindow.xaml.cs index f02f2de..33b629c 100644 --- a/MainWindow.xaml.cs +++ b/MainWindow.xaml.cs @@ -29,7 +29,7 @@ namespace Zerolauncher memberBG.ContextMenu = CreateContextMenu(); int i = 0; - foreach (var account in AccountManager.accountsList) + foreach (var account in AccountManager.AccountsList) { var member = new MemberControl(); member.memberId = i++; @@ -48,7 +48,7 @@ namespace Zerolauncher //foreach (var btn in mLayout.Children.) mLayout.Children.Clear(); int i = 0; - foreach (var account in AccountManager.accountsList) + foreach (var account in AccountManager.AccountsList) { var member = new MemberControl(); member.memberId = i++; @@ -124,7 +124,7 @@ namespace Zerolauncher private void editTeamItem_Click(object sender, RoutedEventArgs e) { - EditTeamDialog.CreateDailog(AccountManager.teamName); + EditTeamDialog.CreateDailog(AccountManager.TeamName); } private void Button_Click_3(object sender, RoutedEventArgs e) diff --git a/Manager/AccountManager.cs b/Manager/AccountManager.cs index 468cdd6..4575d3a 100644 --- a/Manager/AccountManager.cs +++ b/Manager/AccountManager.cs @@ -3,34 +3,34 @@ using System.Diagnostics; namespace Zerolauncher.Manager { - internal class AccountManager + internal static class AccountManager { - static int teamId=0; + static int _teamId; - public static string teamName = ""; + public static string TeamName = ""; - public static List? accountsList; + public static List? AccountsList; - public static void initLoadData() + public static void InitLoadData() { - teamId = AccountData.teamIndex; - foreach (var pair in GroupsData.data) + _teamId = AccountData.TeamIndex; + foreach (var pair in GroupsData.Data) { Trace.WriteLine(pair.Key, pair.Value); } - teamName = GroupsData.data[teamId]; - accountsList = AccountData.data[teamId]; + TeamName = GroupsData.Data[_teamId]; + AccountsList = AccountData.Data[_teamId]; } public static void ChangeTeam(int index) { - teamId = TeamManager.Index2Key(index); - teamId = AccountData.teamIndex; - teamName = GroupsData.data[teamId]; - accountsList = AccountData.data[teamId]; + _teamId = TeamManager.Index2Key(index); + _teamId = AccountData.TeamIndex; + TeamName = GroupsData.Data[_teamId]; + AccountsList = AccountData.Data[_teamId]; } - public static void saveEdit() + public static void SaveEdit() { DataStreamNew.Save(); MainWindow.Instance.ReloadBtn(); @@ -38,7 +38,7 @@ namespace Zerolauncher.Manager public static bool AddAccount(AccountNew account) { - account.groupId = teamId; + account.groupId = _teamId; AccountData.AddAccount(account); DataStreamNew.Save(); @@ -48,45 +48,53 @@ namespace Zerolauncher.Manager public static bool AddAccounts(AccountNew account) { - account.groupId = teamId; + account.groupId = _teamId; AccountData.AddAccount(account); return true; } public static void MoveAccount(int memberId, int newIndex) { - var group_id = TeamManager.Index2Key(newIndex); - var acc = accountsList[memberId]; - accountsList.RemoveAt(memberId); - AccountData.CheckGroup(group_id); - AccountData.data[group_id].Add(acc); + var groupId = TeamManager.Index2Key(newIndex); + if (AccountsList != null) + { + var acc = AccountsList[memberId]; + AccountsList.RemoveAt(memberId); + if (!AccountData.CheckGroup(groupId)) return; + AccountData.Data[groupId].Add(acc); + } + DataStreamNew.Save(); MainWindow.Instance.ReloadBtn(); } public static void DeleteAccount(int index) { - var nick = accountsList[index].nickName; - accountsList.RemoveAt(index); - AccountData.dict.Remove(nick); + if (AccountsList != null) + { + var nick = AccountsList[index].nickName; + AccountsList.RemoveAt(index); + AccountData.Dict.Remove(nick); + } + DataStreamNew.Save(); MainWindow.Instance.ReloadBtn(); } - public static void editTeamName(string teamName0) + public static void EditTeamName(string teamName0) { - teamName = teamName0; - GroupsData.data[teamId] = teamName; + TeamName = teamName0; + GroupsData.Data[_teamId] = TeamName; DataStreamNew.Save(); } public static bool DeleteTeam() { - if (GroupsData.data.Keys.Count == 1) + if (GroupsData.Data.Keys.Count == 1) { return false; } AccountData.RemoveGroup(); - ChangeTeam(GroupsData.data.Keys.First()); + ChangeTeam(GroupsData.Data.Keys.First()); DataStreamNew.Save(); MainWindow.Instance.ReloadBtn(); return true; @@ -94,18 +102,18 @@ namespace Zerolauncher.Manager } - internal class TeamManager + internal static class TeamManager { - public static int Index2Key(int index) { return GroupsData.data.ElementAt(index).Key; } + public static int Index2Key(int index) { return GroupsData.Data.ElementAt(index).Key; } public static string[] GetAllTeamName() { - return GroupsData.data.Values.ToArray(); + return GroupsData.Data.Values.ToArray(); } - public static void addTeam(string teamName) + public static void AddTeam(string teamName) { - GroupsData.data.Add(GroupsData.data.Keys.LastOrDefault() + 1, teamName); + GroupsData.Data.Add(GroupsData.Data.Keys.LastOrDefault() + 1, teamName); DataStreamNew.Save(); } @@ -113,7 +121,7 @@ namespace Zerolauncher.Manager [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveInlining)] public static AccountNew? Nick2Acc(string nickName) { - return AccountData.dict.ContainsKey(nickName)? AccountData.dict[nickName]:null; + return AccountData.Dict.GetValueOrDefault(nickName); } } diff --git a/Manager/DataStreamNew.cs b/Manager/DataStreamNew.cs index 96c64a6..aa3e824 100644 --- a/Manager/DataStreamNew.cs +++ b/Manager/DataStreamNew.cs @@ -213,29 +213,29 @@ namespace Zerolauncher.Manager } - static class AccountData + internal static class AccountData { - public static int teamIndex; + public static int TeamIndex; - public static Dictionary> data = []; + public static readonly Dictionary> Data = []; - public static Dictionary dict = []; + public static readonly Dictionary Dict = []; - public static void Init(DataItem data) + public static void Init(DataItem dataItem) { - data.ReSetOffset(); - teamIndex = data.ReadInt(); - var accountCount = data.ReadInt(); - for (int i = 0; i < accountCount; i++) + dataItem.ReSetOffset(); + TeamIndex = dataItem.ReadInt(); + var accountCount = dataItem.ReadInt(); + for (var i = 0; i < accountCount; i++) { AddAccount(new AccountNew() { - groupId = data.ReadInt(), - providerId = data.ReadInt(), - serverId = data.ReadInt(), - userName = data.ReadStr(), - userPWD = data.ReadStr(), - nickName = data.ReadStr() + groupId = dataItem.ReadInt(), + providerId = dataItem.ReadInt(), + serverId = dataItem.ReadInt(), + userName = dataItem.ReadStr(), + userPWD = dataItem.ReadStr(), + nickName = dataItem.ReadStr() }); } } @@ -255,76 +255,69 @@ namespace Zerolauncher.Manager public static void AddAccount(AccountNew item) { - int count = 0; - while (dict.ContainsKey(item.nickName)) + var count = 0; + while (Dict.ContainsKey(item.nickName)) item.nickName += count++.ToString(); - CheckGroup(item.groupId); - data[item.groupId].Add(item); + if (CheckGroup(item.groupId)) Data[item.groupId].Add(item); } public static bool CheckGroup(int groupId) { - if (GroupsData.data.ContainsKey(groupId)) - { - if (!data.ContainsKey(groupId)) data.Add(groupId, new List { }); - return true; - } - return false; + if (!GroupsData.Data.ContainsKey(groupId)) return false; + if (!Data.ContainsKey(groupId)) Data.Add(groupId, []); + return true; } public static void RemoveGroup() { - GroupsData.data.Remove(teamIndex); - foreach (var item in data[teamIndex]) + GroupsData.Data.Remove(TeamIndex); + foreach (var item in Data[TeamIndex]) { - dict.Remove(item.nickName); + Dict.Remove(item.nickName); } - data.Remove(teamIndex); + Data.Remove(TeamIndex); } public static DataItem Out() { var res = new DataItem(NameSpace.Accounts, []); - res.WriteInt(teamIndex); - res.WriteInt(data.Count); - foreach (var items in data.Values) + res.WriteInt(TeamIndex); + res.WriteInt(Data.Count); + foreach (var item in Data.Values.SelectMany(items => items)) { - foreach (var item in items) - { - res.WriteInt(item.groupId); - res.WriteInt(item.providerId); - res.WriteInt(item.serverId); - res.WriteString(item.userName); - res.WriteString(item.userPWD); - res.WriteString(item.nickName); - } + res.WriteInt(item.groupId); + res.WriteInt(item.providerId); + res.WriteInt(item.serverId); + res.WriteString(item.userName); + res.WriteString(item.userPWD); + res.WriteString(item.nickName); } return res; } } - static class GroupsData + internal static class GroupsData { - public static Dictionary data = []; - public static void Init(DataItem data) + public static readonly Dictionary Data = []; + public static void Init(DataItem dataItem) { - int count = data.ReadInt(); - for (int i = 0; i < count; i++) + var count = dataItem.ReadInt(); + for (var i = 0; i < count; i++) { - GroupsData.data.Add(data.ReadInt(), data.ReadStr()); + Data.Add(dataItem.ReadInt(), dataItem.ReadStr()); } } public static void InitDefaultData() { - data.Add(0, "队伍1"); + Data.Add(0, "队伍1"); } public static DataItem Out() { var res = new DataItem(NameSpace.Groups, []); - res.WriteInt(data.Count); - foreach (var item in data) + res.WriteInt(Data.Count); + foreach (var item in Data) { res.WriteInt(item.Key); res.WriteString(item.Value); diff --git a/Manager/EngineManager.cs b/Manager/EngineManager.cs index 4d1c023..c2e339a 100644 --- a/Manager/EngineManager.cs +++ b/Manager/EngineManager.cs @@ -59,7 +59,7 @@ namespace Zerolauncher.Manager public static bool CreateGame(int memberId) { - return CreateGame(AccountManager.accountsList[memberId]); + return CreateGame(AccountManager.AccountsList[memberId]); } public static int CheckGameState(AccountNew account) diff --git a/dialog/EditMember.xaml.cs b/dialog/EditMember.xaml.cs index 197f7ca..c004d24 100644 --- a/dialog/EditMember.xaml.cs +++ b/dialog/EditMember.xaml.cs @@ -28,7 +28,7 @@ namespace Zerolauncher.dialog if (EditMemberDialog.member != null) { int index = (int)EditMemberDialog.member; - var acc = AccountManager.accountsList[index]; + var acc = AccountManager.AccountsList[index]; cb_pid.SelectedIndex = acc.providerId; cb_sid.SelectedIndex = acc.serverId; edit_acc.Text = acc.userName; @@ -70,13 +70,13 @@ namespace Zerolauncher.dialog return; } int index = (int)EditMemberDialog.member; - var acc = AccountManager.accountsList[index]; + var acc = AccountManager.AccountsList[index]; acc.providerId = cb_pid.SelectedIndex; acc.serverId = cb_sid.SelectedIndex; acc.userName = edit_acc.Text; acc.userPWD = edit_pwd.Password; acc.nickName = edit_nick.Text; - AccountManager.saveEdit(); + AccountManager.SaveEdit(); EditMemberDialog.Close(); return; } diff --git a/dialog/EditTeamControl.xaml.cs b/dialog/EditTeamControl.xaml.cs index 21ecef8..7627bef 100644 --- a/dialog/EditTeamControl.xaml.cs +++ b/dialog/EditTeamControl.xaml.cs @@ -25,7 +25,7 @@ namespace Zerolauncher.dialog MessageBox.Show("昵称不能为空喵!", "提示"); return; } - if (isEditModle) AccountManager.editTeamName(edit_name.Text); else TeamManager.addTeam(edit_name.Text); + if (isEditModle) AccountManager.EditTeamName(edit_name.Text); else TeamManager.AddTeam(edit_name.Text); EditTeamDialog.Close(); } diff --git a/dialog/UseAccDataTextAdd.xaml.cs b/dialog/UseAccDataTextAdd.xaml.cs index 742a0b3..9194035 100644 --- a/dialog/UseAccDataTextAdd.xaml.cs +++ b/dialog/UseAccDataTextAdd.xaml.cs @@ -68,7 +68,7 @@ namespace Zerolauncher.dialog return; } MessageBox.Show("添加完成喵!", "提示"); - AccountManager.saveEdit(); + AccountManager.SaveEdit(); AddMemebersDialog.Close(); } else