Example #1
0
 public bool CheckPlayerBorderCollision(PacManPlayer player)
 {
     if (rightBorder < player.Position.X || player.Position.X < leftBorder || lowerBorder < player.Position.Y ||
         player.Position.Y < topBorder)
     {
         return(true);
     }
     return(false);
 }
Example #2
0
 public bool CheckPlayerGhostCollision(PacManPlayer player, List <ServerGhost> ghosts)
 {
     foreach (var ghost in ghosts)
     {
         if (ghost.Position.X - ghost.Width <= player.Position.X &&
             player.Position.X - playerSize <= ghost.Position.X &&
             ghost.Position.Y <= player.Position.Y + playerSize &&
             player.Position.Y <= ghost.Position.Y + ghost.Length)
         {
             return(true);
         }
     }
     return(false);
 }
Example #3
0
        public void PlayerMovement(PacManPlayer player)
        {
            //Player Movements
            lock (NewMovements) {
                foreach (var movement in NewMovements)
                {
                    if (movement.Id == player.Id)
                    {
                        switch (movement.Direct)
                        {
                        case Movement.Direction.Down:
                            player.Position.Y += playerSpeed;
                            if (CheckPlayerBorderCollision(player))
                            {
                                player.Position.Y -= playerSpeed;
                            }
                            break;

                        case Movement.Direction.Up:
                            player.Position.Y -= playerSpeed;
                            if (CheckPlayerBorderCollision(player))
                            {
                                player.Position.Y += playerSpeed;
                            }
                            break;

                        case Movement.Direction.Left:
                            player.Position.X -= playerSpeed;
                            if (CheckPlayerBorderCollision(player))
                            {
                                player.Position.X += playerSpeed;
                            }
                            break;

                        case Movement.Direction.Right:
                            player.Position.X += playerSpeed;
                            if (CheckPlayerBorderCollision(player))
                            {
                                player.Position.X -= playerSpeed;
                            }
                            break;

                        case Movement.Direction.Stopped:
                            break;
                        }
                        player.Direction = movement.Direct;
                    }
                }
            }
        }
Example #4
0
 public Coin CheckCoin(PacManPlayer player, List <Coin> coins)
 {
     foreach (var coin in coins)
     {
         if (coin.Position.X - coinSize <= player.Position.X &&
             player.Position.X - playerSize <= coin.Position.X &&
             coin.Position.Y <= player.Position.Y + playerSize &&
             player.Position.Y <= coin.Position.Y + coinSize)
         {
             player.Score += 1;
             return(coin);
         }
     }
     return(null);
 }
Example #5
0
 public bool CheckPlayerWallCollision(PacManPlayer player)
 {
     //TODO:Test this
     foreach (var wall in walls)
     {
         if (wall.Position.X - wall.Width <= player.Position.X &&
             player.Position.X - playerSize <= wall.Position.X &&
             wall.Position.Y <= player.Position.Y + playerSize &&
             player.Position.Y <= wall.Position.Y + wall.Length)
         {
             return(true);
         }
     }
     return(false);
 }
 private PictureBox initPlayer(PacManPlayer player)
 {
     return(new PictureBox {
         BackColor = Color.Transparent,
         Image = Resources.Left,
         Margin = new Padding(0),
         Name = $"pacman{player.Id}",
         Size = new Size(25, 25),
         SizeMode = PictureBoxSizeMode.StretchImage,
         TabIndex = 4,
         TabStop = false,
         Left = player.Position.X,
         Top = player.Position.Y
     });
 }