emmm。。。似乎有点晚了呢,还是发出来吧,给从B站过来的同好们一个交代。
import pygame
import sys
import random as r
#窗口
screen=pygame.display.set_mode((600,400))
# 设置窗体的屏幕宽高
pygame.display.set_caption('书生君陌')
# 设置标题
#心形
xinimage='心002.png'
xinstart=pygame.image.load(xinimage)
Limage='l.png'
Lstart=pygame.image.load(Limage)
Oimage='O.png'
Ostart=pygame.image.load(Oimage)
Vimage='V.png'
Vstart=pygame.image.load(Vimage)
Eimage='E.png'
Estart=pygame.image.load(Eimage)
#定义列表
weizhilist=[]#位置
xinlist=[]#速度
sizelist=[]#大小缩放
xinstart1=[]
for i in range(30):
x=r.randint(0,600)
y=r.randint(0,400)
weizhilist.append([x,y])
xinlist.append(r.uniform(0.3,0.5))
sizex=r.randint(30,60)
# sizey=r.randint(50,60)
sizelist.append([sizex,sizex])
snum = r.randint(0, 5)
if snum == 0:
xinstart1.append(xinstart)
elif snum == 1:
xinstart1.append(Lstart)
elif snum == 2:
xinstart1.append(Ostart)
elif snum == 3:
xinstart1.append(Vstart)
else:
xinstart1.append(Estart)
while 1:
screen.fill((255,255,255))#设置窗口背景为白色
for i in pygame.event.get():#获得事件
if i.type==pygame.QUIT:#如果选择关闭窗口
sys.exit()#退出
num=0#序号
for i in weizhilist:
i[1]=i[1]+xinlist[num]#移动雪花位置
xinstart0 = pygame.transform.scale(xinstart1[num], sizelist[num])
screen.blit(xinstart0,(i[0],i[1]))#打印心形
if i[1]>=400:
i[0]=r.randint(0,600)
i[1]=-xinstart.get_height()
sizex=r.randint(30,60)
sizelist[num]=[sizex,sizex]
num=num+1
pygame.display.update()
注意啊,图片的路径是需要进行更改的!!!