c语言小游戏代码-扫雷代码.doc
include include include define LEFTPRESS 0 xff01 define LEFTCLICK 0 xff10 define LEFTDRAG 0 xff19 define MOUSEMOVE 0 xff08 struct int num;/*格子当前处于什么状态,1 有雷,0 已经显示过数字或者空白格子*/ int roundnum;/*统计格子周围有多少雷*/ int flag;/*右键按下显示红旗的标志,0 没有红旗标志,1 有红旗标志*/ Mine1010; int gameAGAIN0;/*是否重来的变量*/ int gamePLAY0;/*是否是第一次玩游戏的标志*/ int mineNUM;/*统计处理过的格子数*/ char randmineNUM3;/*显示数字的字符串*/ int Keystate; int MouseExist; int MouseButton; int MouseX; int MouseY; void Initvoid;/*图形驱动*/ void MouseOnvoid;/*鼠标光标显示*/ void MouseOffvoid;/*鼠标光标隐藏*/ void MouseSetXYint,int;/*设置当前位置*/ int LeftPressvoid;/*左键按下*/ int RightPressvoid;/*鼠标右键按下*/ void MouseGetXYvoid;/*得到当前位置*/ void Controlvoid;/*游戏开始,重新,关闭*/ void GameBegainvoid;/*游戏开始画面*/ void DrawSmilevoid;/*画笑脸*/ void DrawRedflagint,int;/*显示红旗*/ void DrawEmptyint,int,int,int;/*两种空格子的显示*/ void GameOvervoid;/*游戏结束*/ void GameWinvoid;/*显示胜利*/ int MineStatisticsint,int;/*统计每个格子周围的雷数*/ int ShowWhiteint,int;/*显示无雷区的空白部分*/ void GamePlayvoid;/*游戏过程*/ void Closevoid;/*图形关闭*/ void mainvoid Init; Control; Close; void Initvoid/*图形开始*/ int gdDETECT,gm; initgraph void Closevoid/*图形关闭*/ closegraph; void MouseOnvoid/*鼠标光标显示*/ _AX0 x01; geninterrupt0 x33; void MouseOffvoid/*鼠标光标隐藏*/ _AX0 x02; geninterrupt0 x33; void MouseSetXYint x,int y/*设置当前位置*/ _CXx; _DXy; _AX0 x04; geninterrupt0 x33; int LeftPressvoid/*鼠标左键按下*/ _AX0 x03; geninterrupt0 x33; return_BX int RightPressvoid/*鼠标右键按下*/ _AX0 x03; geninterrupt0 x33; return_BX void MouseGetXYvoid/*得到当前位置*/ _AX0 x03; geninterrupt0 x33; MouseX_CX; MouseY_DX; void Controlvoid/*游戏开始,重新,关闭*/ int gameFLAG1;/*游戏失败后判断是否重新开始的标志*/ while1 ifgameFLAG/*游戏失败后没判断出重新开始或者退出游戏的话就继续判断*/ GameBegain; /*游戏初始画面*/ GamePlay;/*具体游戏*/ ifgameAGAIN1/*游戏中重新开始*/ gameAGAIN0; continue; MouseOn; gameFLAG0; ifLeftPress/*判断是否重新开始*/ MouseGetXY; ifMouseX280/*x 坐标*/ iMouseY-90/20;/*y 坐标*/ MouseOff; ifMineij.flag0 Mineij.flag1; else ifMineij.flag1/*有红旗标志再按右键就红旗消失*/ DrawEmptyi,j,0,8; Mineij.flag0; MouseOn; sleep1;