资源描述:
《贪吃蛇地图编辑版》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、贪吃蛇地图编辑版//谭明棋制作完成//203实验室C++游戏编程组QQ:188147054//升级工作完成//请将附件tanchishe.txt复制到C盘,地图编辑版#include#include#include#include#include#include#include#includeconstintG_N=20;constintG_M=20;enu
2、mG_Direction{Up,Down,Lefts,Rights};FILE*fp;usingnamespacestd;intG_MAP[G_N][G_M];intSetTime=250,LengTh,Level=1;staticdoubleSpeed=500.0/SetTime;staticintIntegral=0;intRecordX1=43,RecordY1=9,RecordX2=58,RecordY2=9;intmain();voidHidden()//光标隐藏{HANDLEhOut=G
3、etStdHandle(STD_OUTPUT_HANDLE);CONSOLE_CURSOR_INFOhidden;GetConsoleCursorInfo(hOut,&hidden);hidden.bVisible=0;SetConsoleCursorInfo(hOut,&hidden);}classMenu//游戏选择菜单{private:floatTime;charkeydirection;intX,Y;public:voidGameStart();boolJudgeMove(charpress
4、key);voidXY(intX,intY);voidMapEditing();}Start;voidMenu::XY(intX,intY){HANDLEhOut=GetStdHandle(STD_OUTPUT_HANDLE);COORDcoordScreen={X,Y};SetConsoleCursorPosition(hOut,coordScreen);}voidMenu::MapEditing(){system("cls");printf("tt请按照这样的格式进行地图编辑(4*4,1代表
5、着墙壁):1111100110011111");printf("由于地图是%d*%d,所以其大小必须符合格式否则编译错误",G_N,G_M);printf("是否确定?(Y/N)");intkey=getchar();if(key=='y'
6、
7、key=='Y'){printf("请输入地图:");inta[G_N][G_M]={0};for(inti=0;i8、e(a,sizeof(a),1,fp);fclose(fp);if((fp=fopen("C:\tanchishe.txt","rb+"))==NULL){printf("tt编辑地图失败");Sleep(2000);exit(0);}printf("编辑完成");Sleep(2000);printf("按任意键返回");_getch();_getch();}main();}boolMenu::JudgeMove(charpresskey){XY(RecordX1,Re
9、cordY1);printf("");XY(RecordX2,RecordY2);printf("");if(RecordY1>=9&&RecordY1<=15){if(presskey==0x48){RecordY1-=2;RecordY2-=2;}elseif(presskey==0x50){RecordY1+=2;RecordY2+=2;}elseif(presskey==''&&RecordY1==9){returnfalse;}}if(RecordY1<9){RecordY1+=2;R
10、ecordY2+=2;}if(RecordY1>15){RecordY1-=2;RecordY2-=2;}XY(RecordX1,RecordY1);printf(">>>>");XY(RecordX2,RecordY2);printf("<<<<");returntrue;}voidMenu::GameStart(){system("cls");printf("贪吃蛇");printf("");printf("●●●●●●●●");printf("●●