Juego de serpientes en el uso del módulo Python

Estoy seguro de que este ensayo te será útil si eres fanático del juego de las serpientes.. Te guiaré a través de los pasos para crear un juego simple en esta publicación que incluso los novatos de Python encontrarán fácil de crear.. La biblioteca PyGame en Python, que es un paquete de Python que usamos para desarrollar juegos, es uno de los varios enfoques para diseñar el juego.

Hacer uso de la tortuga de la biblioteca es una estrategia adicional. Los usuarios pueden generar gráficos y dibujar formularios en un lienzo en línea gracias a este módulo, que ya está instalado con Python. Entonces, en este tutorial, usaremos la biblioteca de tortugas para construir nuestra serpiente fundamental

Juego de serpientes en Python

  • módulo de tiempo. Esta técnica nos permite rastrear la cantidad de segundos que han pasado desde la última vez.
  • el juego de la serpiente Módulo aleatorio – Crea números aleatorios en Python.

Otras herramientas que necesitará incluyen un editor de texto que prefiera. Usaré VSCode en esta publicación. Por supuesto, necesitará para configurar Python 3 en su dispositivo si aún no lo tiene instalado. También puede descargar para instalar Geekflare Compiler. Esto podría ser una gran experiencia agradable!

Contenido

¿Cómo funciona el juego de la serpiente?

Los jugadores deben manipular a la serpiente para adquirir la comida que se muestra en la pantalla para lograr la mejor puntuación posible en este juego.. El jugador dirige a la serpiente presionando una de las cuatro teclas direccionales que apuntan en la dirección en que se mueve la serpiente..

La serpiente se eliminará del juego si golpea a un jugador o a un objeto.. Los procedimientos que usaremos para jugar este juego en el futuro.

  • Importando a nuestras aplicaciones los módulos que vienen preinstalados (tiempo de tortuga, tortuga, así como al azar).
  • La visualización de la pantalla del juego se crea con el módulo Turtle.
  • Configure las teclas para controlar la dirección de movimiento de la serpiente alrededor de la pantalla.
  • La implementación del juego..

Cree el archivo snakegame.py al que agregaremos un programa de implementación.

Importación de los módulos

Esta sección del programa carga el tiempo de instalación de Python, tortuga, y módulos aleatorios. Adicionalmente, números predeterminados para la puntuación inicial del jugador, la puntuación máxima que pueden alcanzar, y se definirá la cantidad de tiempo que el jugador demora entre cada movimiento. Para determinar cuánto tiempo se ha retrasado, se necesita el modulo de tiempo.

import turtle
import random
import time

player_score = 0
highest_score = 0
delay_time = 0.1

Haciendo la pantalla del juego

El módulo tortuga que instalamos nos permite crear una pantalla virtual que servirá como pantalla de la ventana del juego. Entonces podemos construir el cuerpo de la serpiente., así como los alimentos que comerá la serpiente.. La pantalla también mostrará la puntuación del rastreador del jugador..

# window screen created
wind = turtle.Screen()
wind.title("Snake Maze")
wind.bgcolor("red")

# The screen size
wind.setup(width=600, height=600)


# creating the snake 
snake = turtle.Turtle()
snake.shape("square")
snake.color("black")
snake.penup()
snake.goto(0, 0)
snake.direction = "Stop"

# creating the food
snake_food = turtle.Turtle()
shapes = random.choice('triangle','circle')
snake_food.shape(shapes)
snake_food.color("blue")
snake_food.speed(0)
snake_food.penup()
snake_food.goto(0, 100)

pen = turtle.Turtle()
pen.speed(0)
pen.shape('square')
pen.color('white')
pen.penup()
pen.hideturtle()
pen.goto(0, 250)
pen.write("Your_score: 0 Highest_Score : 0", align="center", 
font=("Arial", 24, "normal"))
turtle.mainloop()

El código en el extracto mencionado establece primero la pantalla de la tortuga antes de agregar un título inicial y un color de fondo.. Primero elegimos el tamaño antes de dibujar la forma de la serpiente en nuestro lienzo digital. Para evitar que se hagan líneas mientras la tortuga se mueve, el método penup recoge la pluma de la tortuga.

Con el uso de su técnica goto, la tortuga puede ser dirigida a una posición exacta usando coordenadas. La comida que come la serpiente la hacemos nosotros.

Cada vez que la serpiente recoge comida, queremos mostrar la puntuación de cada jugador. También queremos mostrar la puntuación más alta que recibe una persona durante el juego.. Por esta razón, usamos bolígrafos. como la pluma, escribir. Describa un método para completar.

La creación de claves de direcciones para la serpiente.

En este caso, programamos ciertas teclas para controlar el movimiento de la serpiente a través de la pantalla. Usaremos la letra “L” como la tecla izquierda, “R” para la izquierda, “U” para arriba, y “D” para abajo. Estas instrucciones se pondrán en práctica llamando a la serpiente usando la función de dirección de la tortuga..

Incluya los siguientes ejemplos de código en su.

# Assigning directions
def moveleft():
    if snake.direction != "right":
        snake.direction = "left"

def moveright():
    if snake.direction != "left":
        snake.direction = "right"

def moveup():
    if snake.direction != "down":
        snake.direction = "up"

def movedown():
    if snake.direction != "up":
        snake.direction = "down"

def move():
    if snake.direction == "up":
        coord_y = snake.ycor()
        snake.sety(coord_y+20)

    if snake.direction == "down":
        coord_y = snake.ycor()
        snake.sety(coord_y-20)

    if snake.direction == "right":
        coord_x = snake.xcor()
        snake.setx(coord_x+20)

    if snake.direction == "left":
        coord_x = snake.xcor()
        snake.setx(coord_x-20)

wind.listen()
wind.onkeypress(moveleft, 'L')
wind.onkeypress(moveright, 'R')
wind.onkeypress(moveup, 'U')
wind.onkeypress(movedown, 'D')

Mover() La función mencionada anteriormente permite el movimiento de la serpiente en la posición que se especifica dentro de una coordenada específica.. Escuchar() funciona como un detector de eventos que llama a los métodos que dirigen la serpiente en una dirección determinada una vez que el usuario presiona el botón.

La implementación de la jugabilidad del juego en forma de serpiente.

El juego deberá convertirse en una acción en vivo después de que se haya establecido la estructura fundamental.. Esto es lo que incluirá:

  • extendiendo la longitud de la serpiente en un color diferente cada vez que consume comida.
  • cada vez que la serpiente consume comida, la puntuación del jugador aumenta, y luego se rastrea la puntuación más alta.
  • La serpiente puede sujetarse para protegerla de golpes contra la pared o incluso contra su propio cuerpo..
  • Después de golpear a la serpiente, el juego continúa.
  • Sin embargo, en la pantalla, es la puntuación más alta del jugador a pesar de que la puntuación del jugador se restablece a cero cuando se reinicia el juego.
segments = []

#Implementing the gameplay
while True:
    wind.update()
    if snake.xcor() > 290 or snake.xcor() < -290 or snake.ycor() > 290 or snake.ycor() < -290:
        time.sleep(1)
        snake.goto(0, 0)
        snake.direction = "Stop"
        snake.shape("square")
        snake.color("green")

        for segment in segments:
            segment.goto(1000, 1000)
            segments.clear()
            player_score = 0
            delay_time = 0.1
            pen.clear()
            pen.write("Player's_score: {} Highest_score: {}".format(player_score, highest_score), align="center", font=("Arial", 24, "normal"))

        if snake.distance(snake_food) < 20:
            coord_x = random.randint(-270, 270)
            coord_y = random.randint(-270, 270)
            snake_food.goto(coord_x, coord_y)

            # Adding segment
            added_segment = turtle.Turtle()
            added_segment.speed(0)
            added_segment.shape("square")
            added_segment.color("white")
            added_segment.penup()
            segments.append(added_segment)
            delay_time -= 0.001
            player_score += 5

            if player_score > highest_score:
                highest_score = player_score
                pen.clear()
                pen.write("Player's_score: {} Highest_score: {}".format(player_score, highest_score), align="center", font=("Arial", 24, "normal"))

    # checking for collisions
    for i in range(len(segments)-1, 0, -1):
        coord_x = segments[i-1].xcor()
        coord_y = segments[i-1].ycor()
        segments[i].goto(coord_x, coord_y)

    if len(segments) > 0:
        coord_x = snake.xcor()
        coord_y = snake.ycor()
        segments[0].goto(coord_x, coord_y)
    move()

    for segment in segments:
        if segment.distance(snake) < 20:
            time.sleep(1)
            snake.goto(0, 0)
            snake.direction = "stop"
            snake.color('white')
            snake.shape('square')

            for segment in segments:
                segment.goto(1000, 1000)
                segment.clear()
                player_score = 0
                delay_time = 0.1
                pen.clear()
                pen.write("Player's_score: {} Highest_score: {}".format(player_score, highest_score), align="center", font=("Arial", 24, "normal"))

     time.sleep(delay_time)

turtle.mainloop()

En el fragmento de código anterior que hemos usado, hemos asignado un lugar aleatorio para la comida de la serpiente en la pantalla. Cada vez que la serpiente come la nutrición, el cuerpo crece en un color diferente, blanco en este caso, para dejar claro que su crecimiento es distinto.

Cuando la serpiente ha recogido la comida y no choca, la comida se muestra en una ubicación aleatoria dentro del área de coordenadas de 270 grados del tamaño de la pantalla. Cada vez que la serpiente toma comida, la puntuación del jugador aumenta en 5. Si la serpiente está involucrada en una colisión con el jugador, su puntaje se restablece a 0 y la pantalla mantiene su puntuación más alta.

Conclusión

La biblioteca de tortugas es una forma divertida y sencilla de hacer el juego de serpientes que hemos visto en este tutorial.. También puede usar la biblioteca PyGame en Python para implementar el mismo juego. Descubra cómo puede utilizar el juego de manera diferente leyendo estos PyGame instrucciones.

Descargar Snake Rivals Fun Juego de serpientes

Juego de carreras 3D Snake Run Race

Descargar Snake.io - Juegos divertidos de Snake .io