הסל
שיעור 9 מתוך 41 בקורס צרו משחקים עם Pygame של Coddy.
משחק חדש: לבנים נופלות מלמעלה ואתם תופסים אותן בסל. הסל והלבנים הם מלבנים, ולכן הם 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 אחר: basket.clamp_ip(screen.get_rect()) מזיזה אותה בחזרה פנימה לתוך החלון כשהיא חורגת מאחד הקצוות. screen.get_rect() הוא Rect של החלון עצמו.
אתגר
קלצרו את הסל עבור Catch the Blocks.
- לפני הלולאה, צרו
basket = pygame.Rect(200, 330, 80, 16). - לפני המילוי, הזיזו אותו 8 פיקסלים בכל פריים כשמחזיקים את Left או את Right, ואז
basket.clamp_ip(screen.get_rect()). - אחרי המילוי, ציירו אותו בכחול
(80, 160, 255).
לחצו על "שחק" והחזיקו את Left או את Right: הסל נעצר בקצוות. ואז לחצו על "בדיקה".
נסו בעצמכם
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 אונליין