用python制作打气球的程序
时间: 2023-05-28 08:04:58 浏览: 279
以下是一个简单的 Python 程序,可以用来制作打气球游戏。
```python
import pygame
import random
# 初始化 pygame
pygame.init()
# 设置屏幕大小
screen_width = 800
screen_height = 600
screen = pygame.display.set_mode((screen_width, screen_height))
# 加载背景图片
bg_image = pygame.image.load("bg.jpg").convert()
# 加载气球图片
balloon_images = [
pygame.image.load("red_balloon.png").convert_alpha(),
pygame.image.load("blue_balloon.png").convert_alpha(),
pygame.image.load("yellow_balloon.png").convert_alpha(),
pygame.image.load("green_balloon.png").convert_alpha()
]
# 定义气球类
class Balloon:
def __init__(self, image, speed):
self.image = image
self.rect = self.image.get_rect()
self.rect.x = random.randint(0, screen_width - self.rect.width)
self.rect.y = screen_height
self.speed = speed
def update(self):
self.rect.y -= self.speed
if self.rect.bottom <= 0:
self.kill()
def draw(self):
screen.blit(self.image, self.rect)
def kill(self):
balloons.remove(self)
# 创建气球组
balloons = pygame.sprite.Group()
# 添加气球到组
for i in range(10):
image = random.choice(balloon_images)
speed = random.randint(1, 3)
balloon = Balloon(image, speed)
balloons.add(balloon)
# 设置游戏循环
clock = pygame.time.Clock()
running = True
while running:
# 处理事件
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# 更新气球
balloons.update()
# 绘制背景
screen.blit(bg_image, (0, 0))
# 绘制气球
balloons.draw(screen)
# 刷新屏幕
pygame.display.flip()
# 控制帧率
clock.tick(60)
# 退出游戏
pygame.quit()
```
这个程序使用了 Pygame 库来实现,主要逻辑如下:
1. 加载背景图片和气球图片;
2. 定义气球类,包含气球的图片、位置和速度信息,以及更新和绘制方法;
3. 创建气球组,并添加随机数量和速度的气球到组中;
4. 进入游戏循环,在循环中处理事件、更新气球、绘制背景和气球,以及控制帧率;
5. 退出游戏循环,退出 Pygame 库。
运行这个程序,你将看到屏幕上出现了随机数量和速度的气球,它们从屏幕下方飘过,直到飘到屏幕上方消失。你可以通过点击关闭按钮来退出程序。
阅读全文