Menu
CoddyTech
flag He iconעבריתdown icon

רשת של תאים

שיעור 19 מתוך 40 בקורס יוצרים משחקים עם Pygame של Coddy.

הנחש נע על גבי רשת. החלון מורכב מ־24 עמודות ו־18 שורות של תאים, שכל אחד מהם בגודל 20 פיקסלים רבועים, והנחש נע בכל פעם תא שלם אחד.

עובדים עם תאים והופכים אותם לפיקסלים רק לצורך ציור. התא (col, row) מתחיל בפיקסל (col * 20, row * 20). ציור של כל תא בגודל קטן ב־2 פיקסלים, במרחק של פיקסל אחד מכל צד, משאיר רווח דק בין התאים השכנים ומאפשר לראות את מקטעי הנחש.

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 מפרק את הטפל לשני משתנים. כדאי לשמור את המספרים בקבועים כמו CELL, COLS ו־ROWS: הקוד מסביר מה המשמעות שלהם, ושינוי של אחד מהם משנה את המשחק כולו.

challenge icon

אתגר

קל
  1. מעל ללולאה, כתוב draw_cell(cell, color), שמצייר תא במרחק של פיקסל אחד מכל צד, כמו למעלה.
  2. הגדר head = (5, 9).
  3. אחרי המילוי, צייר את הראש באמצעות draw_cell(head, (180, 255, 160)).

נסו בעצמכם

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()
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יוצרים משחקים עם Pygame

תרגלו בעצמכם: Pygame אונליין