类与类之间的关系图详见http://www.cnblogs.com/ywqu/archive/2009/12/06/1618184.html
代码要实现的功能(闲的蛋疼 就瞎搞了一下)
1、能够上下左右移动,且无法出墙
2、地图中会随机出现五个东西,你要在规定的时间内吃掉这五个东西,如果你用的步数是最少且没有超时,则分数加100,否则生命减1.
打代码前的构思
1、MAP类(地图)
包含的属性:数组Map[,] ,常量mapsize(地图尺寸)
包含的方法:draw(绘制6×6地图)
3、Pos类(位置)
包含的属性:玩家位置playerpos,五个东西的位置pos[],静态变量isEnd(初始值为5)
包含的方法:suiji(随机五个东西的位置和玩家位置)
4、GUI类(界面)
包含的属性:静态变量生命值life,静态变量时间time,静态变量分数score,静态变量称号name
包含的方法:Life(在地图右侧绘制"life:"life ps:前者是文字)、Time(地图右侧绘制"time:"time ps:前者是文字)
Name(根据分数score的值赋予不同的称号)
5、Function类(功能)
包含的属性:来自Pos类的玩家位置和五个东西的位置,玩家步数playermove,最少步数leastmove
包含的方法:PlayerMove(接收上下左右后移动位置且记录步数),LeastMove类(计算最少步数)
IsLeast(判断是否是最少步数,如果是则score+=100,如果不是life-=1)
IsEnd(利用isend的值判断五个东西是否被吃完)
inicialize(调用Pos类的两个方法,对life time score name isend playermove leastmove重新赋值)
6、ESC类(退出)
包含的属性:无
包含的方法:Esc(按下Esc的时候或生命值为0的时候 退出程序)
7、Main方法(实时调用time方法,life方法,Name方法)
1、实例化Map类,生成对象map,调用draw方法,绘制地图
实例化GUI类,生成对象gui
2、实例化Function类。生成对象fun,调用inicialize方法,初始化游戏
3、循环1
循环退出条件:调用Esc方法
循环体:循环2、调用fun中的LeastMove方法和IsLeast、调用GUI中Name方法、
4、循环2
循环退出条件:对象fun中IsEnd 的返回值为真的时候
循环体:调用fun中的PlayerMove方法