Hücre Izgarası
Coddy'nin Pygame Journey'sinin Projeler bölümünün bir parçası. Ders 1 / 31.
Yılan bir ızgarada hareket eder. Pencere 24 sütun ve 18 satır hücreden oluşur; her hücre 20 piksel kare boyutundadır ve yılan her seferinde bir tam hücre ilerler.
Hücrelerle çalış ve yalnızca çizim yapmak için onları piksellere dönüştür. (col, row) hücresi (col * 20, row * 20) pikselinde başlar. Her hücreyi 2 piksel daha küçük çizip her kenardan 1 piksel içeri almak, komşular arasında ince bir boşluk bırakır ve böylece yılanın bölümlerini görebilirsin.
def draw_cell(cell, color):
col, row = cell
pygame.draw.rect(screen, color, (col * CELL + 1, row * CELL + 1, CELL - 2, CELL - 2))col, row = cell, demeti iki değişkene açar. Sayıları CELL, COLS ve ROWS gibi sabitlerde tut: kod bunların ne anlama geldiğini belirtir ve bunlardan birini değiştirmek tüm oyunu değiştirir.
Görev
Kolay- Döngünün üstüne, yukarıdaki gibi her kenardan 1 piksel içeride tek bir hücre çizen
draw_cell(cell, color)fonksiyonunu yaz. head = (5, 9)olarak ayarla.- Arka planı doldurduktan sonra, başı
draw_cell(head, (180, 255, 160))ile çiz.
Kendin dene
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()
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
screen.fill((30, 30, 46))
pygame.display.flip()
clock.tick(10)
pygame.quit()
Projeler bölümündeki tüm dersler
Kendi başına pratik yap: Pygame playground