📄 game.h
字号:
//用4×4数组定义的俄罗斯方块的形状
BYTE Sheet1[4][4] =
{
{1,0,0,0},
{1,0,0,0},
{1,0,0,0},
{1,0,0,0}
};
BYTE Sheet2[4][4] =
{
{1,1,0,0},
{1,1,0,0},
{0,0,0,0},
{0,0,0,0}
};
BYTE Sheet3[4][4] =
{
{0,1,0,0},
{1,1,0,0},
{1,0,0,0},
{0,0,0,0}
};
BYTE Sheet4[4][4] =
{
{1,0,0,0},
{1,1,0,0},
{0,1,0,0},
{0,0,0,0}
};
BYTE Sheet5[4][4] =
{
{1,0,0,0},
{1,1,0,0},
{1,0,0,0},
{0,0,0,0}
};
BYTE Sheet6[4][4] =
{
{1,1,0,0},
{1,0,0,0},
{1,0,0,0},
{0,0,0,0}
};
BYTE Sheet7[4][4] =
{
{1,1,0,0},
{0,1,0,0},
{0,1,0,0},
{0,0,0,0}
};
void* SheetsAddrTab[7]; //俄罗斯方块索引表
typedef struct
{
BOOL KeyUpDown; //上键按下
DWORD dwTimeUpDown; //最近一次上键按下时刻
BOOL KeyDownDown; //下键按下
DWORD dwTimeDDown; //最近一次下键按下时刻
BOOL KeyLeftDown; //左键按下
DWORD dwTimeLeftDown; //最近一次左键按下时刻
BOOL KeyRightDown; //右键按下
DWORD dwTimeRightDown; //最近一次右键按下时刻
} CKeyState; //按键状态结构体
enum CGameState //游戏状态
{
GS_NONE = 0,
GS_PLAY,
GS_PAUSE,
GS_NEW,
GS_GAMEOVER
};
class playerobject
{
public:
BOOL CheckOver();
int ClearRow();
playerobject();
~playerobject();
public:
BYTE Map[12][20];
int Level;
int Speed;
DWORD dwScore;
DWORD dwTimeLamp;
CKeyState KeyState;
CGameState GameState;
};
class shapemodel
{
public:
shapemodel();
~shapemodel();
BOOL CheckCurrSheet();
int CheckDrop();
int ShiftSheet();
public:
int x_pos;
int y_pos; //模块现在的位置
BYTE model[4][4]; //模块的形状
int textureid; //模块的纹理,0 to 3
int shapeid;
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -