void Draw_Frame(HDC hDC,HWND
hwnd,HBRUSH G_brush); //重绘主框架
void Draw_Next(HDC hDC,HWND hwnd,HBRUSH G_brush); ////重绘下一个方块框架
void Draw_Message(HDC hDC,HWND hwnd,HBRUSH G_brush); //重绘下一个方块框架
void Draw_Child(HDC hDC,HWND hwnd,HBRUSH G_brush); //重绘子窗口
void Game_Start(); //开始游戏
bool G_Stop; //游戏是否暂停
bool Game_Over(); //判断游戏是否结束
void Game_Run(); //开始运行,设定下落时间
void Game_Down(); //方块下落
void Game_Change(); //方块变形
bool Game_Move(int i); //方块移动
void Game_Stop();
void Game_Restart();
void Game_Sound(unsigned short int sound);
bool Down_end;
bool Space_on;
char G_Path[100]; //游戏路径
protected:
void Next_Rand(); //生成下一个方块
RECT N; //下一个方块界面
RECT F; //主界面
RECT Active_Rect; //方块活动界面
RECT Total; //得分界面
RECT re; //
unsigned short int Actvie_bottom; //活动方块的最下 面
Square squ; //定义一个方块的对象
short int Next_A; //下一个方块类型
short int
Next_B; //下一个方块具体形状
short int Frame_A; //当前方块类型
short int Frame_B; //当前方块具体形状
short int Move; //移动格子数
short int Down; //下降个数
short int Now_Cake[4][2]; //新方块 0横坐标 1纵坐标
short int Old_Cake[4][2]; //旧方块 0横坐标 1纵坐标
short int Top; //有方块的最高点
bool Gframe[10][20]; //10横坐标 20 纵坐标
unsigned short int G_Level;
int Rect_Falling; //下落时间差
short int Gframe_Color[10][20]; //主游戏方块颜色
short int Rect_Color; //当前方块颜色
short int Rect_Color_N; //下一个方块颜色
COLORREF G_BasicColor[7]; //方块颜色基础
bool Game_Active(int Event); //方块事件处理
bool Game_DelRect(); //消行算法
private:
};
#endif
Gamefrme.cpp
#include "Gameframe.h"
//////////////////////////////////////////////////////////////////////< br /> // Gameframe Class
//////////////////////////////////////////////////////////////////////< br /> int Move_temp;
extern HINSTANCE h_inst;
extern HWND hwnd;
extern HWND
U_hwnd; //用户列表
void Gameframe::Draw_Next(HDC hDC,HWND hwnd,HBRUSH G_brush)// 重绘下一个方块框架主游戏框架+内容
{
N.left=Total.left;
FillRect(hDC,&N,G_brush);
FillRect(hDC,&Total,G_brush);
SetDCBrushColor(hDC,G_BasicColor[Rect_Color_N]);
for(int c=0;c<4;c++)
{
for(int d=0;d<4;d++)
{
if(1==squ.Nextframe[Next_A][Next_B] [d][c])
{
SetRect (&re,NEXT_L+c*30+1+10,NEXT_T+d*30+1+10,NEXT_L+c*30+29+10,NEXT_T+d*3 0+29+10);
FillRect (hDC,&re,G_brush);
}
}
}
char szChar[25];
sprintf(szChar,"%d
|