Menu
CoddyTech
flag He iconעבריתdown icon

מקשי החצים

שיעור 5 מתוך 40 בקורס יוצרים משחקים עם Pygame של Coddy.

כדי להזיז את הריבוע, שמרו את המיקום שלו במשתנים וציירו אותו שם בכל פריים. שנו את המשתנים, ובפריים הבא הריבוע יופיע במקום אחר.

pygame.key.get_pressed() אומרת לכם על אילו מקשים לוחצים כרגע. השתמשו במפתח עם קבוע מקש, כגון pygame.K_RIGHT: התוצאה היא True כל עוד לוחצים על המקש הזה.

x = 100

while running:
    # אירועים
    keys = pygame.key.get_pressed()
    if keys[pygame.K_RIGHT]:
        x += 4
    # מלא, ואז צייר במיקום x

החזיקו את מקש החץ ימינה והריבוע יזוז 4 פיקסלים בכל פריים, כלומר 240 פיקסלים בשנייה בקצב של 60 פריימים בשנייה. מקשי החצים הם K_LEFT, K_RIGHT, K_UP ו-K_DOWN. למעלה פירושו ערך y קטן יותר.

צרו את המשתנים לפני הלולאה. משתנה שמוגדר בתוך הלולאה מתחיל מחדש בכל פריים.

challenge icon

אתגר

קל

הזיזו את הריבוע באמצעות מקשי החצים:

  1. לפני הלולאה, הגדירו x, y = 220, 160 ואת speed = 4.
  2. בתוך הלולאה, אחרי האירועים, קראו את המקשים באמצעות pygame.key.get_pressed(). כל מקש חץ שמוחזק לחוץ משנה את x או את y בערך של speed.
  3. ציירו את הריבוע במיקום (x, y, 40, 40).

נסו בעצמכם

import pygame

pygame.init()
screen = pygame.display.set_mode((480, 360))
pygame.display.set_caption("Move the Square")
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.draw.rect(screen, (255, 196, 0), (220, 160, 40, 40))
    pygame.display.flip()
    clock.tick(60)

pygame.quit()
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יוצרים משחקים עם Pygame

תרגלו בעצמכם: Pygame אונליין