Menu
CoddyTech

Düşen Bir Blok

Coddy'nin Pygame ile Oyun Yap kursunda ders 10 / 40.

Düşen bir şey, y değeri her karede artan bir şeydir. Bloğu da bir Rect yapın ve döngünün her yinelemesinde y değerini artırın:

block = pygame.Rect(220, 0, 20, 20)

while running:
    # olaylar ve tuşlar
    block.y += 3
    # doldur, çiz

Saniyede 60 kare hızında, kare başına 3 piksel saniyede 180 pikseldir. Pencerenin yüksekliği 360 pikseldir, bu nedenle bloğun en alta ulaşması iki saniye sürer.

Blok pencereden çıktıktan sonra da düşmeye devam eder. Henüz onu durduran hiçbir şey yok; sonraki derste blok geri getirilir.

challenge icon

Görev

Kolay
  1. Sepetin altına block = pygame.Rect(220, 0, 20, 20) ekle.
  2. Döngüde, sepet hareket ettikten sonra block.y değerine 3 ekle.
  3. Bloğu, sepetten sonra kırmızı renkte (235, 80, 80) çiz.

Kendin dene

import pygame

pygame.init()
screen = pygame.display.set_mode((480, 360))
pygame.display.set_caption("Catch the Blocks")
clock = pygame.time.Clock()

basket = pygame.Rect(200, 330, 80, 16)

running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    keys = pygame.key.get_pressed()
    if keys[pygame.K_LEFT]:
        basket.x -= 8
    if keys[pygame.K_RIGHT]:
        basket.x += 8
    basket.clamp_ip(screen.get_rect())

    screen.fill((30, 30, 46))
    pygame.draw.rect(screen, (80, 160, 255), basket)
    pygame.display.flip()
    clock.tick(60)

pygame.quit()
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Pygame ile Oyun Yap bölümündeki tüm dersler

Kendi başına pratik yap: Pygame playground