Python全系列 教程
3567个小节阅读:5929.5k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
初始化爆炸类
xxxxxxxxxx
131class Explode():
2 def __init__(self,tank):
3 self.rect = tank.rect
4 self.step = 0
5 self.images = [
6 pygame.image.load('img/blast0.gif'),
7 pygame.image.load('img/blast1.gif'),
8 pygame.image.load('img/blast2.gif'),
9 pygame.image.load('img/blast3.gif'),
10 pygame.image.load('img/blast4.gif')
11 ]
12 self.image = self.images[self.step]
13 self.live = True
展示爆炸效果。
xxxxxxxxxx
91 #展示爆炸效果
2 def displayExplode(self):
3 if self.step < len(self.images):
4 MainGame.window.blit(self.image, self.rect)
5 self.image = self.images[self.step]
6 self.step += 1
7 else:
8 self.live = False
9 self.step = 0
在我方子弹碰撞敌方坦克的方法中,如果检测到碰撞,产生爆炸类,并将爆炸效果添加到爆炸列表。
xxxxxxxxxx
101 #新增我方子弹碰撞敌方坦克的方法
2 def hitEnemyTank(self):
3 for eTank in MainGame.EnemyTank_list:
4 if pygame.sprite.collide_rect(eTank,self):
5 #产生一个爆炸效果
6 explode = Explode(eTank)
7 #将爆炸效果加入到爆炸效果列表
8 MainGame.Explode_list.append(explode)
9 self.live = False
10 eTank.live = False
将爆炸效果添加到窗口。
xxxxxxxxxx
71 #新增方法: 展示爆炸效果列表
2 def displayExplodes(self):
3 for explode in MainGame.Explode_list:
4 if explode.live:
5 explode.displayExplode()
6 else:
7 MainGame.Explode_list.remove(explode)