亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? hwrectview.cpp

?? 用C++寫(xiě)的漢諾塔游戲 功能很強(qiáng)
?? CPP
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
// HWRECTView.cpp : implementation of the CHWRECTView class
//

#include "stdafx.h"
#include "HWRECT.h"
#include "OptionDlg.h"

#include "mmsystem.h"

#include "HWRECTDoc.h"
#include "HWRECTView.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CHWRECTView

IMPLEMENT_DYNCREATE(CHWRECTView, CView)

BEGIN_MESSAGE_MAP(CHWRECTView, CView)
	//{{AFX_MSG_MAP(CHWRECTView)
	ON_WM_KEYDOWN()
	ON_WM_TIMER()
	ON_COMMAND(ID_GAME_START, OnGameStart)
	ON_COMMAND(ID_GAME_END, OnGameEnd)
	ON_COMMAND(ID_GAME_OPTION, OnGameOption)
	ON_UPDATE_COMMAND_UI(ID_GAME_START, OnUpdateGameStart)
	ON_UPDATE_COMMAND_UI(ID_GAME_OPTION, OnUpdateGameOption)
	ON_UPDATE_COMMAND_UI(ID_GAME_END, OnUpdateGameEnd)
	ON_UPDATE_COMMAND_UI(ID_GAME_EXIT, OnUpdateGameExit)
	ON_UPDATE_COMMAND_UI(ID_HELP_ABOUT, OnUpdateHelpAbout)
	ON_UPDATE_COMMAND_UI(ID_HELP_HELP, OnUpdateHelpHelp)
	ON_WM_CREATE()
	ON_COMMAND(ID_HELP_HELP, OnHelpHelp)
	ON_UPDATE_COMMAND_UI(ID_OPTION_AREA1, OnUpdateOptionArea1)
	ON_UPDATE_COMMAND_UI(ID_OPTION_AREA2, OnUpdateOptionArea2)
	ON_UPDATE_COMMAND_UI(ID_OPTION_AREA3, OnUpdateOptionArea3)
	ON_UPDATE_COMMAND_UI(ID_OPTION_AREA4, OnUpdateOptionArea4)
	ON_COMMAND(ID_OPTION_AREA1, OnOptionArea1)
	ON_COMMAND(ID_OPTION_AREA2, OnOptionArea2)
	ON_COMMAND(ID_OPTION_AREA3, OnOptionArea3)
	ON_COMMAND(ID_OPTION_AREA4, OnOptionArea4)
	ON_UPDATE_COMMAND_UI(ID_OPTION_LEVEL1, OnUpdateOptionLevel1)
	ON_UPDATE_COMMAND_UI(ID_OPTION_LEVEL2, OnUpdateOptionLevel2)
	ON_UPDATE_COMMAND_UI(ID_OPTION_LEVEL3, OnUpdateOptionLevel3)
	ON_UPDATE_COMMAND_UI(ID_OPTION_LEVEL4, OnUpdateOptionLevel4)
	ON_UPDATE_COMMAND_UI(ID_OPTION_LEVEL5, OnUpdateOptionLevel5)
	ON_UPDATE_COMMAND_UI(ID_OPTION_LEVEL6, OnUpdateOptionLevel6)
	ON_COMMAND(ID_OPTION_LEVEL1, OnOptionLevel1)
	ON_COMMAND(ID_OPTION_LEVEL2, OnOptionLevel2)
	ON_COMMAND(ID_OPTION_LEVEL3, OnOptionLevel3)
	ON_COMMAND(ID_OPTION_LEVEL4, OnOptionLevel4)
	ON_COMMAND(ID_OPTION_LEVEL5, OnOptionLevel5)
	ON_COMMAND(ID_OPTION_LEVEL6, OnOptionLevel6)
	ON_UPDATE_COMMAND_UI(ID_OPTION_GRID, OnUpdateOptionGrid)
	ON_COMMAND(ID_OPTION_GRID, OnOptionGrid)
	ON_UPDATE_COMMAND_UI(ID_OPTION_MUSIC, OnUpdateOptionMusic)
	ON_COMMAND(ID_OPTION_MUSIC, OnOptionMusic)
	ON_UPDATE_COMMAND_UI(ID_GAME_PAUSH, OnUpdateGamePaush)
	ON_COMMAND(ID_GAME_PAUSH, OnGamePaush)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CHWRECTView construction/destruction
/* * * * * * * * * * * * * * * * * * * * * * * * *
*
*  名稱:構(gòu)造函數(shù)
*
*  功能:初始化變量
*
*  最后修改時(shí)間:1999.3.22
*
* * * * * * * * * * * * * * * * * * * * * * * * */
CHWRECTView::CHWRECTView()
{
	//缺省為不是游戲暫停狀態(tài)
	m_bGamePaush = FALSE;

	//缺省為不插放背景音樂(lè)
	m_bMusic = FALSE;
	
	//缺省為畫(huà)網(wǎng)格線
	m_bDrawGrid = TRUE;

	//總分值清零
	m_iPerformance = 0;

	//測(cè)試值:為12行,10列
	m_iRow = 12;
	m_iCol = 10;

	//左上角X,Y坐標(biāo)
	m_iStartX = 10;
	m_iStartY = 10;

	//缺省級(jí)別為3級(jí)
	m_iLevel = 2;

	//缺省方塊大小為m_iLarge個(gè)象素
	m_iLarge = 30;

	//缺省游戲是結(jié)束的
	m_bGameEnd = TRUE;

	int i,j;

	//賦初值
	for (i=0;i<100;i++)
		for (j=0;j<100;j++)
			GameStatus[i][j]=0;

	//各種形狀方塊的接觸面數(shù)據(jù),參見(jiàn)設(shè)計(jì)書(shū)的接觸面表格, 如果某種形狀的方塊沒(méi)有4個(gè)接觸面,則后面的數(shù)據(jù)填-1
	for (i=0;i<74;i++)
		for (j=0;j<4;j++)
			InterFace[i][j] = -1;

	InterFace[1][0] = 3;
	
	InterFace[11][0] = 0;	InterFace[11][1] = 1;	InterFace[11][2] = 2;	InterFace[11][3] = 3;
  
	InterFace[2][0] = 1;	InterFace[2][1] = 3;
	
	InterFace[3][0] = 0;	InterFace[3][1] = 2;	InterFace[3][2] = 3;
	
	InterFace[31][0] = 2;	InterFace[31][1] = 3;
	
	InterFace[32][0] = 0;	InterFace[32][1] = 2;	InterFace[32][2] = 3;
	
	InterFace[33][0] = 0;	InterFace[33][1] = 3;
	
	InterFace[4][0] = 1;	InterFace[4][1] = 3;
	
	InterFace[41][0] = 0;	InterFace[41][1] = 2;	InterFace[41][2] = 3;
	
	InterFace[5][0] = 1;	InterFace[5][1] = 3;

	InterFace[51][0] = 0;	InterFace[51][1] = 2;	InterFace[51][2] = 3;
	
	InterFace[6][0] = 0;	InterFace[6][1] = 3;
	
	InterFace[61][0] = 1;	InterFace[61][1] = 2;	InterFace[61][2] = 3;

	InterFace[62][0] = 2;	InterFace[62][1] = 3;

	InterFace[63][0] = 0;	InterFace[63][1] = 1;	InterFace[63][2] = 3;

	InterFace[7][0] = 2;	InterFace[7][1] = 3;
	
	InterFace[71][0] = 1;	InterFace[71][1] = 2;	InterFace[71][2] = 3;

	InterFace[72][0] = 0;	InterFace[72][1] = 3;

	InterFace[73][0] = 0;	InterFace[73][1] = 1;	InterFace[73][2] = 3;

}


/* * * * * * * * * * * * * * * * * * * * * * * * *
*
*  名稱:析構(gòu)函數(shù)
*
*  功能:無(wú)
*
*  最后修改時(shí)間:1999.3.22
*
* * * * * * * * * * * * * * * * * * * * * * * * */
CHWRECTView::~CHWRECTView()
{
}

BOOL CHWRECTView::PreCreateWindow(CREATESTRUCT& cs)
{
	return CView::PreCreateWindow(cs);
}

//創(chuàng)建一些設(shè)備
int CHWRECTView::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{
	if (CView::OnCreate(lpCreateStruct) == -1)
		return -1;
	
	//白色的黑筆
	whitePen = new CPen(PS_SOLID,1,WHITE);
	
	//黑色的黑筆
	blackPen = new CPen(PS_SOLID,1,BLACK);

	//畫(huà)刷
	grayBrush = new CBrush(RGB(0,255,255));
	blueBrush = new CBrush(BLUE);
	blackBrush = new CBrush(BLACK);

	//決定第一次掉下來(lái)的方塊的樣式
	m_inextStatus = Random(7);
	if (m_inextStatus==0) m_inextStatus++;
	
	return 0;
}

/* * * * * * * * * * * * * * * * * * * * * * * * *
*
*  名稱:OnDraw
*
*  功能:承擔(dān)所有繪制屏幕工作
*
*  最后修改時(shí)間:1999.3.22
*
* * * * * * * * * * * * * * * * * * * * * * * * */
void CHWRECTView::OnDraw(CDC* pDC)
{
	CHWRECTDoc* pDoc = GetDocument();
	ASSERT_VALID(pDoc);
	
	int i,j;
	
	//CBrush *oldBrush = 
	pDC -> SelectObject(blackBrush);
	CRect rect;
	GetClientRect(&rect);
	pDC -> Rectangle(rect);

	pDC -> SelectObject(grayBrush);
	pDC -> Rectangle(m_iStartY ,m_iStartX, m_iStartY + 301, m_iStartX + 360);
	
	pDC -> SelectObject(blueBrush);

	//CPen *oldPen = 
	pDC->SelectObject(blackPen);
	
	//畫(huà)網(wǎng)格線
	if (m_bDrawGrid)
	{
		//畫(huà)橫線
		for (i=0;i<m_iRow;i++)
		{
			pDC->MoveTo(m_iStartY, m_iStartX + i*m_iLarge);
			pDC->LineTo(m_iStartY+300, m_iStartX +i*m_iLarge);
		}	
		
		//畫(huà)豎線
		for (i=0;i<m_iCol;i++)
		{
			pDC->MoveTo(m_iStartY+i*m_iLarge, m_iStartX);
			pDC->LineTo(m_iStartY+i*m_iLarge, m_iStartX+360);
		}
	}

	//畫(huà)方塊
	for (i=0;i<m_iRow;i++)
		for (j=0;j<m_iCol;j++)
		{
			if (GameStatus[i][j]==1)
			{
				//劃的方塊比規(guī)定的大小略微小一點(diǎn)
				//畫(huà)小方塊邊框黑線
				pDC -> SelectObject(blackPen);
				pDC -> MoveTo(m_iStartY+j*m_iLarge +1, m_iStartX+i*m_iLarge +1);
				pDC -> LineTo(m_iStartY+j*m_iLarge +1, m_iStartX+(i+1)*m_iLarge -1);
				pDC -> MoveTo(m_iStartY+j*m_iLarge +1,	m_iStartX+(i+1)*m_iLarge -1);
				pDC -> LineTo(m_iStartY+(j+1)*m_iLarge -1, m_iStartX+(i+1)*m_iLarge -1);

				//畫(huà)小方塊邊框白線
				pDC -> SelectObject(whitePen);
				pDC -> MoveTo(m_iStartY+j*m_iLarge +1, m_iStartX+i*m_iLarge +1);
				pDC -> LineTo(m_iStartY+(j+1)*m_iLarge -1,m_iStartX+i*m_iLarge +1);
				pDC -> MoveTo(m_iStartY+(j+1)*m_iLarge -1,m_iStartX+i*m_iLarge +1);
				pDC -> LineTo(m_iStartY+(j+1)*m_iLarge -1,m_iStartX+(i+1)*m_iLarge -1);

				//每個(gè)方塊填充綠色的背景 
				pDC -> Rectangle(m_iStartY+j*m_iLarge +2,m_iStartX+i*m_iLarge +2,m_iStartY+(j+1)*m_iLarge -2,m_iStartX+(i+1)*m_iLarge -2);

			}
		}

	//顯示游戲區(qū)域及游戲級(jí)別的漢字描述
	if (!m_bGameEnd)
	{
		pDC -> SetBkColor(BLACK);
		pDC -> SetTextColor(WHITE);
		pDC -> TextOut(m_iStartY+320, m_iStartX+220, "游戲區(qū)域大小:");
		pDC -> TextOut(m_iStartY+320, m_iStartX+240,m_strArea);

		pDC -> TextOut(m_iStartY+320, m_iStartX+280, "游戲級(jí)別:");
		pDC -> TextOut(m_iStartY+320, m_iStartX+300,m_strLevel);
	}
		
		
	//顯示總分
	if (!m_bGameEnd)
	{
		CString lsStr;	
		lsStr.Format("總分為:%d 分",m_iPerformance);
		pDC -> SetBkColor(BLACK);
		pDC -> SetTextColor(WHITE);
		pDC -> TextOut(m_iStartY+320, m_iStartX+180,lsStr);
	}

	//畫(huà)下一次將要出現(xiàn)的方塊,用于提示用戶
	if (!m_bGameEnd)
	{
		pDC -> SetBkColor(BLACK);
		pDC -> SetTextColor(WHITE);
		pDC -> TextOut(m_iStartY+320, m_iStartX,"下一個(gè)方塊:");
		
		for (UINT k=0;k<4;k++)
		{
			i = NextStatus[k][0];
		    j = NextStatus[k][1];

			//劃的方塊比規(guī)定的大小略微小一點(diǎn)
			//畫(huà)小方塊邊框黑線
			pDC -> SelectObject(blackPen);
			pDC -> MoveTo(m_iStartY+j*30 +1+320, m_iStartX+i*30 +1+30);
			pDC -> LineTo(m_iStartY+j*30 +1+320, m_iStartX+(i+1)*30 -1+30);
			pDC -> MoveTo(m_iStartY+j*30 +1+320,	m_iStartX+(i+1)*30 -1+30);
			pDC -> LineTo(m_iStartY+(j+1)*30 -1+320, m_iStartX+(i+1)*30 -1+30);

			//畫(huà)小方塊邊框白線
			pDC -> SelectObject(whitePen);
			pDC -> MoveTo(m_iStartY+j*30 +1+320,      m_iStartX+i*30 +1+30);
			pDC -> LineTo(m_iStartY+(j+1)*30 -1+320,  m_iStartX+i*30 +1+30);
			pDC -> MoveTo(m_iStartY+(j+1)*30 -1+320,  m_iStartX+i*30 +1+30);
			pDC -> LineTo(m_iStartY+(j+1)*30 -1+320,  m_iStartX+(i+1)*30 -1+30);

			//每個(gè)方塊填充藍(lán)色的背景 
			pDC -> Rectangle(m_iStartY+j*30 +2+320,m_iStartX+i*30 +2+30,
							 m_iStartY+(j+1)*30 -2+320,m_iStartX+(i+1)*30 -2+30);
		}
	}

//	pDC -> SelectObject(oldPen);
//	pDC -> SelectObject(oldBrush);
}

/////////////////////////////////////////////////////////////////////////////
// CHWRECTView diagnostics

#ifdef _DEBUG
void CHWRECTView::AssertValid() const
{
	CView::AssertValid();
}

void CHWRECTView::Dump(CDumpContext& dc) const
{
	CView::Dump(dc);
}

CHWRECTDoc* CHWRECTView::GetDocument() // non-debug version is inline
{
	ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CHWRECTDoc)));
	return (CHWRECTDoc*)m_pDocument;
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CHWRECTView message handlers



/* * * * * * * * * * * * * * * * * * * * * * * * *
*
*  名稱:OnTimer
*
*  功能:承擔(dān)所有驅(qū)動(dòng)工作
*
*  最后修改時(shí)間:1999.3.22
*
* * * * * * * * * * * * * * * * * * * * * * * * */
void CHWRECTView::OnTimer(UINT nIDEvent) 
{
	//如果原來(lái)的方塊已到底或游戲剛開(kāi)始,則掉下一個(gè)新的方塊
	int i,j,k;
	if (m_isBottom)
	{
		m_icurrentStatus = m_inextStatus;
		m_inextStatus = Random(7);  //得到下一次的方塊樣式
		if (m_inextStatus==0) m_inextStatus++;
		
		m_currentRect = m_icurrentStatus;   //當(dāng)前落下的方塊的形狀代碼
		RectStatusToActiveStatus( m_icurrentStatus );
		ActiveStatusToGameStatus();
		m_isBottom = FALSE;
		ActiveIsBottom();

		InvalidateCurrent();

		//在屏幕右邊顯示下一次將會(huì)出來(lái)的方塊的模樣
		RectStatusToNextStatus( m_inextStatus );
		CRect rect(m_iStartY+320, m_iStartX, m_iStartY+440, m_iStartX+160);
		InvalidateRect(&rect);

    	//判斷游戲是否已結(jié)束: 碰了底,且第1行有小方塊
		if (m_isBottom)
			for (i=0;i<m_iCol;i++)
				if (GameStatus[0][i])
				{
					KillTimer(1);
					AfxMessageBox("游戲已結(jié)束!");
					for (j=0;j<m_iRow;j++)
						for (k=0;k<m_iCol;k++)
							GameStatus[j][k]=0;
					Invalidate();
					m_bGameEnd = TRUE;
					break;
				}


	}
	else  //當(dāng)前方塊下降
	{
		RectDown();
	}

	
	CView::OnTimer(nIDEvent);
}


/* * * * * * * * * * * * * * * * * * * * * *
* 內(nèi)部函數(shù):產(chǎn)生一個(gè)最大值不大于指定值的隨機(jī)整數(shù)(Random)
*
* 參數(shù):MaxNumber : 隨機(jī)數(shù)的上限
* 
* 返回值: 產(chǎn)生的隨機(jī)數(shù)
*
* 最后修改日期:1999.1.22
* * * * * * * * * * * * * * * * * * * * * */
int CHWRECTView::Random(int MaxNumber)
{
	int currentClock = (int)clock();
	srand(currentClock);
	return (rand() % MaxNumber);
}


/* * * * * * * * * * * * * * * * * * * * * *
* 內(nèi)部函數(shù):將當(dāng)前動(dòng)態(tài)數(shù)組中的數(shù)據(jù)反映到大數(shù)組中
*
* 最后修改日期:1999.1.22
* * * * * * * * * * * * * * * * * * * * * */
void CHWRECTView::ActiveStatusToGameStatus()
{
	int x1,x2,x3,x4,y1,y2,y3,y4;
	x1 = ActiveStatus[0][0];
	x2 = ActiveStatus[1][0];
	x3 = ActiveStatus[2][0];
	x4 = ActiveStatus[3][0];
	y1 = ActiveStatus[0][1];
	y2 = ActiveStatus[1][1];
	y3 = ActiveStatus[2][1];
	y4 = ActiveStatus[3][1];
	GameStatus[x1][y1]=1;
	GameStatus[x2][y2]=1;
	GameStatus[x3][y3]=1;
	GameStatus[x4][y4]=1;
}

/* * * * * * * * * * * * * * * * * * * * * *
* 內(nèi)部函數(shù):初始掉落時(shí),將根據(jù)方塊的樣式?jīng)Q定當(dāng)前動(dòng)態(tài)數(shù)組的值
*
* 最后修改日期:1999.1.22
* * * * * * * * * * * * * * * * * * * * * */
void CHWRECTView::RectStatusToActiveStatus(int m_which)
{
	switch(m_which)
	{
	case 1:
		ActiveStatus[0][0] = 0;	ActiveStatus[0][1] = 5;	ActiveStatus[1][0] = 1;	ActiveStatus[1][1] = 5;
		ActiveStatus[2][0] = 2;	ActiveStatus[2][1] = 5;	ActiveStatus[3][0] = 3;	ActiveStatus[3][1] = 5;
		break;
	case 2:
		ActiveStatus[0][0] = 0;	ActiveStatus[0][1] = 5;	ActiveStatus[1][0] = 1;	ActiveStatus[1][1] = 5;
		ActiveStatus[2][0] = 0;	ActiveStatus[2][1] = 6;	ActiveStatus[3][0] = 1;	ActiveStatus[3][1] = 6;
		break;
	case 3:
		ActiveStatus[0][0] = 1;	ActiveStatus[0][1] = 4;	ActiveStatus[1][0] = 0;	ActiveStatus[1][1] = 5;
		ActiveStatus[2][0] = 1;	ActiveStatus[2][1] = 5;	ActiveStatus[3][0] = 1;	ActiveStatus[3][1] = 6;
		break;
	case 4:
		ActiveStatus[0][0] = 0;	ActiveStatus[0][1] = 5;	ActiveStatus[1][0] = 1;	ActiveStatus[1][1] = 5;
		ActiveStatus[2][0] = 1;	ActiveStatus[2][1] = 6;	ActiveStatus[3][0] = 2;	ActiveStatus[3][1] = 6;
		break;
	case 5:
		ActiveStatus[0][0] = 1;	ActiveStatus[0][1] = 5;	ActiveStatus[1][0] = 2;	ActiveStatus[1][1] = 5;
		ActiveStatus[2][0] = 0;	ActiveStatus[2][1] = 6;	ActiveStatus[3][0] = 1;	ActiveStatus[3][1] = 6;
		break;
	case 6:
		ActiveStatus[0][0] = 0;	ActiveStatus[0][1] = 5;	ActiveStatus[1][0] = 0;	ActiveStatus[1][1] = 6;
		ActiveStatus[2][0] = 1;	ActiveStatus[2][1] = 6;	ActiveStatus[3][0] = 2;	ActiveStatus[3][1] = 6;
		break;
	case 7:
		ActiveStatus[0][0] = 0;	ActiveStatus[0][1] = 5;	ActiveStatus[1][0] = 1;	ActiveStatus[1][1] = 5;
		ActiveStatus[2][0] = 2;	ActiveStatus[2][1] = 5;	ActiveStatus[3][0] = 0;	ActiveStatus[3][1] = 6;
		break;
	}
}

/* * * * * * * * * * * * * * * * * * * * * *
* 內(nèi)部函數(shù):初始掉落時(shí),將根據(jù)方塊的樣式?jīng)Q定下一次將要掉下來(lái)的動(dòng)態(tài)數(shù)組的值
*
* 最后修改日期:1999.1.22
* * * * * * * * * * * * * * * * * * * * * */
void CHWRECTView::RectStatusToNextStatus(int m_which)
{
	switch(m_which)
	{
	case 1:
		NextStatus[0][0] = 0;	NextStatus[0][1] = 1;	NextStatus[1][0] = 1;	NextStatus[1][1] = 1;
		NextStatus[2][0] = 2;	NextStatus[2][1] = 1;	NextStatus[3][0] = 3;	NextStatus[3][1] = 1;
		break;
	case 2:
		NextStatus[0][0] = 0;	NextStatus[0][1] = 1;	NextStatus[1][0] = 1;	NextStatus[1][1] = 1;
		NextStatus[2][0] = 0;	NextStatus[2][1] = 2;	NextStatus[3][0] = 1;	NextStatus[3][1] = 2;
		break;
	case 3:
		NextStatus[0][0] = 1;	NextStatus[0][1] = 0;	NextStatus[1][0] = 0;	NextStatus[1][1] = 1;
		NextStatus[2][0] = 1;	NextStatus[2][1] = 1;	NextStatus[3][0] = 1;	NextStatus[3][1] = 2;
		break;
	case 4:
		NextStatus[0][0] = 0;	NextStatus[0][1] = 1;	NextStatus[1][0] = 1;	NextStatus[1][1] = 1;
		NextStatus[2][0] = 1;	NextStatus[2][1] = 2;	NextStatus[3][0] = 2;	NextStatus[3][1] = 2;
		break;
	case 5:
		NextStatus[0][0] = 1;	NextStatus[0][1] = 1;	NextStatus[1][0] = 2;	NextStatus[1][1] = 1;
		NextStatus[2][0] = 0;	NextStatus[2][1] = 2;	NextStatus[3][0] = 1;	NextStatus[3][1] = 2;
		break;
	case 6:
		NextStatus[0][0] = 0;	NextStatus[0][1] = 1;	NextStatus[1][0] = 0;	NextStatus[1][1] = 2;
		NextStatus[2][0] = 1;	NextStatus[2][1] = 2;	NextStatus[3][0] = 2;	NextStatus[3][1] = 2;
		break;
	case 7:
		NextStatus[0][0] = 0;	NextStatus[0][1] = 1;	NextStatus[1][0] = 1;	NextStatus[1][1] = 1;
		NextStatus[2][0] = 2;	NextStatus[2][1] = 1;	NextStatus[3][0] = 0;	NextStatus[3][1] = 2;
		break;
	}
}

/* * * * * * * * * * * * * * * * * * * * * *
* 內(nèi)部函數(shù):當(dāng)前方塊下降
*
* 最后修改日期:1999.1.22
* * * * * * * * * * * * * * * * * * * * * */
void CHWRECTView::RectDown()
{
	ActiveIsBottom();
	if (!m_isBottom)
	{
		//清除以前的方塊
		int x1,x2,x3,x4,y1,y2,y3,y4;
		x1 = ActiveStatus[0][0];
		x2 = ActiveStatus[1][0];
		x3 = ActiveStatus[2][0];
		x4 = ActiveStatus[3][0];

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久久久亚洲综合| 午夜精品成人在线| 亚洲综合免费观看高清完整版在线| 午夜激情一区二区| 北条麻妃一区二区三区| 8x福利精品第一导航| 亚洲欧洲精品一区二区三区| 日本成人超碰在线观看| 91在线视频观看| 国产欧美一区二区三区沐欲 | 9久草视频在线视频精品| 在线成人小视频| 亚洲人快播电影网| 成人网在线免费视频| 精品美女在线观看| 日韩—二三区免费观看av| www.色综合.com| 欧美国产亚洲另类动漫| 国产在线不卡视频| 欧美成人r级一区二区三区| 亚洲国产精品精华液网站| www.亚洲色图.com| 国产精品免费aⅴ片在线观看| 免费一级片91| 日韩亚洲欧美在线观看| 天天操天天色综合| 欧美久久久影院| 亚洲午夜在线观看视频在线| 91视频国产观看| 亚洲女人小视频在线观看| 99在线热播精品免费| 国产精品毛片高清在线完整版| 国产一区二区在线观看视频| 精品日韩欧美在线| 久久激情五月婷婷| 亚洲精品在线观看视频| 韩国一区二区三区| 国产日韩欧美不卡| 大美女一区二区三区| 中文字幕一区在线观看视频| www..com久久爱| 一区二区三区在线观看动漫| 欧美性videosxxxxx| 午夜国产不卡在线观看视频| 欧美一区二区精品在线| 美女诱惑一区二区| 国产亚洲欧美激情| 波多野结衣一区二区三区| 亚洲精品午夜久久久| 欧美日韩国产123区| 美国欧美日韩国产在线播放| 欧美xxxx老人做受| 高清av一区二区| 一区二区三区四区在线| 欧美日韩国产免费一区二区| 美女视频黄久久| 国产三级欧美三级| 色婷婷久久久亚洲一区二区三区 | 欧美韩国日本一区| 91玉足脚交白嫩脚丫在线播放| 亚洲一线二线三线视频| 欧美一区三区二区| 成人一级视频在线观看| 亚洲精品美腿丝袜| 精品少妇一区二区| 国产91精品精华液一区二区三区 | 中文久久乱码一区二区| 色欧美日韩亚洲| 蜜桃久久久久久久| 综合久久国产九一剧情麻豆| 91精品国产入口在线| 国产成人激情av| 亚洲国产成人91porn| 国产拍揄自揄精品视频麻豆| 欧美午夜一区二区| 国产在线国偷精品免费看| 亚洲欧美视频在线观看视频| 日韩一区二区不卡| 色呦呦国产精品| 精品在线亚洲视频| 亚洲亚洲精品在线观看| 国产日韩综合av| 欧美一区二区三区色| 99精品偷自拍| 精品一区二区免费在线观看| 亚洲精品乱码久久久久久| 久久综合九色综合欧美98| 色菇凉天天综合网| 国产不卡在线播放| 丝袜亚洲另类欧美| 一级做a爱片久久| 国产欧美精品区一区二区三区| 欧美性色黄大片手机版| 成人国产精品免费| 国内精品伊人久久久久av一坑| 亚洲精品水蜜桃| 欧美国产97人人爽人人喊| 日韩欧美在线网站| 777奇米四色成人影色区| 91高清在线观看| youjizz国产精品| 国产精品一二三四五| 久久精品国产网站| 麻豆91在线观看| 性做久久久久久免费观看欧美| 日韩美女精品在线| 国产精品麻豆一区二区| 国产欧美日韩不卡免费| 久久精品无码一区二区三区| 精品欧美乱码久久久久久| 欧美激情在线一区二区三区| 欧美videos中文字幕| 欧美一级黄色录像| 日韩欧美国产综合一区| 欧美精品v国产精品v日韩精品| 91久久精品一区二区二区| 在线视频观看一区| 在线观看一区日韩| 欧美三级电影精品| 欧美日韩亚洲另类| 欧美妇女性影城| 91精品国产综合久久香蕉麻豆| 欧美男男青年gay1069videost | 亚洲美女视频一区| 亚洲免费观看视频| 亚洲国产日韩精品| 男人的天堂亚洲一区| 久久99久久久久| 国产在线精品一区在线观看麻豆| 经典三级一区二区| 风间由美中文字幕在线看视频国产欧美| 国产精品91一区二区| 成人一区在线观看| 欧洲国内综合视频| 日韩小视频在线观看专区| 26uuuu精品一区二区| 久久精品在这里| 亚洲免费观看高清在线观看| 亚洲二区视频在线| 欧美三日本三级三级在线播放| 欧美日韩亚洲不卡| 精品粉嫩aⅴ一区二区三区四区| 日韩免费视频一区二区| 欧美国产精品中文字幕| 亚洲在线免费播放| 久久激情综合网| 91丨九色丨尤物| 欧美一区二区三区四区五区 | 亚洲欧美自拍偷拍| 亚洲午夜久久久久中文字幕久| 免费在线观看视频一区| 成人小视频免费在线观看| 欧美亚洲一区二区在线观看| 日韩一卡二卡三卡四卡| 国产精品福利一区| 美女网站在线免费欧美精品| 成人午夜精品在线| 91精品欧美综合在线观看最新| 国产日韩欧美高清| 五月激情丁香一区二区三区| 成人免费精品视频| 91精品国产色综合久久不卡电影| 国产精品天天看| 日日夜夜一区二区| 91影院在线免费观看| 日韩免费一区二区三区在线播放| 一区免费观看视频| 韩国av一区二区三区| 91久久精品一区二区| 国产午夜精品久久久久久久| 日韩成人av影视| 色噜噜狠狠色综合欧洲selulu| 久久久久久久久99精品| 视频在线观看一区| 色综合久久88色综合天天| 久久久亚洲精品石原莉奈| 天天色综合成人网| 欧美亚洲另类激情小说| 中文字幕制服丝袜一区二区三区 | 国产在线播放一区二区三区| 在线免费观看日韩欧美| 国产日韩成人精品| 极品少妇一区二区三区精品视频| 欧美日韩一区二区欧美激情 | 99久久免费精品高清特色大片| 日韩视频在线永久播放| 亚洲成人激情社区| 欧美午夜精品久久久久久孕妇| 国产精品区一区二区三区| 国产精品资源在线观看| 精品国产欧美一区二区| 免费在线观看不卡| 日韩片之四级片| 三级欧美在线一区| 欧美日本韩国一区| 亚洲第四色夜色| 欧美精品tushy高清| 午夜av区久久| 欧美一区二区在线免费播放| 香蕉久久一区二区不卡无毒影院 |