argameMe
uhelpMe
uspeedMe
u
ewItempauseItemaboutItemslowItemmidItemfastItembegi
ItemhelpItem
5
f大连交通大学计算机工程实践
(2)方法见表3
方法名
S
akePa
eladdKeyListe
ersetBou
dsJLabelJMe
uJMe
uItem
表3主要方法
创建蛇的面板监视器设置尺寸设置标签创建菜单构造菜单项
功能
3.类S
ake
(1)成员变量见表4
表4主要成员变量
成员变量描述
变量类型
名称
是否运动蛇体食物方向分数状态速度慢中快运动中已暂停游戏结束左
boolea
ArrayListNodeNodei
ti
ti
ti
tpublicstaticfi
ali
tpublicstaticfi
ali
tpublicstaticfi
ali
tpublicstaticfi
ali
tpublicstaticfi
ali
tpublicstaticfi
ali
tpublicstaticfi
ali
t
isRu
bodyfoodderectio
scorestatusspeedSLOWMIDFASTRUNNINGPAUSEDGAMEOVERLEFT
6
f大连交通大学计算机工程实践
上
publicstaticfi
ali
tUP
右
publicstaticfi
ali
tRIGHT
下
publicstaticfi
ali
tDOWN
(2)方法见表5
表5主要方法
方法名
功能
isEate
isCollsio
makeFoodcha
geDerectio
i
t
ewDermove
判断食物是否被蛇吃掉,如果食物在蛇运行方向的正前方,并且与蛇头接触,则被吃掉判断是否碰撞在随机的地方产生食物
改变运行方向
蛇在运行中所采取的措施
4类Node
(1)成员变量见表6
成员变量描述
表6主要成员变量变量类型
名称
食物块宽食物块高横坐标纵坐标
publicstaticfi
ali
tW
publicstaticfi
ali
tH
i
t
x
i
t
y
(2)源代码见文件S
akeGamejava5类S
akePa
el
此类为画蛇的面板类,是实现红蓝间隔画蛇身算法的类。源代码见文件源代码见文件S
akeGamejava6类StatusRu
able
7
f大连交通大学计算机工程实践
此类为线程的子类,实现记录状态的功能。源代码见文件S
akeGamejava7类S
akeRu
able此类为线程的子类,实现蛇运动以及记录分数的功能。源代码见文件S
akeGamejava
42各功能界面截图
1、贪吃蛇游戏的基本运行界面(1)生成初始界面:
图1初始界面8
f(2)游戏菜单栏
大连交通大学计算机工程实践
图2游戏菜单栏9
f(3)速度菜单栏
大连交通大学计算机工程实践
图3速度菜单栏10
f大连交通大学计算机工程实践
2、程序开始运行界面(1)鼠标点击NewGame按钮,开始游戏(红色方块为食物,蓝黄相间为初始的蛇体):
图4游戏初始界面11
f大连交通大学计算机工程实践
(2)按空格键,游戏开始运行,蛇开始移动,并且吃到一次食物即红色方块后就变成蛇体:
图5游戏开始运行界面12
f大连交通大学计算机工程实践
(3)按方向键改变蛇的运行方向,并且碰壁后从新开始游戏,红色方块随机地方产生:
图6游戏运行界面13
f大连交通大学r