博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
pygame 方块随机飞舞动画
阅读量:5091 次
发布时间:2019-06-13

本文共 1766 字,大约阅读时间需要 5 分钟。

import pygameimport random# defaultWIDTH=1280HEIGHT=1060FPS=60sum=0# set colorWHITE=(255,255,255)BLACK=(0,0,0)RED=(255,0,0)GREEN=(0,255,0)BLUE=(0,0,255)color=[WHITE,RED,GREEN,BLUE]# set Block classclass Block(pygame.sprite.Sprite):    def __init__(self):        pygame.sprite.Sprite.__init__(self)        self.image=pygame.Surface((50,50))        self.image.fill(random.choice(color))        self.rect = self.image.get_rect()        self.rect.center=(random.randint(1,WIDTH),random.randint(1,HEIGHT))        self.ce=random.randint(1,2)        self.speed=random.choice([i for i in range(-20,20) if not i in range(-5,5)])    def update(self):        if self.ce==1:            self.rect.x+=self.speed        else:            self.rect.y+=self.speed# pygame initpygame.init()screen=pygame.display.set_mode((WIDTH,HEIGHT))pygame.display.set_caption('lowb cartoon')clock = pygame.time.Clock()#set groupall_sprites = pygame.sprite.Group()block1=[Block() for i in range(random.randrange(20,40))]block2=[Block() for i in range(random.randrange(20,40))]#block=Block()#print(block.ce,block.speed)all_sprites.add(block1)all_sprites.add(block2)# main looprunning=Truewhile running:    sum+=1    if sum%100==0:        block1=[Block() for i in range(random.randrange(20,40))]        all_sprites.add(block1)    if sum%150==0:        block2=[Block() for i in range(random.randrange(20,40))]        all_sprites.add(block2)    #set FPS    clock.tick(FPS)    #set event    for event in pygame.event.get():        if event.type == pygame.QUIT:            running=False    #set update    all_sprites.update()    #set draw/render    screen.fill(BLACK)    all_sprites.draw(screen)    #flip time    pygame.display.flip()pygame.quit()

转载于:https://www.cnblogs.com/baccano-acmer/p/10255057.html

你可能感兴趣的文章
关于面试技巧
查看>>
JavaScript学习笔记(二)
查看>>
salesforce零基础学习(七十七)队列的实现以及应用
查看>>
H5视频播放自动全屏,暂停退出全屏等功能
查看>>
【代码笔记】iOS-对iphone手机进行判断的一些函数
查看>>
easyui源码翻译1.32--ComboTree(树形下拉框)
查看>>
精度--洛谷 P1378 油滴扩展
查看>>
MAC Mysql 重置密码
查看>>
各种编码转换
查看>>
BroadcastReceiver的使用,动态注册和注销,优先级和中断控制
查看>>
Python能做些什么及我的Python学习疑问
查看>>
sublime text3的使用
查看>>
白帽子-高端信息安全培训视频教程
查看>>
opencv入门笔记之三 简单图像识别,识别线,点,圆,轮廓
查看>>
InstallShield Limited Edition Project 打包windows服务解析
查看>>
openfire安装完毕后无法登录控制台(忘记密码)的解决方法
查看>>
学习cocos-js的准备工作
查看>>
互联网应用和企业级应用的区别
查看>>
Linux yum源更换阿里云的源
查看>>
微信小程序中使用 <web-view> 内嵌 H5 时,登录问题的处理方法
查看>>