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

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

?? gameframe.cpp

?? 一個(gè)用VC開(kāi)發(fā)的完整的俄羅斯方塊游戲源程序代碼。
?? CPP
字號(hào):
// GameFrame.cpp : implementation file
//

#include "stdafx.h"
#include "gameres.h"
#include "GameFrame.h"
#include "diamond.h"
#include "board.h"

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

/////////////////////////////////////////////////////////////////////////////
// CGameFrame
IMPLEMENT_DYNCREATE(CGameFrame, CFrameWnd)
#define MODEL_NUMBER 19
#define MODEL_TYPE_NUMBER 7
CBitmap backpic;
CBitmap backgroundpic;
CBitmap diamondpic;
CBitmap boardpic;
CDC backDC;
CDC backgroundDC;
CDC diamondDC;
CDC boardDC;
CBoard board;
CDiamond DiaModel[MODEL_NUMBER];
CDiamond *oldDiamond=NULL;
int m_Total=0,m_Marks=0,m_Level=0;
char newdata[MODEL_NUMBER][16]={0,0,0,0, 1,1,1,0, 0,1,0,0, 0,0,0,0,//T1(0)
					0,1,0,0, 0,1,1,0, 0,1,0,0, 0,0,0,0,//T2(1)
					0,1,0,0, 1,1,1,0, 0,0,0,0, 0,0,0,0,//T3(2)
					0,1,0,0, 1,1,0,0, 0,1,0,0, 0,0,0,0,//T4(3)
					0,0,0,0, 1,1,1,1, 0,0,0,0, 0,0,0,0,//|1(4)
					0,1,0,0, 0,1,0,0, 0,1,0,0, 0,1,0,0,//|2(5)
					1,1,0,0, 0,1,1,0, 0,0,0,0, 0,0,0,0,//Z1(6)
					0,1,0,0, 1,1,0,0, 1,0,0,0, 0,0,0,0,//Z2(7)
					1,1,0,0, 1,1,0,0, 0,0,0,0, 0,0,0,0,//O1(8)
					0,1,1,0, 0,1,1,0, 0,0,0,0, 0,0,0,0,//BZ1(9)
					1,0,0,0, 1,1,0,0, 0,1,0,0, 0,0,0,0,//BZ2(10)
					0,1,0,0, 0,1,0,0, 0,1,1,0, 0,0,0,0,//L1(11)
					0,0,0,0, 0,0,1,0, 1,1,1,0, 0,0,0,0,//L2(12)
					1,1,0,0, 0,1,0,0, 0,1,0,0, 0,0,0,0,//L3(13)
					0,0,0,0, 1,1,1,0, 1,0,0,0, 0,0,0,0,//L4(14)
					0,1,0,0, 0,1,0,0, 1,1,0,0, 0,0,0,0,//BL(15)
					0,0,0,0, 1,1,1,0, 0,0,1,0, 0,0,0,0,//BL(16)
					1,1,0,0, 1,0,0,0, 1,0,0,0, 0,0,0,0,//BL(17)
					0,1,0,0, 0,1,1,1, 0,0,0,0, 0,0,0,0,//BL(18)
};
char newlimit[MODEL_NUMBER][16]={0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0,//T1
					0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0,//T2
					0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0,//T3
					0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0,//T4
					0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0,//|1
					0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0,//|2
					0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0,//Z1
					0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0,//Z2
					0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0,//O1
					0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0,//BZ1
					0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0,//BZ2
					0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0,//L1
					0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0,//L2
					0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0,//L3
					0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0,//L4
};

CGameFrame::CGameFrame()
{
	CRect rect;
	Create(NULL,"Game");
	rect.bottom=435;rect.right=310;
	rect.top=0;rect.left=0;
	MoveWindow(rect,true);
}

CGameFrame::~CGameFrame()
{
}


BEGIN_MESSAGE_MAP(CGameFrame, CFrameWnd)
	//{{AFX_MSG_MAP(CGameFrame)
	ON_WM_KEYDOWN()
	ON_WM_CREATE()
	ON_WM_TIMER()
	ON_WM_CLOSE()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CGameFrame message handlers

void CGameFrame::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags) 
{
	char temp[16][10];
	CString s;
	int x,y;
	board.GetDiamond()->GetPoint(x,y);
	board.GetBoard(temp);
	if(nChar==VK_DOWN) SetTimer(1,20,NULL);
	if(nChar==VK_RIGHT) board.GetDiamond()->MoveR(temp);
	if(nChar==VK_LEFT) board.GetDiamond()->MoveL(temp);
	if(nChar==VK_UP) board.TransFram(temp);
	Show();
	CFrameWnd::OnKeyDown(nChar, nRepCnt, nFlags);
}

int CGameFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{
	if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
		return -1;
	
	// TODO: Add your specialized creation code here
	CClientDC dc(this);
	
	backpic.m_hObject=(HBITMAP)::LoadImage(NULL,"background8.bmp",
		IMAGE_BITMAP,300,400,LR_LOADFROMFILE);
//	backpic.LoadBitmap(IDB_BOARD);
	backgroundpic.m_hObject=(HBITMAP)::LoadImage(NULL,"background8.bmp",
		IMAGE_BITMAP,300,400,LR_LOADFROMFILE);
//	backgroundpic.LoadBitmap(IDB_BOARD);
	diamondpic.m_hObject=(HBITMAP)::LoadImage(NULL,"diamond8.bmp",
		IMAGE_BITMAP,20,20,LR_LOADFROMFILE);
//	diamondpic.LoadBitmap(IDB_B2);
	boardpic.m_hObject=(HBITMAP)::LoadImage(NULL,"board8.bmp",
		IMAGE_BITMAP,20,20,LR_LOADFROMFILE);
//	boardpic.LoadBitmap(IDB_B1);
	backDC.CreateCompatibleDC(&dc);
	backgroundDC.CreateCompatibleDC(&dc);
	diamondDC.CreateCompatibleDC(&dc);
	boardDC.CreateCompatibleDC(&dc);
	backDC.SelectObject(backpic);
	backgroundDC.SelectObject(backgroundpic);
	diamondDC.SelectObject(diamondpic);
	boardDC.SelectObject(boardpic);
	LoadDiamond();
	SetTimer(1,400,NULL);
	Sent();
	return 0;
}
void CGameFrame::LoadDiamond(void)
{
	for(int i=0;i<MODEL_NUMBER;i++)
	{
		DiaModel[i].SetData(newdata,i);
		DiaModel[i].SetLimit(newlimit,i);
	}
	DiaModel[0].Link(&DiaModel[1]);//t
	DiaModel[1].Link(&DiaModel[2]);//t
	DiaModel[2].Link(&DiaModel[3]);//t
	DiaModel[3].Link(&DiaModel[0]);//t

	DiaModel[4].Link(&DiaModel[5]);//|
	DiaModel[5].Link(&DiaModel[4]);//|

	DiaModel[6].Link(&DiaModel[7]);//Z
	DiaModel[7].Link(&DiaModel[6]);//Z

	DiaModel[8].Link(&DiaModel[8]);//O

	DiaModel[9].Link(&DiaModel[10]);//BZ
	DiaModel[10].Link(&DiaModel[9]);//BZ

	DiaModel[11].Link(&DiaModel[12]);//L
	DiaModel[12].Link(&DiaModel[13]);//L
	DiaModel[13].Link(&DiaModel[14]);//L
	DiaModel[14].Link(&DiaModel[11]);//L

	DiaModel[15].Link(&DiaModel[16]);//BL
	DiaModel[16].Link(&DiaModel[17]);//BL
	DiaModel[17].Link(&DiaModel[18]);//BL
	DiaModel[18].Link(&DiaModel[15]);//BL

}
void CGameFrame::Sent(void)
{
	int n;
	bool IsNull=0;
	if(oldDiamond!=NULL) 
		board.NewDiamond(oldDiamond);
	else IsNull=1;
	n=rand()%MODEL_TYPE_NUMBER;
	switch(n)
	{
		case 0:
			oldDiamond=&DiaModel[0];
			break;
		case 1:
			oldDiamond=&DiaModel[4];
			break;
		case 2:
			oldDiamond=&DiaModel[7];
			break;
		case 3:
			oldDiamond=&DiaModel[8];
			break;
		case 4:
			oldDiamond=&DiaModel[9];
			break;
		case 5:
			oldDiamond=&DiaModel[11];
			break;
		case 6:
			oldDiamond=&DiaModel[15];
			break;
	}
	if(IsNull)
		board.NewDiamond(oldDiamond);
}

void CGameFrame::Show(void)
{
	CClientDC ShowDC(this);
	char ShowData[16][10],ShowDia[4][4],ShowOldDia[4][4];
	int DiaX,DiaY,i,j;
	int x=5,y=75;
	CString SLevel,STotal,SMarks;
	board.GetDiamond()->GetData(ShowDia);
	backDC.BitBlt(0,0,300,400,&backgroundDC,0,0,SRCCOPY);
	if(oldDiamond!=NULL) oldDiamond->GetData(ShowOldDia);
	for(i=0;i<4;i++)
		for(j=0;j<4;j++)
		{
			board.GetDiamond()->GetPoint(DiaX,DiaY);
			if(ShowDia[i][j]!=0) backDC.BitBlt(x+j*20+DiaX*20,y+i*20+20*DiaY,20,20,&diamondDC,0,0,SRCCOPY);
		
		}
	for(i=0;i<4;i++)
		for(j=0;j<4;j++)
		{
			if(ShowOldDia[i][j]!=0) backDC.BitBlt(j*20+212,i*20+80,20,20,&diamondDC,0,0,SRCCOPY);
	
		}
	board.GetBoard(ShowData);

	for(i=0;i<16;i++)
		for(j=0;j<10;j++)
			if(ShowData[i][j]!=0) backDC.BitBlt(x+j*20,y+i*20,20,20,&boardDC,0,0,SRCCOPY);
	SLevel.Format("%-7d",m_Level);
	STotal.Format("%-7d",m_Total);
	SMarks.Format("%-7d",m_Marks);
	backDC.TextOut(225,212,SLevel);
	backDC.TextOut(225,286,STotal);
	backDC.TextOut(225,361,SMarks);
	ShowDC.BitBlt(0,0,300,400,&backDC,0,0,SRCCOPY);

}

void CGameFrame::OnTimer(UINT nIDEvent) 
{
	// TODO: Add your message handler code here and/or call default
	char temp[16][10];
	board.GetBoard(temp);
	board.GetDiamond()->Floor(temp);
	Show();
	if(board.Touch(temp)) 
	{
		board.AddDiamond();
		m_Marks=board.Judge();
		m_Marks=m_Marks*m_Marks*100;
		m_Total+=m_Marks;
		m_Level=m_Total/3000;
		if(m_Level==9) 
		{
			SetTimer(1,100000,NULL);
			MessageBox("你真NB!");
			exit(1);
		}
		Sent();
		if(board.Die()) 
		{
			SetTimer(1,100000,NULL);
			MessageBox("      游戲結(jié)束!\n歡迎玩Agent俄羅斯方塊");
			exit(1);
		}
		SetTimer(1,600-m_Level*50,NULL);
	}
	CFrameWnd::OnTimer(nIDEvent);
}

void CGameFrame::OnClose() 
{
	// TODO: Add your message handler code here and/or call default
	MessageBox("歡迎玩Agent俄羅斯方塊");
	
	CFrameWnd::OnClose();
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区不卡在线| 91丨porny丨国产| 午夜av电影一区| 亚洲三级免费观看| 91在线观看污| 国产大片一区二区| 精品一区二区三区在线观看| 亚洲欧美日韩国产中文在线| 亚洲国产精品二十页| 久久综合狠狠综合久久激情| 欧美一区二区三区精品| 欧美日韩国产一区| 色综合久久88色综合天天6| 成人动漫av在线| 久久精品国产网站| 爽好久久久欧美精品| 亚洲午夜免费电影| 一区二区三区欧美| 亚洲美女视频一区| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 久久亚洲精品国产精品紫薇 | 日韩三级av在线播放| 91.xcao| 91精品国产综合久久福利软件| 欧美日韩国产首页在线观看| 欧美在线一区二区| 欧美日韩另类一区| 欧美二区乱c少妇| 欧美一区二区高清| 日韩欧美一区中文| 精品国内二区三区| 久久精品人人做人人综合| 在线成人免费观看| 精品欧美黑人一区二区三区| 精品国产sm最大网站| 精品国产亚洲在线| 国产亚洲综合在线| 国产精品国产自产拍高清av王其| 久久伊99综合婷婷久久伊| xfplay精品久久| 亚洲国产激情av| 欧美精彩视频一区二区三区| 国产精品久久久99| 一区二区激情小说| 日本一不卡视频| 国产精品正在播放| 91在线视频播放| 欧美性猛交xxxxxx富婆| 日韩一区二区电影| 欧美国产欧美综合| 亚洲一区二区三区影院| 日本午夜精品视频在线观看| 国产精品18久久久久久久久 | 在线播放欧美女士性生活| 国产亚洲欧美日韩在线一区| 亚洲国产精品一区二区久久恐怖片| 美女网站视频久久| 欧美在线免费视屏| 中文字幕+乱码+中文字幕一区| 亚洲成人免费看| 成人性生交大片免费看视频在线| 7777精品伊人久久久大香线蕉超级流畅 | 欧美一区二区高清| 亚洲日本欧美天堂| 国产激情一区二区三区四区| 欧洲一区在线观看| 国产精品久久久久四虎| 久久99久久精品| 在线精品视频免费播放| 欧美激情一二三区| 久久99精品国产.久久久久久| 91在线视频免费观看| 久久久久久久久久久黄色| 日韩中文字幕麻豆| 日本久久一区二区三区| 亚洲国产精品ⅴa在线观看| 丝袜亚洲另类欧美| 91在线播放网址| 久久久久久久久久久久久久久99| 日日夜夜免费精品| 欧美丝袜自拍制服另类| 国产精品你懂的| 国产乱色国产精品免费视频| 91麻豆精品国产无毒不卡在线观看 | 欧美一区二区国产| 亚洲国产中文字幕| 一道本成人在线| 日韩美女视频一区| 成人激情图片网| 久久久久99精品一区| 精品一区二区av| 欧美久久久久久久久| 亚洲永久精品国产| 一本到高清视频免费精品| 国产精品国产三级国产aⅴ中文 | 色吊一区二区三区| 国产精品白丝在线| 国产美女精品在线| 久久综合久久综合久久综合| 久草在线在线精品观看| 日韩欧美专区在线| 久久99最新地址| 日韩午夜激情免费电影| 美女视频黄免费的久久 | 欧美成人r级一区二区三区| 日韩精品成人一区二区三区| 欧美日韩成人在线一区| 日韩高清在线观看| 91精品国产色综合久久久蜜香臀| 日韩va亚洲va欧美va久久| 8x福利精品第一导航| 日本最新不卡在线| 精品欧美乱码久久久久久1区2区| 国产真实乱子伦精品视频| 久久久99精品久久| jlzzjlzz亚洲女人18| 亚洲欧洲精品一区二区三区| 91视频xxxx| 亚洲午夜国产一区99re久久| 69成人精品免费视频| 国内精品久久久久影院一蜜桃| 久久综合精品国产一区二区三区 | 欧美网站大全在线观看| 天天色图综合网| 欧美电影免费观看高清完整版在线观看| 美腿丝袜亚洲综合| 欧美国产精品专区| 欧美综合久久久| 日韩精品久久理论片| 久久亚洲一级片| 成人国产精品免费网站| 亚洲免费观看高清完整版在线观看熊| 欧美午夜在线观看| 美腿丝袜亚洲三区| 中文字幕欧美日本乱码一线二线| 波波电影院一区二区三区| 亚洲一区二区三区四区在线免费观看 | 国产福利精品导航| 日韩久久一区二区| 欧美一级片在线| 成人午夜电影小说| 亚洲国产成人porn| 精品国产a毛片| 91视频一区二区| 美国三级日本三级久久99| 中文字幕巨乱亚洲| 欧美日韩中文字幕精品| 黑人巨大精品欧美黑白配亚洲| 中文字幕第一页久久| 欧美伊人久久久久久久久影院| 久久精品久久99精品久久| 国产精品毛片高清在线完整版| 欧美四级电影网| 国产.欧美.日韩| 亚洲成av人在线观看| 国产在线一区观看| 亚洲麻豆国产自偷在线| 日韩免费福利电影在线观看| 99免费精品在线| 蜜臀av一级做a爰片久久| 国产精品女主播av| 7777精品伊人久久久大香线蕉 | 成人免费看视频| 香蕉加勒比综合久久| 国产欧美日韩三区| 欧美视频精品在线观看| 国产98色在线|日韩| 午夜精品一区二区三区免费视频| 久久精品一区二区三区不卡 | 又紧又大又爽精品一区二区| 精品理论电影在线| 在线精品观看国产| 成人一区二区三区| 精品一区二区在线播放| 五月婷婷综合网| 亚洲三级免费电影| 国产人成一区二区三区影院| 欧美精品v国产精品v日韩精品| 99精品偷自拍| 国产一二三精品| 日本成人在线一区| 一区二区三区四区不卡在线| 欧美精彩视频一区二区三区| 日韩欧美中文字幕公布| 欧美精品一级二级三级| 色综合网站在线| 99久久精品国产观看| 成人污视频在线观看| 经典一区二区三区| 日韩不卡一二三区| 午夜欧美大尺度福利影院在线看| 亚洲日本va在线观看| 国产欧美日韩视频在线观看| 日韩精品一区在线| 欧美电视剧在线观看完整版| 欧美一区二区在线播放| 欧美久久久一区| 欧美精品在线观看播放| 欧美日韩国产在线播放网站| 欧美视频在线播放|