Python----贪吃蛇游戏

原创 2018年04月16日 19:15:55
# -*- 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:
        print('Snake:', len(snake))
        food.x = randrange(-15, 15) * 10
        food.y = randrange(-15, 15) * 10
    # snake没有吃到food,snake列表pop(0)
    else:
        snake.pop(0)

    clear()

    for body in snake:
        square(body.x, body.y, 9, 'black')

    square(food.x, food.y, 9, 'green')
    update()
    ontimer(move, 100)

#初始画布尺寸
setup(420, 420, 370, 0)
#隐藏鼠标
hideturtle()
tracer(False)
#监听
listen()
#绑定键盘方向
onkey(lambda: change(10, 0), 'Right')
onkey(lambda: change(-10, 0), 'Left')
onkey(lambda: change(0, 10), 'Up')
onkey(lambda: change(0, -10), 'Down')
move()
done()

C++实现的贪吃蛇游戏

               C++实现的贪吃蛇游戏  [ 来源:SOHO-IT论坛    点击数:218    作者:FishsoulStudio ] win32版,真正原创.注意有三个文件. Sn...
  • luckisok
  • luckisok
  • 2006-07-21 16:24:00
  • 1917

linux console下的贪吃蛇游戏

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】在linux下编写小游戏是很好玩的一件事情,比如说编写坦克战、贪吃蛇、堆箱子等等,这些问题都不大...
  • feixiaoxing
  • feixiaoxing
  • 2015-06-30 08:12:23
  • 6157

【游戏制作】 从零开始的Qt5贪吃蛇代码分析

Qt5游戏开发
  • Ken_Kun
  • Ken_Kun
  • 2016-12-11 15:16:30
  • 2430

用C/C++实现较完整贪吃蛇游戏

记得在大一时刚学习c/c++语言,学到一半突然想用这门语言做一些小游戏出来,首先想到的便是贪吃蛇。于是本人利用空余时间写出了这么一个简单的小游戏。 由于当时的我还没有能力构造出用户界面,故直接使用do...
  • lcsy000
  • lcsy000
  • 2017-08-22 13:35:53
  • 12932

贪吃蛇游戏C++源代码

  • 2011年01月06日 17:05
  • 1.85MB
  • 下载

在WinForm中使用GDI+编写游戏--贪吃蛇

很久之前写的贪吃蛇游戏。。。 先看下效果图:
  • yank2009
  • yank2009
  • 2016-06-29 16:42:21
  • 526

stm32贪吃蛇游戏程序(原子开发板上写的)

  • 2015年09月16日 10:10
  • 545KB
  • 下载

基于安卓贪吃蛇游戏源代码

  • 2014年03月20日 21:55
  • 63KB
  • 下载

Linux平台下贪吃蛇游戏的运行

1.参考资料说明: 这是一个在Linux系统下实现的简单的贪吃蛇游戏,同学找帮忙,我就直接在Red Hat中调试了一下,参考的是百度文库中“maosuhan”仁兄的文章。 2.开发环境:...
  • u011528448
  • u011528448
  • 2014-04-30 22:33:05
  • 892

贪吃蛇游戏~~~c++代码全文。。。附有详细注释。。。。。。

/************************贪吃蛇***********************/ /**********************2012-11-20**************...
  • ckcz123
  • ckcz123
  • 2012-11-20 16:24:14
  • 26033
收藏助手
不良信息举报
您举报文章:Python----贪吃蛇游戏
举报原因:
原因补充:

(最多只允许输入30个字)