📄 main.h
字号:
// Grids = 12 * 20
// Grain = 16
// width : 192
// height: 320
// const
#define GRAIN_WIDTH 16
#define GRAIN_HEIGHT 16
#define SCENE_WIDTH GRAIN_WIDTH * 12 // 12*16
#define SCENE_HEIGHT GRAIN_HEIGHT * 20 // 20*16
#define MAX_COLOR 4
#define MAGRIN_TOP 8
#define MAGRIN_LEFT 8
#define MAX_SHEET 7
#define TIME_MOVE 80
#define KEY_PROC_TIME_INTERVAL 50
typedef struct{
int x,y;
BYTE CurrSheet[4][4];
int CurrColor;
int NextSheet;
int NextColor;
int Level;
int Speed;
DWORD dwScore1;
DWORD dwScore2;
DWORD dwTimeLamp;
}CPlayer;
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_SUSPEND,
GS_GAMEOVER
};
// public value
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}};
HINSTANCE hInst;
HWND hWnd;
HDC hDc;
HDC hBackDc;
HBITMAP hBackBmp;
HDC hImagesDc;
HBITMAP hImagesBmp;
HBITMAP hNextBmp;
HDC hNextDc;
CGameState GameState;
BOOL bActive;
void * SheetsAddrTab[7];
char * szAppName = "Russia\0";
CPlayer Player;
CKeyState KeyState;
BYTE Map[12][20];
BOOL CALLBACK DlgProc(HWND hDlg,UINT uMsg,WPARAM wParam,LPARAM lParam);
int GameLoop();
BOOL InitApplication();
BOOL FreeApplication();
int KeyProc();
int DrawMap();
int Flip();
int CheckDrop();
int NewGame();
int SuspendGame();
int ResumeGame();
int ShiftSheet();
BOOL CheckCurrSheet();
int ClearRow();
BOOL CheckOver();
int DrawNext();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -