Menu
CoddyTech

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.

challenge icon

Görev

Kolay
  1. 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.
  2. head = (5, 9) olarak ayarla.
  3. 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