贪吃蛇7 #
- 边界检测
- 自身碰撞检测
- 游戏结束设置
边界检测 #
本小节主要介绍了边界检测方法,在class SnakeGame()类中添加faild_check()函数
def faild_check(self): if self.snake.x[0] < 0 or self.snake.x[0] > self.width \ or self.snake.y[0] < 0 or self.snake.y[0] > self.height: #对蛇身位置进行判断,是否超出边缘 print('出边界了')
自身碰撞检测 #
本小节主要介绍自身碰触检测方法,即蛇身有重合部位。在class SnakeGame()类的faild_check()函数中继续添加自身触碰检测模块
#def faild_check(self): # 检查是否吃到了自己 for i in range(2,self.snake.length): if self.isCollision(self.snake.x[0], self.snake.y[0], self.snake.x[i], self.snake.y[i],40):#使用碰撞检测函数 print('吃到自己了')
游戏结束方法 #
本小节主要介绍了当满足边界检测和自身碰撞检测时,游戏结束方法。分别在边界检测模块的print(‘出边界了’)和自身碰撞检测模块的print(‘吃到自己了’)后面都添加一行exit(0),并在loop()函数中进行更新。
#print('吃到自己了') exit(0)#使用exit(0)结束游戏 #print('出边界了') exit(0)#使用exit(0)结束游戏 #窗口更新 #def loop(self): #self.snake.update() #self.eat() self.faild_check()
小结 #
本节主要介绍了贪吃蛇游戏中的边界检测、自身碰撞检测及游戏结束方法