[杨雨贤发射器]python烟花代码

import turtle
import random

class Firework:
    def __init__(self):
        # 创建烟花的 turtle 对象
        self.firework = turtle.Turtle()
        self.firework.hideturtle()
        self.firework.speed(0)  # 设置绘画速度为最快

        # 设置屏幕
        self.screen = turtle.Screen()
        self.screen.bgcolor("black")
        self.screen.title("Firework Simulation")

        # 烟花发射位置 -> 后面动态设置
        # self.firework.penup()
        # self.firework.goto(0, -250)
        # self.firework.pendown()

        # 随机颜色列表
        self.colors = ["red", "yellow", "blue", "green", "purple", "orange", "pink", "white"]

    # 烟花爆炸效果
    def draw_firework(self,x, y):
        '''传入随机位置'''
        self.firework.penup()
        self.firework.goto(x, y)
        self.firework.pendown()
        '''随机选择颜色'''
        self.firework.color(random.choice(self.colors))
    
        for _ in range(36):
            self.firework.forward(100)
            self.firework.backward(100)
            self.firework.right(10)

    #烟花上升效果
    def launch_firework(self):
        '''设置方向'''
        self.firework.setheading(90)
        for _ in range(30):
            '''每次10个单位, 逐渐上升'''
            self.firework.forward(10)
        self.draw_firework(self.firework.xcor(), self.firework.ycor())

    # 主函数
    def explode_firework(self):
        while True:
            x = random.randint(-200, 200)
            y = random.randint(-200, 0)
            self.firework.penup()
            self.firework.goto(x, y)
            self.firework.pendown()
            self.launch_firework()
            #self.firework.clear()

f1 = Firework()
#just a man in the void
#山谷和草原一同吹来亘古的风
f1.explode_firework()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

青樱部_OFFICIAL

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值