帮我写一个生日烟花的代码
时间: 2024-09-24 20:23:09 浏览: 39
编写一个简单的生日烟花动画代码,我们可以利用Python的pygame库,它是常用于游戏开发的图形库,也可以创建动态效果。以下是一个基础的示例,展示了如何用pygame画出随机位置和颜色的烟花效果:
```python
import pygame
import random
# 初始化pygame
pygame.init()
# 设置窗口大小和标题
win_size = (800, 600)
win = pygame.display.set_mode(win_size)
pygame.display.set_caption("Happy Birthday Fireworks")
# 烟花粒子的颜色和速度
colors = [(255, 0, 0), (0, 255, 0), (0, 0, 255)]
speeds = [1, 2, 3]
# 生日烟花持续时间
fireworks_time = 5000
# 主循环
running = True
clock = pygame.time.Clock()
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# 清除屏幕
win.fill((0, 0, 0))
# 创建随机烟花
for _ in range(random.randint(1, 5)):
x = random.randint(0, win_size[0])
y = random.randint(0, win_size[1] - 10)
color = random.choice(colors)
speed = random.choice(speeds)
# 绘制烟花
pygame.draw.circle(win, color, (x, y), 5, 0)
pygame.draw.line(win, color, (x, y), (x + speed, y + speed * 2), 1)
# 更新屏幕
pygame.display.update()
# 控制帧率
clock.tick(30)
# 判断是否结束烟花时间
fireworks_time -= 1
if fireworks_time <= 0:
break
# 结束游戏
pygame.quit()
```
这个代码会在屏幕上随机生成一些烟花效果,每个烟花会有一个短暂的生命期,颜色和移动轨迹随机变化。你可以根据需求调整参数,增加更多的视觉效果。
阅读全文