private void CmdRequestCurrentPlayerCount() { int nCurrentCount = 0; ServerManager svrMgr = FindObjectOfType <ServerManager>(); if (svrMgr != null) { nCurrentCount = svrMgr.GetCurrentPlayerCounts(); currentIndex = nCurrentCount; svrMgr.AddPlayer(); } RpcResponseCurrentPlayerCount(nCurrentCount); }
//Login auth user and will start the main game when it is passed //It also starts the timers for the player private void btnlogin_Click(object sender, RoutedEventArgs e) { var username = txtUsername.Text; var password = txtPassword.Password; var plyMgr = new UserManager(); var serMgr = new ServerManager(); if (_user == null) { try { _user = plyMgr.AuthenticateUser(username, password); //MessageBox.Show("Welcome back, " + _user.FirstName); LoggedIn(); try { serMgr.AddPlayer(_user.PlayerID); player = serMgr.GetPlayer(_user.UserName); btnItemList.Visibility = Visibility.Visible; btnServerList.Visibility = Visibility.Visible; //Menu.Visibility = Visibility.Hidden; txtPassword.Password = ""; txtUsername.Text = ""; btnLogin.IsDefault = false; GameView.Children.Remove(PlayerImage); PlayerImage = new Image(); PlayerBitmap = BitmapListRight[0]; PlayerImage.Source = PlayerBitmap; PlayerImage.Width = PlayerBitmap.Width; PlayerImage.Height = PlayerBitmap.Height; GameView.Children.Add(PlayerImage); Canvas.SetBottom(PlayerImage, player.LocationY); Canvas.SetLeft(PlayerImage, player.LocationX); StatusMessage.Content = "Logged in as " + _user.UserName; dispatcherTimerServerUpdate = new DispatcherTimer(); //does new here to reset it so it does not speed up dispatcherTimerServerUpdate.Tick += new EventHandler(dispatcherTimerServerUpdate_Tick); dispatcherTimerServerUpdate.Interval = TimeSpan.FromMilliseconds(1000); dispatcherTimerMovement = new DispatcherTimer(); //does new here to reset it so it does not speed up dispatcherTimerMovement.Tick += new EventHandler(dispatcherTimerMovement_Tick); dispatcherTimerMovement.Interval = TimeSpan.FromMilliseconds(60); dispatcherTimerPlayerImage = new DispatcherTimer(); //does new here to reset it so it does not speed up dispatcherTimerPlayerImage.Tick += new EventHandler(dispatcherTimerPlayerImage_Tick); dispatcherTimerPlayerImage.Interval = TimeSpan.FromMilliseconds(60); txtPassword.Background = Brushes.White; dispatcherTimerServerUpdate.Start(); dispatcherTimerMovement.Start(); dispatcherTimerPlayerImage.Start(); //FindOthers(); } catch { throw new Exception("Was not able to add Player to server."); } } catch (Exception ex) { //MessageBox.Show("Intruder Alert"); txtPassword.Background = Brushes.Red; StatusNotification.Content = ex.Message; } } else { _user = null; LoggedOut(); btnItemList.Visibility = Visibility.Hidden; btnServerList.Visibility = Visibility.Hidden; //Menu.Visibility = System.Windows.Visibility.Visible; btnLogin.Content = "Login"; btnLogin.IsDefault = true; txtUsername.Focus(); StatusMessage.Content = "You are not logged in. Log in to Continue."; } }