public bool IsMoving(Point direction) { Point currentSnakeHead = this.snakeElements.Last(); this.GetNextPoint(direction, currentSnakeHead); bool isPointOfSnake = this.snakeElements .Any(x => x.LeftX == this.nextLeftX && x.TopY == nextTopY); if (isPointOfSnake) { return(false); } Point snakeNewHead = new Point(this.nextLeftX, this.nextTopY); if (wall.IsPointOfWall(snakeNewHead)) { return(false); } this.snakeElements.Enqueue(snakeNewHead); snakeNewHead.Draw(snakeSymbol); if (this.foods[this.foodIndex].IsFoodPoint(snakeNewHead)) { this.Eat(direction, currentSnakeHead); } Point snakeTail = this.snakeElements.Dequeue(); snakeTail.Draw(' '); return(true); }
public bool isMoving(Point direction) { Point currentSnakeHead = snakeElements.Last(); GetNextPoint(direction, currentSnakeHead); bool isPointOfSnake = snakeElements.Any(x => x.LeftX == nextLeftX && x.TopY == nextTopY); if (isPointOfSnake) { return(false); } Point snakeNewHead = new Point(nextLeftX, nextTopY); if (wall.IsPointOfWall(snakeNewHead)) { return(false); } snakeElements.Enqueue(snakeNewHead); snakeNewHead.Draw(snakeSymbol); if (food[foodIndex].IsFoodPoint(snakeNewHead)) { Eat(direction, currentSnakeHead); } Point snakeTail = snakeElements.Dequeue(); snakeTail.Draw(emptySpace); return(true); }
public bool IsMooving(Point direction) { Point currentSnakeHead = snakeElements.Last(); GetNextPoint(direction, currentSnakeHead); bool isPointOfSnake = snakeElements.Any(x => x.LeftX == nextLeftX && x.TopY == nextTopY); if (isPointOfSnake) { return(false); } Point snakeNewHead = new Point(nextLeftX, nextTopY); if (Wall.IsPointOfWall(snakeNewHead)) { return(false); } return(true); }