ריצה מהירה
חלק מהיחידה לולאת המשחק במסלול ה-Pygame של Coddy. שיעור 6 מתוך 32.
משתנה יכול להשתנות בכל פריים, בהתאם למה שהשחקן עושה. כאן המהירות תלויה בשאלה אם מקש הרווח לחוץ.
keys = pygame.key.get_pressed()
speed = 4
if keys[pygame.K_SPACE]:
speed = 8כל פריים מתחיל במהירות הרגילה, 4. רק פריים שבו מקש הרווח לחוץ מעלה אותה ל־8. משחררים את מקש הרווח, ובפריים הבא המהירות חוזרת ל־4.
קובעים קודם את הערך הרגיל ואחריו את הערך המיוחד. בסדר ההפוך, השורה השנייה תמיד קובעת, ולחיצה על מקש הרווח לא עושה דבר.
אתגר
קלאפשר לשחקן לנוע בריצה מהירה:
- הסר את
speed = 4מהמקום שלפני הלולאה. - בתוך הלולאה, מיד אחרי
keys = pygame.key.get_pressed(), הגדרspeed = 4, ואז הגדר אותו ל־8אם מקש הרווח לחוץ.
נסו בעצמכם
import pygame
pygame.init()
screen = pygame.display.set_mode((480, 360))
pygame.display.set_caption("Move the Square")
clock = pygame.time.Clock()
x, y = 220, 160
speed = 4
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT]:
x -= speed
if keys[pygame.K_RIGHT]:
x += speed
if keys[pygame.K_UP]:
y -= speed
if keys[pygame.K_DOWN]:
y += speed
screen.fill((30, 30, 46))
pygame.draw.rect(screen, (255, 196, 0), (x, y, 40, 40))
pygame.display.flip()
clock.tick(60)
pygame.quit()
כל השיעורים ביחידה לולאת המשחק
תרגלו בעצמכם: Pygame אונליין