ホームページ >バックエンド開発 >Python チュートリアル >Pygame Python のピンポン ゲーム
import pygame import sys
Pygame は、ゲームの作成に使用しているモジュールです。これにより、グラフィックス、サウンドなどのツールが提供されました。
sys は、Python インタープリターとの対話に役立つ Python のモジュールです。
pygame.init()
すべての Pygame モジュールを初期化し、使用できるようにします。
#dimensions WIDTH, HEIGHT=800,600 #frame rate FPS=60 #the paddles at the side of ping pong PADDLE_WIDTH, PADDLE_HEIGHT=15,90 #the balls radius BALL_RADIUS=15 #the color of the ball and paddle WHITE=(255, 255, 255)
screen=pygame.display.set_mode((WIDTH,HEIGHT)) pygame.display.set_caption("Ping Pong")
WIDTH と HEIGHT が割り当てられた Ping Pong
という名前のウィンドウが作成されます。left_paddle=pygame.Rect(50, HEIGHT//2 - PADDLE_HEIGHT //2, PADDLE_WIDTH, PADDLE_HEIGHT) right_paddle=pygame.Rect(WIDTH - 50 - PADDLE_WIDTH, HEIGHT //2- PADDLE_HEIGHT //2, PADDLE_WIDTH, PADDLE_HEIGHT) ball=pygame.Rect(WIDTH //2 - BALL_RADIUS, HEIGHT //2 - BALL_RADIUS, BALL_RADUIS *2, BALL_RADIUS *2)
Pygame では、画面の左上隅は座標で (0,0) を表します。
pygame.Rect(x, y, width, height)
pygame.Rect(50, HEIGHT//2 - PADDLE_HEIGHT //2, PADDLE_WIDTH, PADDLE_HEIGHT)
まず、左側のパドルを左側から 50 ピクセル右に向かって配置します。
次に、HEIGHT//2 - PADDLE_HEIGHT //2 を実行します。なぜなら、HEIGHT//2 を実行しただけだと、画像のように見えるからです。画面の下に落ちていきます。それを中央に配置するには、次のようにします - PADDLE_HEIGHT //2
これは、右側のパドルを中央に配置するために行ったことです。
right_paddle=pygame.Rect(WIDTH - 50 - PADDLE_WIDTH, HEIGHT //2- PADDLE_HEIGHT //2, PADDLE_WIDTH, PADDLE_HEIGHT)
ball=pygame.Rect(WIDTH //2 - BALL_RADIUS, HEIGHT //2 - BALL_RADIUS, BALL_RADUIS *2, BALL_RADIUS *2)
ボールを中心に置くために、半径を減算しました。
ball_speed_x=7 ball_speed_y=7 paddle_speed=10
ball_speed_x と ball_speed_y は、ボールの水平速度と垂直速度を制御します。
paddle_speed: パドルの移動速度を制御します。
import pygame import sys
pygame.init()
#dimensions WIDTH, HEIGHT=800,600 #frame rate FPS=60 #the paddles at the side of ping pong PADDLE_WIDTH, PADDLE_HEIGHT=15,90 #the balls radius BALL_RADIUS=15 #the color of the ball and paddle WHITE=(255, 255, 255)
screen=pygame.display.set_mode((WIDTH,HEIGHT)) pygame.display.set_caption("Ping Pong")
両方のプレーヤーのスコアをレンダリングし、画面上に配置します。
left_paddle=pygame.Rect(50, HEIGHT//2 - PADDLE_HEIGHT //2, PADDLE_WIDTH, PADDLE_HEIGHT) right_paddle=pygame.Rect(WIDTH - 50 - PADDLE_WIDTH, HEIGHT //2- PADDLE_HEIGHT //2, PADDLE_WIDTH, PADDLE_HEIGHT) ball=pygame.Rect(WIDTH //2 - BALL_RADIUS, HEIGHT //2 - BALL_RADIUS, BALL_RADUIS *2, BALL_RADIUS *2)
最新の変更内容で表示を更新します。
pygame.Rect(x, y, width, height)
ゲームを無期限に実行し続けます。
pygame.Rect(50, HEIGHT//2 - PADDLE_HEIGHT //2, PADDLE_WIDTH, PADDLE_HEIGHT)
これにより、pygame で発生する可能性のあるすべてのイベントが調べられ、そのうちの 1 つがウィンドウを閉じている場合は、pygame を終了してウィンドウを閉じます。
right_paddle=pygame.Rect(WIDTH - 50 - PADDLE_WIDTH, HEIGHT //2- PADDLE_HEIGHT //2, PADDLE_WIDTH, PADDLE_HEIGHT)
キーの押下を検出します:
ball=pygame.Rect(WIDTH //2 - BALL_RADIUS, HEIGHT //2 - BALL_RADIUS, BALL_RADUIS *2, BALL_RADIUS *2)
現在の位置に速度を加えてボールを移動します
ball_speed_x=7 ball_speed_y=7 paddle_speed=10
ボールが画面の上または下に当たった場合、ボールの垂直方向を反転します
import pygame import sys
ボールがパドルに衝突すると、ボールの水平方向が反転します。
pygame.init()
#dimensions WIDTH, HEIGHT=800,600 #frame rate FPS=60 #the paddles at the side of ping pong PADDLE_WIDTH, PADDLE_HEIGHT=15,90 #the balls radius BALL_RADIUS=15 #the color of the ball and paddle WHITE=(255, 255, 255)
ゲームの実行を 1 秒あたり最大 60 フレームに制限し、スムーズなゲームプレイを保証します。
screen=pygame.display.set_mode((WIDTH,HEIGHT)) pygame.display.set_caption("Ping Pong")
以上がPygame Python のピンポン ゲームの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。