Menu
CoddyTech

Schritt für Schritt

Lektion 20 von 40 im Kurs Spiele mit Pygame erstellen von Coddy.

Die Schlange bewegt sich ständig. Halte die Richtung, in die sie sich bewegt, in einer Richtung fest: wie viele Zellen in jedem Schritt zur Spalte und zur Zeile hinzugefügt werden sollen.

  • (1, 0) ist rechts, (-1, 0) ist links.
  • (0, 1) ist unten, (0, -1) ist oben.
direction = (1, 0)

while running:
    # Ereignisse
    head = (head[0] + direction[0], head[1] + direction[1])

Ein Tupel kann nicht geändert werden, daher wird bei jedem Schritt ein neues erstellt. Die Uhr läuft mit clock.tick(10): zehn Bilder pro Sekunde, also bewegt sich die Schlange zehn Zellen pro Sekunde.

challenge icon

Aufgabe

Einfach
  1. Setze vor der Schleife direction = (1, 0).
  2. Bewege im Schleifendurchlauf nach den Ereignissen den Kopf einen Schritt in direction.

Die Schlange verlässt vorerst das Fenster. Wände kommen später.

Probier es selbst

import pygame

CELL = 20
COLS, ROWS = 24, 18

pygame.init()
screen = pygame.display.set_mode((COLS * CELL, ROWS * CELL))
pygame.display.set_caption("Snake")
clock = pygame.time.Clock()


def draw_cell(cell, color):
    col, row = cell
    pygame.draw.rect(screen, color, (col * CELL + 1, row * CELL + 1, CELL - 2, CELL - 2))


head = (5, 9)

running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False


    screen.fill((30, 30, 46))
    draw_cell(head, (180, 255, 160))
    pygame.display.flip()
    clock.tick(10)

pygame.quit()
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Spiele mit Pygame erstellen

Übe selbstständig: Pygame-Playground