# -*- coding: UTF-8 -*-
#引入turtle库,制作snake,food的动画
from turtle import *
#引入random库,使food随机出现
from random import randrange
#引入freegames库,这个库中封装了许多元素;我们可以使用正方形元素表示food,snake,用vector这个二维向量表示snake的移动
from freegames import square, vector
#初始化food,snake
food = vector(0, 0)
snake = [vector(10, 0)]
#vector(0,10)表示第一个food的位置在以snake的头为原点,横坐标为0,纵坐标为-10处
aim = vector(0, -10)
#改变方向
def change(x, y):
aim.x = x
aim.y = y
#判断snake有没有碰到墙壁
def inside(head):
return -200 < head.x < 190 and -200 < head.y < 190
def move():
head = snake[-1].copy()
head.move(aim)
#考虑游戏结束的两种情况,head碰到墙壁/头碰到身体
if not inside(head) or head in snake:
square(head.x, head.y, 9, 'red')
update()
return
snake.append(head)
#snake吃到food,下一个food会随机出现在画布的另一个地方
if head == food:
pri
Python----贪吃蛇游戏
最新推荐文章于 2024-06-28 17:22:26 发布