Menu
CoddyTech

مضربان

جزء من قسم المشاريع في رحلة Pygame على Coddy. الدرس 13 من 31.

يتشارك لاعبان لوحة مفاتيح واحدة. يستخدم اللاعب الموجود على اليسار المفتاحين W وS، بينما يستخدم اللاعب الموجود على اليمين سهمي الأعلى والأسفل. كل مضرب هو مستطيل يتحرك إلى الأعلى والأسفل فقط.

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()

جميع دروس المشاريع

تدرّب بنفسك: Playground لـ Pygame