📄 ++
字号:
课程设计
题目:蛇仔游戏
要求:
1.可设置方格数目,颜色,大小,线宽
2.随机产生一只老鼠
3.蛇可根据鼠标改变行动方向,当遇到老鼠是就吃掉,遇到自己的身体或边缘时死亡,并结束游戏
4.可产生音乐
5.可以进行文件操作(保存当前游戏进度或装入游戏进度及当前的环境设置等)
6.显示当前日期时间,及进度进行的时间
7.显示当前得分合排名
8.可进行鼠标操作,如菜单功能选择,方向改变等
方案:分为6个模块
1.图形模块
画点函数:要求以VGA(640*480)坐标系,给定入口变量x(1~640),y(1~480),color(0~15)后,此模块能够实现在屏幕(x,y)处以颜色color画点的功能
取点函数:要求以VGA(640*480)坐标系,给定入口变量x(1~640),y(1~480)后,能够将屏幕(x,y)处的颜色值赋值给color出口变量。
2.随机函数:入口变量为max,要求输出一个以时间为基准的伪随机数给出口变量rnd,使0<=rnd<=max
3.鼠标操作:为中断函数,要求当鼠标键被按下时,返回鼠标坐标(mx,xy)和按键的标号ms,按左健时ms=0,按右键时ms=1
4.音乐播放:入口变量:数据段指针mus,其中为纪录音阶的数组,每个字节纪录一个音符,其中0表示休止符,255表示结束,101,102,103,104,105,106,107分别代表乐谱中C调的1234567,往后为高音,往前为低音,实现音乐播放,可选入口数据mlong来指定每一个音符的播放长度
5.排名表:要求以文本方式显示排名表,入口变量:score,模块自动打开排名纪录文件score.dat,读取其中的排名表,并与score比较后将score列入名次,最多纪录30个名次,入口变量name为玩家名字的地址指针,以'$'结尾,要求显示排名表时,每个名次显示名次、名称和分数,如果name排上名次,则将此行用金黄色显示,并重新储存score.dat中的数据
6.主界面及其它,包括菜单功能,游戏save load,时间显示,蛇的运动,计分系统等
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -