Commit 54347764 by BellCodeEditor

auto save

parent 0020b5fa
Showing with 10 additions and 5 deletions
...@@ -15,21 +15,26 @@ food = pygame.image.load('apple.png') ...@@ -15,21 +15,26 @@ food = pygame.image.load('apple.png')
body = pygame.image.load('body.png') body = pygame.image.load('body.png')
x, y = 240, 120 # 初始化贪吃蛇头的坐标设置xy为240,120 x, y = 240, 120 # 初始化贪吃蛇头的坐标设置xy为240,120
# 创建列表存储贪吃蛇的初始坐标三段身体以及蛇头的坐标
position = [(180, 90), (180, 120), (210, 120), (x, y)]
while True: while True:
for event in pygame.event.get(): for event in pygame.event.get():
if event.type == locals.QUIT: if event.type == locals.QUIT:
# 接收到退出事件后退出程序 # 接收到退出事件后退出程序
exit() exit()
x += 30 # 每次循环都将x坐标增加一个格子的长度30 x += 30 # 每次循环都将x坐标增加一个格子的长度30
# 将贪吃蛇头的新坐标追加进列表
position.append((x, y))
position.pop(0)
# 将背景图画上去 # 将背景图画上去
screen.blit(background, (0, 0)) screen.blit(background, (0, 0))
# 将贪吃蛇画上去 # 将贪吃蛇画上去
screen.blit(right, (x, y)) screen.blit(right, position[-1]) # 将列表的第一个元素删除作为蛇头的坐标
# 将贪吃蛇的身体画上去 # 将贪吃蛇的身体画上去
screen.blit(body, (210, 120)) # 用for循环取出身体坐标len()获取列表长度-1,得到的值通过range()函数生成列表下标
screen.blit(body, (180, 120)) for i in range(len(position)-1):
screen.blit(body, (180, 90)) screen.blit(body, position[i]) # 取出列表里所有身体坐标进行渲染
# 将果实画上去 # 将果实画上去
screen.blit(food, (360, 300)) screen.blit(food, (360, 300))
# 刷新画面 # 刷新画面
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment