Rumah > pembangunan bahagian belakang > Tutorial Python > Mengapa Bola Pong Saya Bergoyang Daripada Melantun Dari Dayung?

Mengapa Bola Pong Saya Bergoyang Daripada Melantun Dari Dayung?

Patricia Arquette
Lepaskan: 2024-11-09 03:42:01
asal
426 orang telah melayarinya

Why Does My Pong Ball Wobble Instead of Bouncing Off the Paddle?

Bola Gagal Melantun Dayung dalam Permainan Pong

Dalam permainan Pong klasik, pemain mengawal dayung untuk menepis bola ke depan dan belakang merentasi skrin. Walau bagaimanapun, sesetengah pengguna menghadapi masalah di mana bola kadangkala gagal melantun dari dayung, sebaliknya bergoyang dan menggelongsor di sepanjang permukaannya.

Punca:

Masalah ini timbul apabila bola berlanggar dengan bahagian atas atau tepi bawah dayung. Mengesan perlanggaran ini dan menterbalikkan arah bola adalah betul. Walau bagaimanapun, ada kalanya, bola menembusi dayung dengan begitu dalam sehingga ia kekal dalam kawasan perlanggaran semasa pergerakan seterusnya. Akibatnya, perlanggaran kedua dikesan, menterbalikkan arah bola sekali lagi, mewujudkan kesan zigzag di sepanjang bahagian hadapan dayung.

Penyelesaian:

  1. Terbalik Arah Bukan Mendarab Kelajuan:

Daripada mendarabkan kelajuan bola dengan -1, yang mengakibatkan keterbalikan arahnya, memberikan kelajuan positif apabila ia mengenai dayung kanan dan kelajuan negatif apabila ia terkena ke kiri dayung akan menghasilkan lantunan yang lebih konsisten.

if ball.colliderect(paddleLeft):
    move_x = abs(move_x)
if ball.colliderect(paddleRight):
    move_x = -abs(move_x)
Salin selepas log masuk
  1. Laraskan Bola Kedudukan:

Sebagai alternatif, melaraskan kedudukan bola selepas perlanggaran boleh memastikan ia kekal dalam sempadan. Apabila dayung kanan dipukul, gerakkan tepi kanan bola ke kiri dayung, dan begitu juga sebaliknya untuk dayung kiri.

if ball.colliderect(paddleLeft):
    move_x *= -1
    ball.left = paddleLeft.right
if ball.colliderect(paddleRight):
    move_x *= -1
    ball.right = paddleRight.left
Salin selepas log masuk

Atas ialah kandungan terperinci Mengapa Bola Pong Saya Bergoyang Daripada Melantun Dari Dayung?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan