import random

# 定义颜色代码 (ANSI)
colors = [
    "\033[91m",  # 红
    "\033[92m",  # 绿
    "\033[93m",  # 黄
    "\033[94m",  # 蓝
    "\033[95m",  # 紫
    "\033[96m"   # 青
]
reset = "\033[0m"

def launch_firework():
    color = random.choice(colors)

    # --- 第一阶段：升空 (通过打印大量空行模拟向上移动) ---
    for i in range(30):
        # 每一行都打印很多换行符，把之前的内容顶上去
        print("\n" * 2)

    # --- 第二阶段：爆炸瞬间 ---
    # 打印爆炸的图形
    print("              " + color + "*" + reset)
    print("            " + color + "/ | \\" + reset)
    print("           " + color + "/  |  \\" + reset)
    print("          " + color + "/___|___\\" + reset)
    print("             " + color + "|" + reset)
    print("             " + color + "|" + reset)

    # 稍微停顿一下（这里其实不需要 sleep，靠输出量就能产生视觉暂留）
    # 为了看清，我们多打印几行废话撑开画面
    print("\n" * 5)
    print("       BOOM! " + color + "💥" + reset)
    print("\n" * 5)

# --- 主程序：连放 3 个烟花 ---
print("准备发射...")
launch_firework()
launch_firework()
launch_firework()

print("\n\n=== 表演结束 ===")
