Menu
CoddyTech

שתי מחבטות

חלק מהיחידה פרויקטים במסלול ה-Pygame של Coddy. שיעור 13 מתוך 31.

שני שחקנים חולקים מקלדת אחת. השחקן השמאלי משתמש ב-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()

כל השיעורים ביחידה פרויקטים

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