用Python写贪吃蛇

from Tkinter import *
import random
from time import *
import thread
import sys
sys.setrecursionlimit(sys.maxint)
def callback1():  # difficulty
    global diff
    diff = difficulty(0)
def callback11():  # difficulty
    global diff
    diff = difficulty(1)
def callback12():  # difficulty
    global diff
    diff = difficulty(2)
def callback2():  # start
    start()
def callback3():  # exit
    root.destroy()
def callback4(event):  # up
    m.append(0)
def callback5(event):  # down
    m.append(1)
def callback6(event):  # left
    m.append(2)
def callback7(event):  # right
    m.append(3)
def difficulty(x=2):
    if x == 0:
        return 0.5
    if x == 1:
        return 0.3
    if x == 2:
        return 0.1
def createfood():
    x = random.randint(0, 39)
    y = random.randint(0, 29)
    return (x, y)
def pan(now):
    for i in range(len(l)):
        if lx[i] == now[0] * 20 and ly[i] == now[1] * 20:
            return False
def food():
    now = createfood()
    while pan(now):
        now = createfood()
    r = f.create_rectangle(now[0] * 20, now[1] * 20, now[0] * 20 + 20, now[1] * 20 + 20, fill='red')
    f.update()
    z.append(r)
    lxf.append(now[0] * 20)
    lyf.append(now[1] * 20)
def gameover():
    if lx[-1] > 780 or lx[-1] < 0 or ly[-1] > 580 or ly[-1] < 0:
        try:
            f.create_text(400, 250, text='Game Over', font=('Fixdsys', 40), fill='red', justify=CENTER)
            f.create_text(400, 330, text='Ur Score : ' + str(len(l) - 3), font=('Fixdsys', 40), fill='blue', justify=CENTER)
            f.create_text(400, 400, text='please click exit', fill='black',font=('Fixdsys', 20))
        except:
            print 'Game Over'
            f.create_text(400,400,text='please click exit',fill='black',font=('Fixdsys', 20))
            sleep(100)
    for i in range(len(l) - 1):
        if lx[i] ==

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值