private void QuickHost(string mode, bool isranked) { var ran = new Random(); var form = new Host(false) { CardRules = { Text = Program.Config.CardRules }, Mode = { Text = mode }, Priority = { Checked = Program.Config.EnablePrority }, CheckDeck = { Checked = Program.Config.DisableCheckDeck }, ShuffleDeck = { Checked = Program.Config.DisableShuffleDeck }, LifePoints = { Text = Program.Config.Lifepoints }, GameName = LauncherHelper.GenerateString().Substring(0, 5), BanList = { SelectedItem = Program.Config.BanList }, TimeLimit = { SelectedItem = Program.Config.TimeLimit } }; ListBox list = (isranked) ? RankedList : UnrankedList; if (isranked) { form.BanList.SelectedIndex = 0; form.CheckDeck.Checked = false; form.ShuffleDeck.Checked = false; form.Priority.Checked = false; form.CardRules.SelectedIndex = 2; form.LifePoints.Text = form.Mode.Text == "Tag" ? "16000" : "8000"; } else { if (Program.Config.Lifepoints != ((mode == "Tag") ? "16000" : "8000")) { if (MessageBox.Show(Program.LanguageManager.Translation.GameLPChange, Program.LanguageManager.Translation.hostLifep, MessageBoxButtons.YesNo) == DialogResult.Yes) { form.LifePoints.Text = mode == "Tag" ? "16000" : "8000"; } } } RoomInfos userinfo = RoomInfos.FromName(form.GenerateURI(isranked)); var matchedRooms = (from object room in list.Items where m_rooms.ContainsKey(room.ToString()) select m_rooms[room.ToString()] into info where RoomInfos.CompareRoomInfo(userinfo, info) select info).ToList(); string server = string.Empty; if (matchedRooms.Count > 0) { var selectroom = ran.Next(matchedRooms.Count); form.GameName = matchedRooms[selectroom].roomName; server = matchedRooms[selectroom].server; } if (string.IsNullOrEmpty(server)) { LauncherHelper.GenerateConfig(GetServer(), form.GenerateURI(isranked)); LauncherHelper.RunGame("-j"); } else { LauncherHelper.GenerateConfig(Program.ServerList[server], form.GenerateURI(isranked)); LauncherHelper.RunGame("-j"); } }
private bool JoinQueue(bool isQuick=false) { var form = new Host(false); form.Mode.Items.Clear(); form.HostBtn.Text = "Join Queue"; form.Mode.Items.AddRange(new object[] { "Single", "Match"}); form.Mode.SelectedItem = form.Mode.Items.Contains(Program.Config.Mode) ? Program.Config.Mode : "Match"; if (form.BanList.Items.Count > 0) form.BanList.SelectedIndex = 0; form.CardRules.SelectedIndexChanged += form.FormatChanged; form.BanList.Enabled = false; form.Priority.Enabled = false; form.ShuffleDeck.Enabled = false; form.CheckDeck.Enabled = false; form.LifePoints.Enabled = false; form.TimeLimit.Enabled = false; form.PasswordInput.Enabled = false; form.CardRules.Items.Clear(); form.CardRules.Items.AddRange(new object[] { "TCG", "OCG" }); form.CardRules.SelectedItem = form.CardRules.Items.Contains(Program.Config.CardRules) ? Program.Config.CardRules : "TCG"; if (isQuick || form.ShowDialog() == DialogResult.OK) { QueueRequest request = new QueueRequest(form.CardRules.SelectedItem.ToString(), form.Mode.SelectedItem.ToString()); Program.ChatServer.SendPacket(DevServerPackets.JoinQueue, JsonSerializer.SerializeToString(request)); QueueLabel.Text = "Queue Status: searching"; return true; } return false; }
private void RequestSettingsbtn_Click(object sender, EventArgs e) { var form = new Host { Text = Program.LanguageManager.Translation.chatoptionsRequestFormText, HostBtn = {Text = Program.LanguageManager.Translation.chatoptionsBtnSave}, ShuffleDeck = {Enabled = false}, CheckDeck = {Enabled = false}, Priority = {Enabled = true}, LifePoints = {Enabled = false} }; form.Mode.Items.Remove("Tag"); if(form.ShowDialog() == DialogResult.OK) { Program.Config.chtCardRules = form.CardRules.Text; Program.Config.chtMode = form.Mode.Text; Program.Config.chtEnablePrority = form.Priority.Checked; Program.Config.chtDisableCheckDeck = form.CheckDeck.Checked; Program.Config.chtDisableShuffleDeck = form.ShuffleDeck.Checked; Program.Config.chtLifepoints = form.LifePoints.Text; Program.Config.chtBanList = form.BanList.Text; Program.Config.chtTimeLimit = form.TimeLimit.Text; Program.Config.EnablePrerelease = form.Prerelease.Checked; } }
private void HostGame() { var form = new Host(false); if (form.ShowDialog() == DialogResult.OK) { if (m_rooms.ContainsKey(form.PasswordInput.Text)) { MessageBox.Show(Program.LanguageManager.Translation.GamePasswordExsists); return; } if (Program.ServerList.Count == 0) { MessageBox.Show(Program.LanguageManager.Translation.GameNoServers); return; } LauncherHelper.GenerateConfig(GetServer(), form.GenerateURI(false)); LauncherHelper.RunGame("-j"); Program.ChatServer.SendPacket(DevServerPackets.HostDuel); } }
private void QuickSettingsBtn_Click(object sender, EventArgs e) { var form = new Host(false) { Text = Program.LanguageManager.Translation.QuickHostSetting, HostBtn = {Text = Program.LanguageManager.Translation.QuickHostBtn} }; if (form.ShowDialog() == DialogResult.OK) { Program.Config.CardRules = form.CardRules.Text; Program.Config.Mode = form.Mode.Text; Program.Config.EnablePrority = form.Priority.Checked; Program.Config.DisableCheckDeck = form.CheckDeck.Checked; Program.Config.DisableShuffleDeck = form.ShuffleDeck.Checked; Program.Config.Lifepoints = form.LifePoints.Text; Program.Config.BanList = form.BanList.Text; Program.Config.TimeLimit = form.TimeLimit.Text; Program.Config.EnablePrerelease = form.Prerelease.Checked; } }
private void RequestDuel(object sender, EventArgs e) { ListBox list = (UserListTabs.SelectedTab.Name == ChannelTab.Name ? ChannelList : UserList); if (list.SelectedItem == null) { return; } if ((list.SelectedItem is string ? list.SelectedItem.ToString() : ((UserData)list.SelectedItem).username) == Program.UserInfo.username) { WriteMessage(new ChatMessage(MessageType.System, CommandType.None, null, "You cannot duel request your self.")); } else { var form = new Host(); ServerInfo server = Program.MainForm.GameWindow.GetServer(); if (server == null) { MessageBox.Show("No Server Available."); return; } Program.ChatServer.SendPacket(DevServerPackets.RequestDuel, JsonSerializer.SerializeToString( new DuelRequest { username = list.SelectedItem is string ? list.SelectedItem.ToString() : ((UserData)list.SelectedItem).username, duelformatstring = form.GenerateGameString(false), server = server.serverName })); WriteMessage(new ChatMessage(MessageType.System, CommandType.None, null, "Duel request sent to " + (list.SelectedItem is string ? list.SelectedItem.ToString() : ((UserData)list.SelectedItem).username) + ".")); } }
private void HostGame(object sender, EventArgs e) { var button = (ToolStripMenuItem)sender; var form = new Host(false, (button.Name == "Ranked")); if (button.Name == "Ranked") { form.Mode.Items.Clear(); form.Mode.Items.AddRange(new object[] { "Single", "Match", "Tag" }); form.Mode.SelectedItem = "Match"; if (form.BanList.Items.Count > 0) form.BanList.SelectedIndex = 0; form.CardRules.SelectedIndexChanged += form.FormatChanged; form.BanList.Enabled = false; form.Priority.Enabled = false; form.ShuffleDeck.Enabled = false; form.CheckDeck.Enabled = false; form.LifePoints.Enabled = false; form.CardRules.Items.Clear(); form.CardRules.Items.AddRange(new object[] { "TCG", "OCG" }); form.CardRules.SelectedItem = "TCG"; } if (form.ShowDialog() == DialogResult.OK) { if (m_rooms.ContainsKey(form.PasswordInput.Text)) { MessageBox.Show(Program.LanguageManager.Translation.GamePasswordExsists); return; } if (Program.ServerList.Count == 0) { MessageBox.Show(Program.LanguageManager.Translation.GameNoServers); return; } LauncherHelper.GenerateConfig(GetServer(), form.GenerateURI((button.Name == "Ranked"))); LauncherHelper.RunGame("-j"); } }
private void RequestDuel(object sender, EventArgs e) { ListBox list = (UserListTabs.SelectedTab.Name == OnlineTab.Name ? UserList : (UserListTabs.SelectedTab.Name == TeamTab.Name ? TeamList : FriendList)); if (list.SelectedItem == null) { return; } if (list.SelectedItem.ToString() == Program.UserInfo.username) { WriteMessage(new ChatMessage(MessageType.System, CommandType.None, null, "You cannot duel request your self.")); } else { var form = new Host(); Program.ChatServer.SendPacket(DevServerPackets.RequestDuel, JsonSerializer.SerializeToString( new DuelRequest { username = list.SelectedItem.ToString(), duelformatstring = form.GenerateGameString(false)})); WriteMessage(new ChatMessage(MessageType.System, CommandType.None, null, "Duel request sent to " + list.SelectedItem + ".")); } }
private void HostGame() { var form = new Host(false); if (form.ShowDialog() == DialogResult.OK) { if (m_rooms.ContainsKey(form.PasswordInput.Text)) { MessageBox.Show(Program.LanguageManager.Translation.GamePasswordExsists); return; } ServerInfo server = form.CardRules.Text == "2099" ? GetServer(Program.Config.Server2099) : GetServer(false); if (server != null) { LauncherHelper.GenerateConfig(server, form.GenerateURI(false)); LauncherHelper.RunGame("-j"); Program.ChatServer.SendPacket(DevServerPackets.HostDuel); } else { MessageBox.Show(Program.LanguageManager.Translation.GameNoServers); return; } } }