Eklemek için Tıkla
Coddy'nin Pygame Journey'sinin Oyun Penceresinde Python bölümünün bir parçası. Ders 25 / 32.
Oyun çalışırken bir liste büyüyebilir. stars.append(item), listenin sonuna bir öğe ekler.
Bir fare tıklaması, olay döngüsüne MOUSEBUTTONDOWN olayı olarak gelir ve event.pos, tıklamanın gerçekleştiği yeri gösteren bir (x, y) ikilisidir:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
if event.type == pygame.MOUSEBUTTONDOWN:
stars.append(event.pos)Her tıklama bir konum ekler. Çizim bölümü listedeki tüm yıldızları zaten çizdiğinden, yeni yıldız sonraki karede görünür ve liste onu tuttuğu için orada kalır.
Kurulum bölümünde liste boş olarak başlar: stars = []. Oyun döngüsünün içinde oluşturulsaydı, her karede boşaltılır ve her yıldız hemen kaybolurdu.
Görev
KolayOlay döngüsünde, bir MOUSEBUTTONDOWN olayı geldiğinde event.pos değerini stars listesine ekleyin. Böylece her tıklama beyaz bir yıldız yerleştirir.
Kendin dene
import pygame
pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Night Sky")
clock = pygame.time.Clock()
# Oyun döngüsünden önce burada gerekli ayarları yapın.
stars = []
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# Her karede bir kez burada değişiklik yapın.
screen.fill((20, 24, 48))
# fill işleminden sonra burada çizim yapın.
for star in stars:
pygame.draw.circle(screen, (255, 255, 255), star, 5)
pygame.display.flip()
clock.tick(60)
pygame.quit()
Oyun Penceresinde Python bölümündeki tüm dersler
6Şeylerin Listeleri
Yıldızların ListesiEklemek için Tıklalen ile SayBir Yıldızı KaldırRastgele SayılarKendi başına pratik yap: Pygame playground