Sekme
Coddy'nin Pygame Journey'sinin Projeler bölümünün bir parçası. Ders 12 / 31.
Bir top üst ve alt kenarlardan seker. Bu kenarlardan birine dokunduğu anda vy işaretini değiştir: aynı miktarda aşağı hareket ederken yukarı hareket etmeye başlar.
if ball.top <= 0 or ball.bottom >= 400:
vy = -vy<= ve >= ile test et, == ile değil. Top kare başına 4 piksel hareket eder; dolayısıyla alt kenarı 395, 399, 403 olur ve hiçbir zaman tam olarak 400 olmaz.
Sol ve sağ kenarlar puan kazanılan yerlerdir, bu yüzden top oralardan sekmez. Şimdilik dışarı uçar.
Görev
KolayTopu hareket ettirdikten sonra, topun üst kenarı 0 veya daha az olduğunda ya da alt kenarı 400 veya daha fazla olduğunda vy değerini tersine çevir.
Kendin dene
import pygame
pygame.init()
screen = pygame.display.set_mode((600, 400))
pygame.display.set_caption("Pong")
clock = pygame.time.Clock()
ball = pygame.Rect(293, 193, 14, 14)
vx, vy = 5, 4
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
ball.x += vx
ball.y += vy
screen.fill((30, 30, 46))
pygame.draw.rect(screen, (255, 196, 0), ball)
pygame.display.flip()
clock.tick(60)
pygame.quit()
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Projeler bölümündeki tüm dersler
Kendi başına pratik yap: Pygame playground