贪吃蛇 v0.0.2 测试版 2010-11-30
Copyright (C) 2010 BY 陈雷 保留所有权利
作者:陈雷
email: mintson@163.com
说明:
1.本软件及源代码版权归陈雷所有,对于一切个人的、非商业用途的使用及
转载是免费的,免授权的,但作者希望能在使用及转载时通知作者;对于
其他用途,作者保留所有权利。
2.本软件用C编写,代码由Snake.c,Snake.h,SubSystem.h, SubSystem.c,
main.c等文件组成,SubSystem模块内部调用了部分WINAPI,以适应在win32环
境下的编译器中通过编译,修改SubSystem模块可以很方便地将该游戏移植到
OpenGL或 ucGUI等嵌入式工程下。
向其它系统移植时,只需修改及实现这6个函数即可:
1).void GotoXY(short x, short y); //将画笔移到指定位置
2).int GPoint(short x, short y, const char * pszWhat); //在指定位置画出指定图像
3).GETTIME(_T) //获取系统时间
4).GETKEY() //捕获按键值
5).CHECKKEY() //查询是否有按键
6).SYS_SLEEP(N) //释放CPU
----------------------------------------------------------------------
按键说明:
上: 上键,w (双键值)
下: 下键,s
左: 左键,a
右: 右键,d
暂停: p
换地图:m,n
加速: .
减速: ,
重玩: r
--------------------------------------------------------------------------
更新说明:
v0.0.1 测试版 2010-11-17
1.通过在win32环境下的测试,通过vs2005 c++ 编译环境编译,
2.为提高移植性,采用静态内存,蛇身采用循环队列,水果盘采用顺序表,
3.游戏中会随机出现水果,有些水果不会消失,有些水果会在一定时间内消失
4.代码说明:由Snake.c,Snake.h,main.c三个文件构成
v0.0.2 测试版 2010-11-30
1.修复蛇死亡后暂停键仍起作用的bug
2.添加按键宏: KEY_RESET, KEY_SPEED_UP, KEY_SPEED_DOWN, KEY_EXIT
3.新建SubSystem.h, SubSystem.c 文件,将对系统有依赖的接口函数移入该文件:
1).void GotoXY(short x, short y); //将画笔移到指定位置
2).int GPoint(short x, short y, const char * pszWhat); //在指定位置画出指定图像
3).GETTIME(_T) //获取系统时间
4).GETKEY() //捕获按键值
5).CHECKKEY() //查询是否有按键
6).SYS_SLEEP(N) //释放CPU
向其它系统移植时,只需修改及实现这6个函数即可!