Menu
CoddyTech
flag Ar iconالعربيةdown icon

شبكة من الخلايا

الدرس 19 من 40 في دورة اصنع ألعابًا باستخدام Pygame على Coddy.

تتحرك الأفعى على شبكة. تتكون النافذة من 24 عمودًا و18 صفًا من الخلايا، طول ضلع كل منها 20 بكسلًا، وتتحرك الأفعى خلية كاملة في كل مرة.

اعمل باستخدام الخلايا، وحوّلها إلى بكسلات للرسم فقط. تبدأ الخلية (col, row) عند البكسل (col * 20, row * 20). إن رسم كل خلية أصغر بمقدار 2 بكسل، مع إزاحتها بمقدار 1 بكسل إلى الداخل من كل جانب، يترك فجوة رفيعة بين الخلايا المتجاورة، لتتمكن من رؤية أجزاء الأفعى.

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

تدرّب بنفسك: Playground لـ Pygame