Passo dopo passo
Lezione 20 di 40 del corso Crea giochi con Pygame di Coddy.
Il serpente si muove sempre. Mantieni la direzione in cui sta andando: di quante celle aumentare la colonna e la riga a ogni passo.
(1, 0)è a destra,(-1, 0)è a sinistra.(0, 1)è in basso,(0, -1)è in alto.
direction = (1, 0)
while running:
# eventi
head = (head[0] + direction[0], head[1] + direction[1])Una tupla non può essere modificata, quindi a ogni passo ne viene creata una nuova. L'orologio funziona a clock.tick(10): dieci fotogrammi al secondo, quindi il serpente si muove di dieci celle al secondo.
Sfida
Facile- Prima del ciclo, imposta
direction = (1, 0). - Nel ciclo, dopo gli eventi, sposta la testa di un passo nella
direction.
Per ora, il serpente esce dalla finestra. I muri arriveranno più avanti.
Provalo tu
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()
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Crea giochi con Pygame
3Griglie ed elenchi
Una griglia di cellePasso dopo passoEsercitati da solo: Playground Pygame