生成一段能创造一个弹球游戏的代码
以下是一个简单的弹球游戏代码:
import pygame
import random
# 初始化pygame
pygame.init()
# 设置屏幕宽高
screen_width = 800
screen_height = 600
# 创建屏幕对象
screen = pygame.display.set_mode((screen_width, screen_height))
# 设置游戏标题
pygame.display.set_caption("弹球游戏")
# 设置游戏背景颜色
background_color = (0, 0, 0)
# 设置球的半径
ball_radius = 10
# 设置球的初始位置和速度
ball_x = screen_width // 2
ball_y = screen_height // 2
ball_speed_x = random.randint(-5, 5)
ball_speed_y = random.randint(-5, 5)
# 设置挡板的宽和高
paddle_width = 100
paddle_height = 10
# 设置挡板的初始位置和速度
paddle_x = screen_width // 2 - paddle_width // 2
paddle_y = screen_height - paddle_height - 10
paddle_speed = 10
# 设置游戏结束标志
game_over = False
# 游戏循环
while not game_over:
# 处理事件
for event in pygame.event.get():
if event.type == pygame.QUIT:
game_over = True
# 清空屏幕
screen.fill(background_color)
# 移动球
ball_x += ball_speed_x
ball_y += ball_speed_y
# 碰到左右边界,反弹
if ball_x < ball_radius or ball_x > screen_width - ball_radius:
ball_speed_x = -ball_speed_x
# 碰到上边界,反弹
if ball_y < ball_radius:
ball_speed_y = -ball_speed_y
# 碰到挡板,反弹
if ball_y > paddle_y - ball_radius and ball_x > paddle_x and ball_x < paddle_x + paddle_width:
ball_speed_y = -ball_speed_y
# 游戏结束判断
if ball_y > screen_height:
game_over = True
# 绘制球和挡板
pygame.draw.circle(screen, (255, 255, 255), (ball_x, ball_y), ball_radius)
pygame.draw.rect(screen, (255, 255, 255), (paddle_x, paddle_y, paddle_width, paddle_height))
# 移动挡板
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT] and paddle_x > 0:
paddle_x -= paddle_speed
if keys[pygame.K_RIGHT] and paddle_x < screen_width - paddle_width:
paddle_x += paddle_speed
# 更新屏幕
pygame.display.flip()
# 退出pygame
pygame.quit()
该代码使用pygame库创建了一个简单的弹球游戏。游戏中有一个球和一个挡板,玩家需要控制挡板使球不落到屏幕底部,直到球碰到挡板反弹次数超过限制或者球落到屏幕底部导致游戏结束。玩家可以通过左右箭头键移动挡板,球碰到挡板后会反弹,碰到屏幕边界也会反弹。
原文地址: https://www.cveoy.top/t/topic/bu6d 著作权归作者所有。请勿转载和采集!