Menu
CoddyTech

Dua Pemukul

Termasuk bagian Proyek dalam perjalanan Pygame di Coddy. Pelajaran 13 dari 31.

Dua pemain berbagi satu keyboard. Pemain kiri menggunakan W dan S, pemain kanan menggunakan tombol panah Atas dan Bawah. Setiap paddle adalah Rect yang hanya bergerak naik dan turun.

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

Tombol huruf ditulis sebagai pygame.K_w, pygame.K_s, dan seterusnya, dengan huruf kecil. Baca keempat tombol sekaligus menggunakan satu pygame.key.get_pressed(), agar kedua pemain dapat menahan tombol secara bersamaan.

Jaga kedua paddle tetap berada di dalam jendela dengan clamp_ip, seperti yang kamu lakukan pada keranjang.

challenge icon

Tantangan

Mudah
  1. Sebelum perulangan, buat left = pygame.Rect(20, 160, 12, 80) dan right = pygame.Rect(568, 160, 12, 80).
  2. Gerakkan left 6 piksel ke atas atau ke bawah dengan W dan S, lalu gerakkan right dengan tombol panah atas dan bawah. Pastikan keduanya tetap berada di dalam jendela.
  3. Gambar left dengan warna biru (80, 160, 255) dan right dengan warna merah (235, 80, 80).

Coba sendiri

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

Semua pelajaran di Proyek

Latihan sendiri: Playground Pygame