private void BackButton_Click(object sender, EventArgs e) { Form menu = new MainMenuForm(); menu.Show(); Dispose(); }
private void Login() { //Check input isn't empty, else error message is shown if (usernameBox.TextLength > 0 && passwordBox.TextLength > 0) { //Sends input to login function, if input is good, sends user to main menu //Else error message is shown var result = NetworkClasses.Login(usernameBox.Lines[0], passwordBox.Lines[0], Helpers.GetLocalIpAddress()); if (result == "good" || result == "online") { NetworkClasses.UpdateUserValue("User_List", "Online", "Online", User.PlayerId); Form form = new MainMenuForm(); form.Show(); Dispose(); } else if (result == "pass" || result == "user") { MessageBox.Show("Invalid Username/Password", "Login error", MessageBoxButtons.OK, MessageBoxIcon.Error); } /*else if (result == "online") * { * MessageBox.Show("User already logged in", "Login error", MessageBoxButtons.OK, * MessageBoxIcon.Error); * }*/ } else { MessageBox.Show("Username and password cannot be blank.", "Login error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
/// <summary> /// On click, takes user back to the main menu /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void mainMenu_Click(object sender, EventArgs e) { var main = new MainMenuForm(); Client.ClientStop(); main.Show(); Dispose(); }
/// <summary> /// On click, resets character to null, stops NetServer, and takes user back to main menu /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void leaveGame_Click(object sender, EventArgs e) { _timer.Stop(); NetworkClasses.UpdateUserValue("User_List", "_Character", null, User.PlayerId); NetworkClasses.UpdateUserValue("User_List", "Online", "Online", User.PlayerId); Host.ServerStop(); Form form = new MainMenuForm(); form.Show(); _chat.Dispose(); if (!_profile.IsDisposed) { _profile.Dispose(); } Dispose(); }
private void gameTimer_tick(object sender, EventArgs e) { if (!Client.gameClose) { return; } _gameTimer.Stop(); if (!_chat.IsDisposed) { _chat.Dispose(); } NetworkClasses.UpdateUserValue("User_List", "Online", "Online", User.PlayerId); MessageBox.Show("Game Closed.", "Update", MessageBoxButtons.OK); Form form = new MainMenuForm(); form.Show(); }
/// <summary> /// Updates the list of players with the current information about the server via the database /// </summary> private void UpdateList() { var done = true; try { //Gets server info and places it into a dataset var ds = NetworkClasses.GetServer(Client.Conn); //Checks if game has started if (ds.Tables[0].Rows[0]["Status"].ToString() == "In Progress") { NetworkClasses.UpdateUserValue("User_List", "Online", "In Game", User.PlayerId); //MainMenuForm form = new MainMenuForm(); //form.Show(); //_chat.Dispose(); if (!_profile.IsDisposed) { _profile.Dispose(); } _timer.Stop(); _gameTimer.Start(); Hide(); return; } var currentNumPlayers = NetworkClasses.GetNumPlayers(int.Parse(ds.Tables[0].Rows[0]["Server_ID"].ToString())); if (_players.Count == currentNumPlayers && _players.Count >= 1) { //Check if characters have changed var newPlayerChars = new List <DataSet> { NetworkClasses.GetPlayer(int.Parse(ds.Tables[0].Rows[0]["Host"].ToString())) }; for (var i = 2; i <= 6; i++) { if (!string.IsNullOrEmpty(ds.Tables[0].Rows[0]["Player_" + i].ToString())) { newPlayerChars.Add( NetworkClasses.GetPlayer(int.Parse(ds.Tables[0].Rows[0]["Player_" + i].ToString()))); } } for (var i = 0; i < newPlayerChars.Count; i++) { if (_players[i].Tables[0].Rows[0]["_Character"].ToString() != newPlayerChars[i].Tables[0].Rows[0]["_Character"].ToString()) { done = false; break; } } if (done) { return; } } //Updating _players.Clear(); playerList.Items.Clear(); var row = ds.Tables[0].Rows[0]; var grabber = NetworkClasses.GetPlayer(int.Parse(row["Host"].ToString())); _players.Add(grabber); var Character = ""; //Host var listItem = new ListViewItem(grabber.Tables[0].Rows[0]["Username"].ToString()); Character = grabber.Tables[0].Rows[0]["_Character"].ToString(); listItem.SubItems.Add(Character); //Add the row entry to the listview playerList.Items.Add(listItem); for (var i = 2; i <= 6; i++) { if (!string.IsNullOrEmpty(row["Player_" + i].ToString())) { grabber = NetworkClasses.GetPlayer(int.Parse(row["Player_" + i].ToString())); _players.Add(grabber); listItem = new ListViewItem(grabber.Tables[0].Rows[0]["Username"].ToString()); Character = grabber.Tables[0].Rows[0]["_Character"].ToString(); listItem.SubItems.Add(Character); playerList.Items.Add(listItem); } } } catch (Exception e) //Thrown if server no longer exists { Console.WriteLine(e); //If the host leaves, the server no longer exists and the removing the player will throw an exception try { NetworkClasses.FindRemovePlayer(Client.Conn, User.PlayerId); } catch (Exception ex) { Console.WriteLine(ex); } _chat.Dispose(); Form form = new MainMenuForm(); form.Show(); _timer.Stop(); Client.ClientStop(); NetworkClasses.UpdateUserValue("User_List", "_Character", null, User.PlayerId); NetworkClasses.UpdateUserValue("User_List", "Online", "Online", User.PlayerId); Dispose(); MessageBox.Show("Host left the game", "Server Disconnected", MessageBoxButtons.OK, MessageBoxIcon.Error); } }