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

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

?? hgameview.h

?? 貪吃蛇
?? H
字號:
// HGAMEView.h : CHGAMEView 類的接口
//


#pragma once
// 宏變量:白色和黑色
#define WHITE RGB(255,255,255)
#define BLACK RGB(0,0,0)
#define BLUE RGB(0,0,255)

//中斷操作的運(yùn)動(dòng)趨勢
#define LEFT  0      //向左移動(dòng)
#define RIGHT 1      //向左移動(dòng)
#define UP    2		//向上(變形)      
#define DOWN  3      //向下移動(dòng)(加速)

//游戲區(qū)域地圖最大限制
#define  MAX_ROW    100     //地圖的最大行數(shù)
#define  MAX_COL    100      //地圖的最大列數(shù)

//地圖狀態(tài)
#define MAP_STATE_EMPTY             0    //空(未被占據(jù))
#define MAP_STATE_NOT_EMPTY         1    //被占據(jù)

class CHGAMEView : public CView
{
protected: // 僅從序列化創(chuàng)建
	CHGAMEView();
	DECLARE_DYNCREATE(CHGAMEView)

// 屬性
public:
	CHGAMEDoc* GetDocument() const;

// 操作
public:

// 重寫
public:
	virtual void OnDraw(CDC* pDC);  // 重寫以繪制該視圖
	virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
protected:
	int m_nWidth;  //子窗口的寬度
	int m_nHeight; //子窗口的高度

	//列與行的數(shù)量
	int m_iCol;
	int m_iRow;

	//小方塊的大小,它會(huì)隨著行與列的不同而不同,具體為:
	// 12行10列,30個(gè)象素的正方形
	// 18行15列,20
	// 24行20列,15
	// 30行25列,12
	int m_iLarge;

	//當(dāng)前的級別,換算成速度的算法為:1500 - m_iLevel*200
	int m_iLevel;
	//當(dāng)前選擇的方塊顯示樣式
	int m_iBlockSytle;

	//游戲區(qū)域左上角的坐標(biāo)
	int m_iStartX;
	int m_iStartY;

	void RectChange();
	BOOL IsLeftLimit();       //下墜物件是否可向左移動(dòng)
	BOOL IsRightLitmit();

	//接觸面二維數(shù)組,記錄1~7種下墜物的1~4種形態(tài)的接觸面信息
	//我們把該下墜物的某種形態(tài)種的4個(gè)方塊,有接觸面則記錄方位,無則為-1標(biāo)識(shí)。
	int InterFace[74][4];
	
	//當(dāng)前的方塊形狀
	int m_currentRect;

	//判斷當(dāng)前方塊是否到底

void IsBottom();
	//當(dāng)前方塊下降
	void RectDown();

	//當(dāng)前方塊加速:UP,左移:LEFT,右移:RIGHT
	void RectArrow(int m_Type);
	
//根據(jù)下墜物的類型映射出它的具體形態(tài)  功能組
//根據(jù)舊的下一下墜物映射出當(dāng)前激活狀態(tài)下的下墜物形態(tài)
	void RectStatusToActiveStatus(int m_which); 
//根據(jù)下墜物形態(tài)映射出下一下墜物的形態(tài)
	void RectStatusToNextStatus(int m_which); 
//將當(dāng)前的狀態(tài)映射到地圖游戲區(qū)域
	void ActiveStatusToGameStatus(); 


	int Random(int MaxNumber);
	//標(biāo)識(shí)方塊已到底的變量,到底為TRUE
	BOOL m_isBottom;

	//用于標(biāo)志方塊狀態(tài)的數(shù)組,大小由橫格與豎格數(shù)據(jù)決定,為1表示該方塊顯示,或者不顯示
	//畫形狀只需要修改數(shù)組中相應(yīng)元素的狀態(tài)值即可
	//由時(shí)鐘控制,定時(shí)在OnPaint函數(shù)中根據(jù)數(shù)組畫方塊
	int GameStatus[MAX_ROW][MAX_COL];

	//用于保存當(dāng)前方塊的動(dòng)態(tài)位置,4個(gè)小方塊分別在大數(shù)組中的位置
	//存放位置為先左后右,每一列又遵循先上后下的原則
	int ActiveStatus[4][2];

	//存入下一次要出來的方塊的模樣的數(shù)組
	int NextStatus[4][2];
    
	BOOL m_bGamePaush;
	void CurrentAreaAndLevel();
	//用于記錄當(dāng)前區(qū)域大小與當(dāng)前級別的字符串,用于顯示在屏幕上提示用戶當(dāng)前狀態(tài)
	CString m_strArea;
	CString m_strLevel;

	//當(dāng)前的樣式 ,下一個(gè)將會(huì)出現(xiàn)的樣式
	int m_icurrentStatus;
	int m_inextStatus;

	//OnDraw中需要用到的設(shè)備名稱
	CPen *m_pBlackPen;
	CBrush *m_pGrayBrush;
	CBrush *m_pBlackBrush;

	//是否畫網(wǎng)格線
	BOOL m_bDrawGrid;


	//游戲總成績
	int m_iPerformance;

	//游戲是否已結(jié)束,為FALSE表示開始,否則為結(jié)束
	BOOL m_bGameEnd;
	
	//刷新指定的區(qū)域,它的大小為:四個(gè)小方塊所在的正方形的大小
	void InvalidateCurrent();

	//內(nèi)存繪圖設(shè)備的處理
	CDC m_memDC;                   //內(nèi)存設(shè)備環(huán)境 
	CBitmap m_memBmp;              //內(nèi)存位圖

	CDC m_memRectDC;       //方塊內(nèi)存設(shè)備環(huán)境
	HBITMAP m_hMemRectBmp;  //方塊內(nèi)存位圖句柄

	int m_bFistPlay;               //是否是第一次開始游戲
	void DcEnvInitial(void); 
	void DCEnvClear(void);
	void DrawGame(CDC *pDC);

// 實(shí)現(xiàn)
public:
	virtual ~CHGAMEView();
#ifdef _DEBUG
	virtual void AssertValid() const;
	virtual void Dump(CDumpContext& dc) const;
#endif

protected:

// 生成的消息映射函數(shù)
protected:
	afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
	afx_msg void OnTimer(UINT nIDEvent);
	afx_msg void OnGameStart();
	afx_msg void OnGameEnd();
	afx_msg void OnUpdateGameStart(CCmdUI* pCmdUI);
	afx_msg void OnUpdateGameOption(CCmdUI* pCmdUI);
	afx_msg void OnUpdateGameEnd(CCmdUI* pCmdUI);
	afx_msg void OnUpdateGameExit(CCmdUI* pCmdUI);
	afx_msg void OnUpdateHelpAbout(CCmdUI* pCmdUI);
	afx_msg void OnUpdateHelpHelp(CCmdUI* pCmdUI);
	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
	afx_msg void OnUpdateOptionArea1(CCmdUI* pCmdUI);
	afx_msg void OnUpdateOptionArea2(CCmdUI* pCmdUI);
	afx_msg void OnUpdateOptionArea3(CCmdUI* pCmdUI);
	afx_msg void OnUpdateOptionArea4(CCmdUI* pCmdUI);
	afx_msg void OnOptionArea1();
	afx_msg void OnOptionArea2();
	afx_msg void OnOptionArea3();
	afx_msg void OnOptionArea4();
	afx_msg void OnUpdateOptionLevel1(CCmdUI* pCmdUI);
	afx_msg void OnUpdateOptionLevel2(CCmdUI* pCmdUI);
	afx_msg void OnUpdateOptionLevel3(CCmdUI* pCmdUI);
	afx_msg void OnUpdateOptionLevel4(CCmdUI* pCmdUI);
	afx_msg void OnUpdateOptionLevel5(CCmdUI* pCmdUI);
	afx_msg void OnUpdateOptionLevel6(CCmdUI* pCmdUI);
	afx_msg void OnOptionLevel1();
	afx_msg void OnOptionLevel2();
	afx_msg void OnOptionLevel3();
	afx_msg void OnOptionLevel4();
	afx_msg void OnOptionLevel5();
	afx_msg void OnOptionLevel6();
	afx_msg void OnUpdateOptionGrid(CCmdUI* pCmdUI);
	afx_msg void OnOptionGrid();
	afx_msg void OnUpdateOptionMusic(CCmdUI* pCmdUI);
	afx_msg void OnOptionMusic();
	afx_msg void OnUpdateGamePaush(CCmdUI* pCmdUI);
	afx_msg void OnGamePaush();
	afx_msg void OnGameExit();
	afx_msg void OnHelpAbout();
	DECLARE_MESSAGE_MAP()
};

/*
CRectGameView : public CView
{
	//內(nèi)部存取數(shù)據(jù)結(jié)構(gòu)
	int m_stateMap[MAX_ROW][MAX_COL];
	
	//初始化操作
	GameInitnal();      //游戲的初始化
	
	//用于判斷數(shù)據(jù)相關(guān)狀態(tài)的操作
	IsLeftLimit();       //下墜物件是否可向左移動(dòng)
	IsRightLitmit();     //
	IsBottom();          //是否已經(jīng)到達(dá)了底部
	IsGameEnd();         //是否游戲已經(jīng)結(jié)束
		
	//方塊物件下墜過程中的操作
	RectChange();        //下墜物件變形
	RectDown();          //下墜物件正常下落
	RectArrow();         //下墜物件方向移動(dòng)(左,右,下加速)

  	//狀態(tài)控制操作
	GameStart();         //游戲開始
	GamePause();         //游戲暫停
	GameEnd();           //游戲結(jié)束
}
#ifndef _DEBUG  // debug version in skyblue_RectView.cpp
inline CSkyblue_RectDoc* CSkyblue_RectView::GetDocument()
   { return (CSkyblue_RectDoc*)m_pDocument; }
#endif
*/

#ifndef _DEBUG  // HGAMEView.cpp 中的調(diào)試版本
inline CHGAMEDoc* CHGAMEView::GetDocument() const
   { return reinterpret_cast<CHGAMEDoc*>(m_pDocument); }
#endif

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产肉丝袜一区二区| 国产精品久久久久久久久久免费看| 奇米四色…亚洲| 国产精品水嫩水嫩| 欧美日韩国产一级二级| 国产 日韩 欧美大片| 日韩国产精品久久久| 亚洲欧美日韩在线不卡| 欧美大片在线观看一区二区| 91亚洲精品一区二区乱码| 久久电影网电视剧免费观看| 一区二区三区免费在线观看| 久久久天堂av| 日韩精品一区二区在线| 色狠狠av一区二区三区| 国产不卡在线播放| 久久99国产精品麻豆| 午夜视频在线观看一区二区三区| 中文字幕第一区二区| 精品久久久久久最新网址| 欧美亚洲动漫制服丝袜| 99在线精品一区二区三区| 国产精品原创巨作av| 美女看a上一区| 午夜精品视频一区| 亚洲国产综合人成综合网站| 国产精品传媒视频| 中文字幕欧美日本乱码一线二线| 日韩一二三区视频| 欧美精品粉嫩高潮一区二区| 97se亚洲国产综合在线| 成人h动漫精品一区二区| 国产精品99久久久久久久女警 | 91小视频免费观看| 粉嫩aⅴ一区二区三区四区 | 欧美精品在线一区二区| 色天使久久综合网天天| 91农村精品一区二区在线| 国产成人精品www牛牛影视| 国产一二三精品| 九九九精品视频| 蜜桃传媒麻豆第一区在线观看| 亚洲18影院在线观看| 亚州成人在线电影| 日韩国产精品久久久| 日韩福利电影在线| 麻豆成人久久精品二区三区红 | 一区二区三区精品在线| 中文字幕日本不卡| 亚洲视频 欧洲视频| 一区二区国产盗摄色噜噜| 亚洲永久精品大片| 午夜av电影一区| 久久精品国产在热久久| 韩国三级电影一区二区| 国产成人在线视频免费播放| 国产精品18久久久久久久久久久久 | 欧美乱熟臀69xxxxxx| 91精品一区二区三区久久久久久| 日韩免费一区二区| 国产日产欧美精品一区二区三区| 欧美国产日产图区| 一区二区三区在线播| 午夜电影网一区| 精品一区二区三区蜜桃| 粉嫩13p一区二区三区| 色天天综合色天天久久| 欧美一区在线视频| 欧美激情中文不卡| 一区二区高清免费观看影视大全 | 亚洲啪啪综合av一区二区三区| 亚洲免费观看视频| 三级亚洲高清视频| 国产成人午夜电影网| 91色porny| 91麻豆精品国产无毒不卡在线观看 | 日本道免费精品一区二区三区| 欧美精品三级日韩久久| 精品久久一区二区| 亚洲乱码国产乱码精品精小说| 亚洲国产精品天堂| 韩国理伦片一区二区三区在线播放| 国产1区2区3区精品美女| 欧美中文字幕一区| 久久久不卡影院| 亚洲一区二区三区小说| 91高清视频免费看| 日韩美女主播在线视频一区二区三区| 国产视频911| 天堂久久一区二区三区| 大胆欧美人体老妇| 欧美一区二区三区不卡| 国产精品理论片| 日韩av网站在线观看| 高清不卡一二三区| 制服丝袜国产精品| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 奇米精品一区二区三区在线观看 | 波多野结衣91| 日韩欧美高清dvd碟片| 亚洲欧美电影一区二区| 国内精品伊人久久久久av影院| 欧美中文字幕不卡| 国产欧美一区二区三区在线看蜜臀| 亚洲高清免费视频| 91网站最新地址| 国产日韩欧美综合在线| 天堂va蜜桃一区二区三区漫画版| 国产xxx精品视频大全| 6080日韩午夜伦伦午夜伦| 中文字幕一区二区三区av| 国内精品免费在线观看| 欧美精品一级二级三级| 日韩久久一区二区| 国产精品18久久久久久久久| 日韩无一区二区| 亚洲va欧美va人人爽午夜| 99re66热这里只有精品3直播| 久久亚区不卡日本| 开心九九激情九九欧美日韩精美视频电影| 91美女在线视频| 国产精品美女一区二区| 国产精品自拍毛片| 久久久亚洲精品石原莉奈| 久久成人免费网| 日韩一区二区免费在线观看| 一区二区三区美女视频| 色一区在线观看| 亚洲日本在线天堂| 色综合亚洲欧洲| 国产精品美女久久久久aⅴ国产馆| 狠狠色丁香九九婷婷综合五月| 欧美一级午夜免费电影| 日韩精品国产精品| 8v天堂国产在线一区二区| 午夜电影久久久| 在线播放国产精品二区一二区四区 | 精品视频色一区| 亚洲大片精品永久免费| 欧美手机在线视频| 亚洲成人激情自拍| 国产精品美女久久久久久久久久久| 国产精品一区二区不卡| 久久噜噜亚洲综合| 国产99精品国产| 国产精品成人午夜| 一本大道久久a久久精二百| 亚洲精品久久久蜜桃| 欧美亚一区二区| 视频一区二区不卡| 日韩精品影音先锋| 国产成人99久久亚洲综合精品| 久久久精品免费免费| 成人午夜视频网站| 亚洲日本在线a| 欧美三级电影网站| 毛片一区二区三区| 国产日韩欧美精品一区| 99九九99九九九视频精品| 亚洲免费视频成人| 91精品国产91热久久久做人人 | 国产精品国产三级国产aⅴ原创| 91视频免费观看| 无码av免费一区二区三区试看| 91精品国产色综合久久不卡蜜臀| 久久99精品久久久久久国产越南| 久久精品亚洲精品国产欧美kt∨| 成人免费视频一区二区| 亚洲一区二区三区爽爽爽爽爽 | a级精品国产片在线观看| 一区二区三区四区不卡在线| 717成人午夜免费福利电影| 国产精品中文字幕欧美| 一区二区三区日韩精品视频| 欧美一区二区三区公司| 成人高清免费观看| 香蕉久久夜色精品国产使用方法 | 国产欧美精品日韩区二区麻豆天美| 不卡av在线免费观看| 天天影视网天天综合色在线播放| 精品国免费一区二区三区| av电影一区二区| 日本中文字幕一区二区视频| 国产欧美综合色| 91精品国产综合久久久久久久| 国产福利一区二区三区| 亚洲妇熟xx妇色黄| 欧美国产日韩亚洲一区| 欧美精品久久天天躁| 成人国产精品免费观看| 人人狠狠综合久久亚洲| 久久99精品久久久久| 亚洲人午夜精品天堂一二香蕉| 日韩欧美久久久| 在线观看av一区二区| 国产精品亚洲成人| 日韩成人午夜精品| 亚洲美女在线国产| 久久久久久久久久久久电影| 欧美日韩黄色一区二区|