游戏开始就检测碰撞的原因?

来源:3-9 飞机大战项目飞机碰撞及爆炸效果

西柚少女

2019-08-22 17:57:39

#飞机碰撞检测
rest = pygame.sprite.spritecollide(self, war.enemies, False)
print(rest,111)
if rest:
   #游戏结束
   war.status = war.END
   #敌方飞机清除
   war.enemies.empty()
   war.small_enemies.empty()
   #我方飞机坠毁效果
   self.broken_down()


[<SmallEnemyPlane sprite(in 2 groups)>, <SmallEnemyPlane sprite(in 2 groups)>, <SmallEnemyPlane sprite(in 2 groups)>, <SmallEnemyPlane sprite(in 2 groups)>, <SmallEnemyPlane sprite(in 2 groups)>, <SmallEnemyPlane sprite(in 2 groups)>] 111

写回答

1回答

慕之熠_灿烈

2019-08-22

同学,你好。

进行碰撞检测是在飞机和子弹的飞行过程中检测其是否与敌方飞机发生了碰撞,从而改变游戏运行画面中的元素(我方飞机、敌方飞机、子弹)的状态。对应的执行逻辑是在程序启动后,点击了启动页上的有时开始按钮,此时游戏进入了运行状态,故需要对该状态下的飞机和子弹进行碰撞检测(若不在该装分台下进行检测,那么就有可能造成子弹打中敌机或我方飞机与敌方飞机碰撞后,双方的运行状态不变,这与游戏本身的规则是不符的)。

如果我的回答解决了您的疑惑,请采纳!祝~学习愉快~

0

0 学习 · 8160 问题

查看课程