Esempio n. 1
0
        private bool CheckForWallCollision(SnakePlayer snakeX)
        {
            if (snakeX.IsIntersectingRect(new Rectangle(-100, 0, 100, GameCanvas.Height)))
            {
                return(true);
            }
            //snakeX.OnHitWall(Direction.left);

            if (snakeX.IsIntersectingRect(new Rectangle(0, -100, GameCanvas.Width, 100)))
            {
                return(true);
            }
            //snakeX.OnHitWall(Direction.up);

            if (snakeX.IsIntersectingRect(new Rectangle(GameCanvas.Width, 0, 100, GameCanvas.Height)))
            {
                return(true);
            }
            //snakeX.OnHitWall(Direction.right);

            if (snakeX.IsIntersectingRect(new Rectangle(0, GameCanvas.Height, GameCanvas.Width, 100)))
            {
                return(true);
            }
            //snakeX.OnHitWall(Direction.down);
            return(false);
        }
Esempio n. 2
0
        private void CheckForCollisions()
        {
            if (Player1.IsIntersectingRect(new Rectangle(-100, 0, 100, GameCanvas.Height)))
            {
                Player1.OnHitWall(Direction.left);
            }

            if (Player1.IsIntersectingRect(new Rectangle(0, -100, GameCanvas.Width, 100)))
            {
                Player1.OnHitWall(Direction.up);
            }

            if (Player1.IsIntersectingRect(new Rectangle(GameCanvas.Width, 0, 100, GameCanvas.Height)))
            {
                Player1.OnHitWall(Direction.right);
            }

            if (Player1.IsIntersectingRect(new Rectangle(0, GameCanvas.Height, GameCanvas.Width, 100)))
            {
                Player1.OnHitWall(Direction.down);
            }

            //Is hitting food
            List <Rectangle> SnakeRects = Player1.GetRects();

            foreach (Rectangle rect in SnakeRects)
            {
                if (FoodMngr.IsIntersectingRect(rect, true))
                {
                    FoodMngr.AddRandomFood();
                    Player1.AddBodySegments(1);
                    score++;
                    ScoreTxtBox.Text = score.ToString();
                }

                if (FoodMngr.IsIntersectingRectWithRed(rect, true))
                {
                    FoodMngr.AddRandomFoodRed();
                    Player1.AddBodySegments(1);
                    score           += 2;
                    ScoreTxtBox.Text = score.ToString();
                }
            }
        }
Esempio n. 3
0
        private void CheckForCollisions()
        {
            if (Player1.IsSelfIntersecting()) // Check for collisions with itself
            {
                SetGameOver("Hit itself");    // If so, trigger the game-over screen
            }
            if (Player1.IsIntersectingRect(new Rectangle(-100, 0, 100, GameCanvas.Height)))
            {
                SetGameOver("Hit left wall");
            }

            if (Player1.IsIntersectingRect(new Rectangle(0, -100, GameCanvas.Width, 100)))
            {
                SetGameOver("Hit top wall");
            }

            if (Player1.IsIntersectingRect(new Rectangle(GameCanvas.Width, 0, 100, GameCanvas.Height)))
            {
                SetGameOver("Hit right wall");
            }

            if (Player1.IsIntersectingRect(new Rectangle(0, GameCanvas.Height, GameCanvas.Width, 100)))
            {
                SetGameOver("Hit bottom wall");
            }

            // Is hitting food
            var snakeRects = Player1.GetRects();

            foreach (var rect in snakeRects)
            {
                if (FoodMngr.IsIntersectingRect(rect, true))
                {
                    FoodMngr.AddRandomFood();
                    Player1.AddBodySegments(1);
                    Player1.AddScore();
                    score++;
                    ScoreTxtBox.Text = score.ToString();
                }
            }
        }
Esempio n. 4
0
        private void CheckForCollisions()
        {
            if (player.IsIntersectingRect(new Rectangle(-100, 0, 100, GameCanvas.Height)))
            {
                player.OnHitWall(Direction.Left);
            }

            if (player.IsIntersectingRect(new Rectangle(0, -100, GameCanvas.Width, 100)))
            {
                player.OnHitWall(Direction.Up);
            }

            if (player.IsIntersectingRect(new Rectangle(GameCanvas.Width, 0, 100, GameCanvas.Height)))
            {
                player.OnHitWall(Direction.Right);
            }

            if (player.IsIntersectingRect(new Rectangle(0, GameCanvas.Height, GameCanvas.Width, 100)))
            {
                player.OnHitWall(Direction.Down);
            }

            //Is hitting food
            List <Rectangle> SnakeRects = player.GetRects();

            foreach (Rectangle rect in SnakeRects)
            {
                if (foodManager.IsIntersectingRect(rect, true))
                {
                    foodManager.AddRandomFood();
                    player.AddBodySegments(1);
                    score           += GetScore();
                    ScoreTxtBox.Text = score.ToString();
                }
            }
        }