四个方向,通过这个判断来移动蛇头
foodyra
d35060
whilefoodx100食物
case1
随即出现后必须让食物能够在整格内,这样才能
s
akex010break
让蛇迟到
case2
foodx
s
akex010break
whilefoody100
case3
foody
s
akey010break
foodyes0画面上有食物
case4
了
s
akey010break
13
f
setcolor0把画面上的食
fori3is
ake
odei从
物去掉
蛇的第四节开始判断是否撞到自己了,因为蛇头
为两节,第三节不可能拐过来
recta
glefoodxfoodyfoodx10food
y10
s
akexs
ake
ode20
ifs
akexis
akex0s
akeyi
s
akeys
ake
ode20
s
akey0
新的一节先放在看不见得位置,下次循环就取前
一节的位置
GameOver显示失败
s
ake
ode蛇的身体长
s
akelife1
一节
break
foodyes1
score10
PrScore输出新的得分
ifs
akex055s
akex0595s
ak
setcolorWHITE画出蛇
ey055s
akey0455蛇是否撞到墙壁
fori0is
ake
odei
GameOver本次游戏结束
recta
gles
akexis
akeyis
ake
s
akelife1蛇死
xi10s
akeyi10
Sleepgamespeed
ifs
akelife1以上两种判
setcolor0用黑色去除蛇的最
断以后,如果蛇死就跳出内循环,重新开始
后一节
break
recta
gles
akexs
ake
ode1s
ake
ifs
akex0foodxs
akey0fooys
ake
ode1s
akexs
ake
ode110s
dy吃到食物以后
akeys
ake
ode110
14
fifs
akelife1如果蛇死就跳出
voidPrScore输出成绩
循环
break
charstr10
keygetchar接受案件
setfillstyleSOLID_FILLYELLOW
ifkeyEsc按ESC键退出
bar501522035
break
setcolor6
else
spri
tfstr