Langkah demi Langkah
Pelajaran 20 dari 40 dalam kursus Buat Game dengan Pygame di Coddy.
Ular selalu bergerak. Pertahankan arah geraknya dengan arah: berapa banyak sel yang ditambahkan ke kolom dan ke baris pada setiap langkah.
(1, 0)berarti ke kanan,(-1, 0)berarti ke kiri.(0, 1)berarti ke bawah,(0, -1)berarti ke atas.
direction = (1, 0)
while running:
# kejadian
head = (head[0] + direction[0], head[1] + direction[1])Tuple tidak dapat diubah, jadi setiap langkah membuat tuple baru. Jam berjalan pada clock.tick(10): sepuluh frame per detik, jadi ular bergerak sepuluh sel per detik.
Tantangan
Mudah- Sebelum perulangan, atur
direction = (1, 0). - Di dalam perulangan, setelah menangani event, gerakkan kepala satu langkah ke arah
direction.
Untuk saat ini, ular keluar dari jendela. Dinding akan ditambahkan nanti.
Coba sendiri
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()
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Buat Game dengan Pygame
3Grid dan List
Grid SelLangkah demi LangkahLatihan sendiri: Playground Pygame