?? terris.h
字號:
//常量定義
//菜單常量
# define IDM_START 100 //開始
# define IDM_PAUSE 101 //暫停
# define IDM_EXIT 102 //退出
# define IDM_EASY 200 //容易
# define IDM_MEDIUM 201 //普通
# define IDM_DIFFICULT 202 //困難
# define IDM_ABOUT 300 //關于
#define IDC_EMAIL 2000 //Email
#define IDC_HOMEPAGE 2001 //主頁
#define IDC_STATIC -1
//數據常量
# define BLOCKSIZE 15 //方塊大小
# define ROWS 24 //行
# define COLS 10 //列
# define OriginXPos 8 //初始X坐標
# define OriginYPos 30 //初始Y坐標
# define TIMERID 1 //時間間隔編號
# define EasyInterval 300 //容易難度間隔時間
# define MediumInterval 200 //普通難度間隔時間
# define DifficultInterval 100 //困難難度間隔時間
//保存方塊信息的結構體
typedef struct{
BOOL Flag_Is_Moveable; //是否能夠移動的標志
BOOL Flag_Is_Filled; //是否填滿整行的標志
int BlockStyle; //方塊的類型
}BLOCK;
//函數原型說明
void DrawBackground(HDC);
void DrawBlock(HDC, int, int, int);
void DrawGrayBlock(HDC, int, int);
void EraseBlock(HDC, int, int);
void InitializeBlock(BLOCK BlockArray[ROWS][COLS]);
BOOL GameOver(BLOCK BlockArray[ROWS][COLS]);
void GenerateNewBlock(HWND,BLOCK BlockArray[ROWS][COLS]);
BOOL NeedGenerateNewBlock(BLOCK Block[ROWS][COLS]);
void KillFullLine(HWND hwnd,BLOCK BlockArray[ROWS][COLS]);
BOOL CanBlockMoveDown(BLOCK Block[ROWS][COLS]);
BOOL CanBlockMoveRight(BLOCK BlockArray[ROWS][COLS]);
BOOL CanBlockMoveLeft(BLOCK BlockArray[ROWS][COLS]);
void MoveBlockFromSrcToDes (BLOCK BlockArray[ROWS][COLS],int SrcRow, int SrcCol, int DesRow, int DesCol);
void MoveBlockFromPreviewToGameArea(HWND hwnd, BLOCK BlockArray[ROWS][COLS]);
void MoveBlockDown(HWND hwnd,BLOCK Block[ROWS][COLS]);
void MoveBlockRight(HWND hwnd, BLOCK BlockArray[ROWS][COLS]);
void MoveBlockLeft(HWND hwnd,BLOCK BlockArray[ROWS][COLS]);
void Moveable2Stable(BLOCK Block[ROWS][COLS]);
void RefreshWindow(HWND hWnd,BLOCK BlockArray[ROWS][COLS]);
int JudgeBlockStyle(BLOCK BlockArray[ROWS][COLS]);
void ChangeBlockStyleToGray(BLOCK BlockArray[ROWS][COLS]);
void RotateStyleZero(HWND,BLOCK BlockArray[ROWS][COLS]);
void RotateStyleOne(HWND,BLOCK BlockArray[ROWS][COLS]);
void RotateStyleTwo(HWND hwnd,BLOCK BlockArray[ROWS][COLS]);
void RotateStyleThree(HWND hwnd,BLOCK BlockArray[ROWS][COLS]);
void RotateStyleFour(HWND hwnd,BLOCK BlockArray[ROWS][COLS]);
void RotateStyleSix(HWND hwnd,BLOCK BlockArray[ROWS][COLS]);
//第五種類型的積木不存在變形.它是一個正方形.所以沒有相應的變形函數
/*
@ @
@ @
*/
BOOL InitClass(HINSTANCE);
BOOL InitWindow(HINSTANCE);
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
BOOL CALLBACK AboutDialogProc (HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam);
LRESULT CALLBACK HyperLinkProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam);
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -