바구니
Coddy의 Pygame으로 게임 만들기 코스 레슨. 40개 중 9번째.
새로운 게임입니다. 블록이 위에서 떨어지고 여러분은 바구니로 블록을 받습니다. 바구니와 블록은 직사각형이며, pygame에는 이를 위한 클래스인 pygame.Rect가 있습니다.
basket = pygame.Rect(200, 330, 80, 16)Rect는 이전과 같은 순서인 x, y, width, height로 위치와 크기를 함께 저장합니다. basket.x와 basket.y를 읽고 변경할 수 있으며, 가장자리인 basket.left, basket.right, basket.top, basket.bottom과 가운데 위치인 basket.centerx도 알고 있습니다.
Rect를 pygame.draw.rect(screen, color, basket)에 그대로 전달하세요. 또한 다른 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으로 게임 만들기의 모든 레슨
직접 연습해 보세요: Pygame 플레이그라운드