vc6纯c言编写俄罗斯方块
// //
// 2013年7月1日 20:15:03开始编写 //
// 重新编写俄罗斯方块 //
// 2013年7月6日 15:04:27完成编写 //
// 已经测试,没有问题 //
// 新建的时候,选择win32 application。直接复制就可以 //
// //
#include
#include
#include
// 数据定义 //
struct CooPoint //坐标结构体 int x;
int y;
;
const CooPoint Shape[7][4][4] //7种图形,4个方向,4个方块的相对点位坐标 1,2,1,1,2,1,2,0,0,0,1,1,1,0,2,1,1,2,1,1,2,1,2,0,0,0,1,1,1,0,2,1 , 1,1,1,0,2,1,2,0,1,1,1,0,2,1,2,0,1,1,1,0,2,1,2,0,1,1,1,0,2,1,2,0 , 0,0,1,0,2,0,3,0,2,3,2,2,2,1,2,0,0,0,1,0,2,0,3,0,2,3,2,2,2,1,2,0 , 1,1,1,0,2,1,3,1,1,2,2,2,2,1,2,0,0,0,1,0,2,1,2,0,1,2,1,1,1,0,2,0 , 1,1,2,1,2,0,3,1,1,1,2,2,2,1,2,0,1,1,2,2,2,1,3,1,2,2,2,1,2,0,3,1 , 1,1,1,0,2,2,2,1,1,1,2,1,2,0,3,0,1,1,1,0,2,2,2,1,1,1,2,1,2,0,3,0 , 0,1,1,1,2,1,2,0,1,0,2,2,2,1,2,0,1,1,1,0,2,0,3,0,1,2,1,1,1,0,2,2 ;
struct BruColor //三色素结构体 int Red;
int Green;
int Blue;
;
const BruColor RColor[10] //10种颜色的三色素值 0,0,0 , 0,255,255 , 73,213,73 , 221,37,12 , 216,232,0 ,
229,106,50 , 64,0,207 , 100,200,150 , 150,20,170 , 54,21,200
;
int Rec[9][22]; //保存所有方格是否存在方块,有为1
int Color[9][22]; //保存所有方格的颜色,没有为0
int Which 0;// 哪一个图形
int Dir 0;// 图形的哪一个方向
int WhichColor 1;//图形的颜色
int NextWhich 0;// 下一个图形
int NextDir 0;//下一个图形的方向
int NextWhichColor 1;//下一个图形的颜色
int Speed 650;//记录定时时间
int Score 0;//记录分数
int Rank 1; //记录等级
int IsPause 0; //0为初始,1为正在游戏,2为游戏暂停
CooPoint Pos 3,0 ;//记录4宫格图形左上角的绝对坐标
// 函数申明 //
LRESULT CALLBACK MainProc HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam ; //消息处理函数
void Show int x,int y,int which,int dir,int whichcolor,HWND hwnd ; //显示图形
BOOL CouldMove int x,int y,int dir ; //判断是否能够移动
int Save int x,int y,int which,int dir,int whichcolor ; //不能移动时,保存数据,开始下一个图形
int Sum int i ; //计算1+2+...+i的值
int WINAPI WinMain
HINSTANCE hInstance, // handle to current instance
HINSTANCE hPrevInstance, // handle to previous instance
LPSTR lpCmdLine, // pointer to command line
int nCmdShow // show state of window WNDCLASS wndclass;
wndclass.cbClsExtra 0;
wndclass.cbWndExtr