바구니
Coddy Pygame 여정의 게임 루프 섹션에 포함된 레슨. 32개 중 23번째.
새로운 게임입니다. 블록이 위에서 떨어지고, 여러분은 바구니로 블록을 받습니다. 바구니와 블록은 직사각형이므로 pygame.Rect입니다. Gem Hunt의 보석과 상자도 마찬가지입니다.
basket = pygame.Rect(200, 330, 80, 16)basket.x와 basket.y뿐만 아니라, Rect는 모서리 위치인 basket.left, basket.right, basket.top, basket.bottom과 가운데 위치인 basket.centerx도 알고 있습니다.
Rect를 그대로 pygame.draw.rect(screen, color, basket)에 전달하세요. 또한 Rect는 다른 Rect 안에 자신을 유지할 수 있습니다. basket.clamp_ip(screen.get_rect())는 바구니가 창의 가장자리를 벗어나면 창 안으로 다시 이동시킵니다. screen.get_rect()는 창 자체의 Rect입니다.
챌린지
쉬움- 반복문 전에
basket = pygame.Rect(200, 330, 80, 16)을 만드세요. - 반복문에서 화면을 채우기 전에 왼쪽 또는 오른쪽 키를 누르고 있는 동안 프레임마다 8픽셀씩 움직인 다음,
basket.clamp_ip(screen.get_rect())으로 창 안에 유지하세요. - 화면을 채운 다음 파란색
(80, 160, 255)으로 그리세요.
직접 해보기
import pygame
pygame.init()
screen = pygame.display.set_mode((480, 360))
pygame.display.set_caption("Catch the Blocks")
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(60)
pygame.quit()
게임 루프의 모든 레슨
직접 연습해 보세요: Pygame 플레이그라운드