写一个代码实现有一个杯子然后烟花从杯子中放出来
时间: 2024-05-16 10:18:22 浏览: 150
用python代码放烟花
以下是一个简单的 Python 代码示例,实现了一个杯子和烟花的动画效果:
```python
import pygame
import random
# 初始化 Pygame
pygame.init()
# 定义窗口大小
width, height = 640, 480
# 创建窗口
screen = pygame.display.set_mode((width, height))
# 加载杯子和烟花图片
cup_img = pygame.image.load("cup.png")
firework_img = pygame.image.load("firework.png")
# 定义杯子位置和烟花列表
cup_pos = (width // 2 - cup_img.get_width() // 2, height - cup_img.get_height() - 10)
fireworks = []
# 启动游戏循环
running = True
while running:
# 处理事件
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# 清屏
screen.fill((255, 255, 255))
# 绘制杯子
screen.blit(cup_img, cup_pos)
# 随机产生烟花并添加到列表中
if random.random() < 0.05:
fireworks.append({
"pos": (random.randint(cup_pos[0], cup_pos[0] + cup_img.get_width()), cup_pos[1] - 10),
"speed": random.randint(2, 5)
})
# 绘制烟花并更新位置
for firework in fireworks:
screen.blit(firework_img, firework["pos"])
firework["pos"] = (firework["pos"][0], firework["pos"][1] - firework["speed"])
# 如果烟花超出屏幕则从列表中移除
if firework["pos"][1] < -firework_img.get_height():
fireworks.remove(firework)
# 更新屏幕
pygame.display.update()
# 退出 Pygame
pygame.quit()
```
在上面的代码中,我们使用 Pygame 库创建了一个窗口,并加载了两张图片:杯子和烟花。然后在游戏循环中,我们通过随机数来产生烟花,并将其添加到一个列表中。然后绘制烟花并更新其位置,最后在屏幕上显示出来。当烟花超出屏幕时,我们从列表中将其移除。
阅读全文