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

שתי מחבטות

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

שני שחקנים חולקים מקלדת אחת. השחקן שמשמאל משתמש במקשים W ו-S, והשחקן שמימין משתמש בחצים למעלה ולמטה. כל מחבט הוא Rect שנע רק למעלה ולמטה.

left = pygame.Rect(20, 160, 12, 80)
right = pygame.Rect(568, 160, 12, 80)

מקשי האותיות הם pygame.K_w, pygame.K_s וכן הלאה, באותיות קטנות. קוראים את כל ארבעת המקשים באמצעות pygame.key.get_pressed() אחד, כדי ששני השחקנים יוכלו להחזיק מקשים לחוצים בו-זמנית.

השאר את שני המחבטים בתוך החלון באמצעות clamp_ip, כפי שעשית עם הסל.

challenge icon

אתגר

קל
  1. לפני הלולאה, צור את left = pygame.Rect(20, 160, 12, 80) ואת right = pygame.Rect(568, 160, 12, 80).
  2. הזז את left 6 פיקסלים למעלה או למטה באמצעות W ו־S, ואת right באמצעות החצים למעלה ולמטה. השאר את שניהם בתוך החלון.
  3. צייר את left בכחול (80, 160, 255) ואת right באדום (235, 80, 80).

נסו בעצמכם

import pygame

pygame.init()
screen = pygame.display.set_mode((600, 400))
pygame.display.set_caption("Pong")
clock = pygame.time.Clock()

ball = pygame.Rect(293, 193, 14, 14)
vx, vy = 5, 4

running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    ball.x += vx
    ball.y += vy
    if ball.top <= 0 or ball.bottom >= 400:
        vy = -vy

    screen.fill((30, 30, 46))
    pygame.draw.rect(screen, (255, 196, 0), ball)
    pygame.display.flip()
    clock.tick(60)

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

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

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

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