עקבו אחר המצביע
חלק מהיחידה לולאת המשחק במסלול ה-Pygame של Coddy. שיעור 13 מתוך 32.
בפרק הזה בונים את Gem Hunt, משחק שמשחקים בו עם העכבר. היהלום התכלת הוא אבן החן: מצולע שארבע הפינות שלו מחושבות לפי gx ו-gy.
pygame.mouse.get_pos() מחזירה את מיקום המצביע בחלון בתור (x, y), שנמדד מהפינה השמאלית העליונה כמו כל דבר אחר. קראו את המיקום בלולאה, וכך הוא יהיה מעודכן בכל פריים:
mouse_x, mouse_y = pygame.mouse.get_pos()
pygame.draw.circle(screen, (240, 240, 240), (mouse_x, mouse_y), 10, 2)השורה הראשונה מפרקת את הטפל לשני משתנים. השורה השנייה מציירת שם טבעת, כדי שהשחקן יראה על מה הוא מצביע. ציירו אותה אחרונה, אחרי אבן החן, אחרת אבן החן תכסה אותה.
קראו את המיקום פעם אחת, לפני הלולאה, והטבעת תישאר במקום שבו המצביע היה כשהמשחק התחיל.
אתגר
קל- בלולאה, לאחר ציור היהלום, קרא את מיקום המצביע באמצעות
pygame.mouse.get_pos(). - צייר שם טבעת לבנה
(240, 240, 240): עיגול ברדיוס10ובעובי2.
נסו בעצמכם
import pygame
pygame.init()
screen = pygame.display.set_mode((480, 360))
pygame.display.set_caption("Gem Hunt")
clock = pygame.time.Clock()
gx, gy = 225, 165
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
screen.fill((30, 30, 46))
gem_points = [(gx + 15, gy), (gx + 30, gy + 15), (gx + 15, gy + 30), (gx, gy + 15)]
pygame.draw.polygon(screen, (80, 220, 255), gem_points)
pygame.display.flip()
clock.tick(60)
pygame.quit()
כל השיעורים ביחידה לולאת המשחק
תרגלו בעצמכם: Pygame אונליין