public void generateTiles(User u1, User u2) { battleshipContext context = new battleshipContext(); //Create new users because of persistence. User user1, user2; user1 = context.Users.Where(r => r.Id == u1.Id).First(); user2 = context.Users.Where(r => r.Id == u2.Id).First(); Tile t = null; for (int i = 1; i <= Size; i++) { for (int j = 1; j <= Size; j++) { t = new Tile(user1, i, j); this.Tiles.Add(t); context.Tiles.Add(t); context.SaveChanges(); t = new Tile(user2, i, j); this.Tiles.Add(t); context.Tiles.Add(t); context.SaveChanges(); } } context.Boards.Where(board => board.Id == this.Id).First().Tiles = this.Tiles; context.SaveChanges(); }
private void addGame(Invite inv) { battleshipContext context = new battleshipContext(); Board b = new Board(inv.Size); context.Boards.Add(b); context.SaveChanges(); User user1 = context.Users.Where(t => t.Id == User.Id).First(); User user2 = context.Users.Where(t => t.Id == inv.User.Id).First(); context.Games.Add(new Game(user1, user2, b)); context.SaveChanges(); b = context.Boards.Where(t => t.Id == b.Id).First(); b.generateTiles(user1, user2); loadListBox(); }
private void btnRegister_Click(object sender, RoutedEventArgs e) { battleshipContext context = new battleshipContext(); User user = new User(txtUsername.Text, txtPassword.Password); context.Users.Add(user); context.SaveChanges(); lblMessage.Content = "Nieuwe gebruiker aangemaakt."; }
private void btnClickEnemy(object sender, RoutedEventArgs e) { battleshipContext context = new battleshipContext(); if (Game.Board.setTilesUser1 != 0 && Game.Board.setTilesUser2 != 0) { MessageBox.Show("Niet alle velden zijn geset."); return; } if (context.Games.Find(Game.Id).Turn.Id != currentUser) { MessageBox.Show("U bent niet aan de beurt."); return; } context.Games.Find(Game.Id).Turn = null; context.SaveChanges(); Button button = (Button)sender; sendMSMQ(new Move(Convert.ToInt32(button.Name[6]) - 48, Convert.ToInt32(button.Name[4]) - 48)); button.IsEnabled = false; }
private void btnClickYou(object sender, RoutedEventArgs e) { battleshipContext context = new battleshipContext(); if (currentUser == Game.User1.Id) { if (context.Boards.SqlQuery("select * from Boards where id = " + Game.Board.Id).First().setTilesUser1 == 0) { return; } } else if (context.Boards.SqlQuery("select * from Boards where id = " + Game.Board.Id).First().setTilesUser2 == 0) { return; } Piece p = new Piece(); p.pieceType = "Boat"; context.Pieces.Add(p); Button button = (Button)sender; button.Content = "x"; context.Tiles.SqlQuery("select * from Tiles where Board_Id = " + Game.Board.Id + " and Owner_Id = " + currentUser + " and x = " + button.Name[6] + " and y = " + button.Name[4]).First().Piece = p; if (currentUser == Game.User1.Id) { context.Boards.SqlQuery("select * from Boards where id = " + Game.Board.Id).First().setTilesUser1 -= 1; } else { context.Boards.SqlQuery("select * from Boards where id = " + Game.Board.Id).First().setTilesUser2 -= 1; } context.SaveChanges(); button.IsEnabled = false; button.Content = "x"; }
private void Timer_Tick(object sender, EventArgs e) { battleshipContext context = new battleshipContext(); MessageQueue msq = new MessageQueue(@".\private$\" + Game.Id + "/" + currentUser); try { Message[] messages = msq.GetAllMessages(); foreach (Message m in messages) { object o = formatter.Read(m); try { Move move = (Move)o; Tile t = context.Tiles.SqlQuery("select * from Tiles where Board_Id = " + Game.Board.Id + " and Owner_Id = " + currentUser + " and x = " + move.x + " and y = " + move.y).First(); t.IsHit = true; if (t.Piece != null) { MessageBox.Show("U bent geraakt."); if (currentUser == Game.User1.Id) { context.Boards.Find(Game.Board.Id).HitsUser1 += 1; if (context.Boards.Find(Game.Board.Id).HitsUser1 == 7) { sendMSMQ(new Response(true, false)); MessageBox.Show("U heeft verloren!"); this.Close(); } else { sendMSMQ(new Response(true)); } } else { context.Boards.Find(Game.Board.Id).HitsUser2 += 1; if (context.Boards.Find(Game.Board.Id).HitsUser2 == 7) { sendMSMQ(new Response(true, false)); MessageBox.Show("U heeft verloren!"); this.Close(); } else { sendMSMQ(new Response(true)); } } } else { MessageBox.Show("U bent niet geraakt."); sendMSMQ(new Response(false)); } context.Games.Find(Game.Id).Turn = context.Users.Find(currentUser); context.SaveChanges(); } catch (Exception) {} try { Response r = (Response)o; MessageBox.Show(r.displayMessage()); if (!r.Continue) { MessageBox.Show("u heeft gewonnen!"); this.Close(); } } catch (Exception) {} } msq.Purge(); } catch { } }