from pygame import *
from sys import *
from random import *
init()
font.init()
screen=display.set_mode((600,400))
screen.fill((20,139,69))
display.set_caption("贪吃蛇")
c = []
right=True
left=False
up=False
down=False
n=-3
l=True
s=0
width=30
height=30
x=240
y=240
speed=6
while True:
draw.rect(screen,(0,139,69),(0,0,130,90))
screen.blit(font.SysFont("simhei",30).render("得分:"+str(s),True,(0,0,0)),(0,0))
screen.blit(font.SysFont("simhei",30).render("速度:"+str(speed),True,(0,0,0)),(0,30))
for a in event.get():
if a.type==QUIT:
quit()
exit()
speed=randint(6,12)
if y>400:
y=0
if y<0:
y=400
if x<0:
x=600
if x>600:
x=0
c.append((x,y))
draw.rect(screen,(0,255,255),(x,y,width,height))
time.Clock().tick(speed)
if n>-1:
draw.rect(screen,(20,139,69),(c[n][0],c[n][1],width,height))
if l:
p=(randint(1,9)*width,randint(1,9)*height)
draw.rect(screen,(255,246,143),(p[0],p[1],width,height))
l=False
if x==p[0] and y==p[1]:
s+=1
draw.rect(screen,(0,255,255),(x,y,width,height),0)
c.append((x,y))
l=True
n+=1
if p[0]>x:
right=True
left=False
up=False
down=False
if p[0]<x:
right=False
left=True
up=False
down=False
if p[1]<y:
right=False
left=False
up=True
down=False
if p[1]>y:
right=False
left=False
up=False
down=True
if right:
x+=width
if down:
y+=height
if up:
y-=height
if left:
x-=width
display.flip()
AI贪吃蛇制作
最新推荐文章于 2024-02-24 21:04:21 发布
这段代码展示了一个用Python的pygame库编写的简单贪吃蛇游戏。游戏窗口大小为600x400像素,蛇初始位置在屏幕中央,玩家通过方向键控制蛇移动。蛇吃到食物后会增长,得分增加,速度随机变化。游戏结束条件是蛇碰到屏幕边界。
摘要由CSDN通过智能技术生成