// 001.cpp : 定义应用程序的入口点。
//
#include "stdafx.h"
#include "Win32Project1.h"
#include <windows.h>
#include <time.h>
#define MAX_LOADSTRING 100
#define DEF_TIMER1 1000
int g_nSqareID = 0;
int g_nLine = -1;//行
int g_nList = -1;//列
int still = 1;
int g_arrBackGround[30][15];
void OnPaint(HDC hdc);
int CanSgareDown2();
int CanSgareDown();
void OnTimer(HWND hWnd);
void Change1To2();
void drawbackground(HDC hdc);
void OnCreate();
void ShowSqare2(HDC hMemDC);
void OnDown(HWND hWnd);
void OnLeft(HWND hWnd);
void OnRight(HWND hWnd);
void OnUp(HWND hWnd);
void SqareLeft();
int CanSgareLeft();
int CanSgareLeft2();
void SqareRight();
int CanSgareRight();
int CanSgareRight2();
//变形 回车
void OnReturn(HWND hWnd);
//3 * 3变形
void ChangeSqare();
//3 * 3变形限制
int CanSqareChangeSape();
//长条变形
void ChangeLineSqare();
//长条变形限制
int CanLineSqareChange();
#
int a, b, c; //像素变量
//T形
int g_arrBackGround_T[2][4] =
{
{0,1,0,0},
{1,1,1,0},
};// 30行 15列
//J
int g_arrBackGround_J[2][4] =
{
{1,1,1,0},
{1,0,0,0},
};
//L
int g_arrBackGround_L[2][4] =
{
{1,0,0,0},
{1,1,1,0},
};
//Z
int g_arrBackGround_Z[2][4] =
{
{1,1,0,0},
{0,1,1,0},
};
//I
int g_arrBackGround_I[2][4] =
{
{1,1,1,1},
{0,0,0,0},
};
//O
int g_arrBackGround_O[2][4] =
{
{0,1,1,0},
{0,1,1,0},
};
//S
int g_arrBackGround_S[2][4] =
{
{0,1,1,0},
{1,1,0,0},
};
void CopySqareToBack(int g_arrBackGroundt[2][4])
{
int i = 0;
int j = 0;
for (i = 0; i < 2; i++)
{
for (j = 0; j < 4; j++)
{
g_arrBackGround[i][j + 3] = g_arrBackGroundt[i][j];
}
}
}
void CreateRandmSqare()
{
int n = rand() % 7;
switch (n)//n
{
case 1:
CopySqareToBack(g_arrBackGround_Z);
g_nLine = 0;
g_nList = 3;
break;
case 2:
CopySqareToBack(g_arrBackGround_S);
g_nLine = 0;
g_nList = 3;
br
调用getch方法就可以达到暂停的效果。