華容道遊戲程式操作步驟
標頭檔案放置:
(1) 確定vc6.0安裝是預設路徑還是自定義路徑
a、 預設路徑:將opengl資料夾內所有『.h』型別檔案複製到
c:\program file\microsoft visual c++6.0\vc98\include\gl資料夾下。
將opengl資料夾內所有『.lib』型別檔案複製到
c:\program file\microsoft visual c++6.0\vc98\lib資料夾下。
b、 自定義路徑:先找到安裝visual c++6.0的路徑。找到vc98資料夾
將opengl資料夾內所有『.h』型別檔案複製到…\vc98\include\gl資料夾下。
將opengl資料夾內所有『.lib』型別檔案複製到…\vc98\lib資料夾下。
(2) 將opengl資料夾內所有『.dll』型別檔案複製到c:\windows\system32資料夾中。
1, 開啟vc++6.0,新建mfc單文件應用程式,專案名稱:huard,並將picture資料夾拷貝到此專案資料夾下。
(先建工程,再將picture資料夾拷貝到所建立資料夾huard中)
圖1 新建mfc單文件應用程式工程,工程名稱:huard
圖2 選擇「單文件」程式型別,點選「完成」
2開啟「資源檢視」,在menu下雙擊「idr_mainframe」,新建如下選單:
圖3 新建選單
3點選」huard classes」,滑鼠右擊,選擇「new class」.
圖3_1 新建cell類
選擇generic class,單擊ok.(generic cwnd是派生cwind類)
圖 3_2 新建cell類
4.在檔案中的class cell中新增如下成員變數和成員函式:右擊類class cell,加成員變數和成員函式。
(cell型別是乙個單元格型別。通過介面不難看出棋子是由乙個或多個正方形構成的。而cell型別則是構建這個正方形的單元格)
public:
void setpos(glfloat x,glfloat y);
void setchessname(glint name);
void setcellstate(glint state);
int getchessname();
int getcellstate();
bool drawchess(gluint *texture);
bool copycell(cell &tcell);
bool clear();
private:
glfloat pos_x;
glfloat pos_y;
glint cellstate;
glint chessname;
gluint texid;
//(在這裡很多類似glint資料型別的定義。其實就是我們所熟悉的int型別資料。gl是乙個平台轉換功能。可根據平台的不同,而使後面的int型別能自動適應所在平台。)
新增方法如下:
圖4_1 新建成員函式
圖4_2 新增成員函式void setpos(glfloat x,glfloat y);
圖4_3 新增成員變數
圖4_4 新增成員變數glfloat pos_x;
5.在步驟4中新增的函式中新增對應**,並在檔案首新增標頭檔案:「#include 」,並在中新增函式
bool cell::copycell(cell &tcell) //複製單元中棋子名稱和位置。傳引用呼叫cell型別變數
bool cell::clear()//將位置和名字置為0
void cell::setpos(glfloat x,glfloat y) //賦值位置座標
void cell::setchessname(glint name) //賦值棋子名字
void cell::setcellstate(glint state) //賦值棋子部分
int cell::getchessname()//獲得棋子名字
int cell::getcellstate()//獲得位置
bool cell::drawchess(gluint *texture) //畫棋子,並為每個棋子的紋理標號。
break;
case cn_zhaoyun:
switch (cellstate)
break;
case cn_machao:
switch (cellstate)
break;
case cn_guanyu:
switch (cellstate)
break;
case cn_huangzhong:
switch (cellstate)
break;
case cn_bin:
case cn_yong:
case cn_zu:
case cn_din:
glbindtexture(gl_texture_2d, texture[10]);
break;
case cn_empty:
glbindtexture(gl_texture_2d,texture[12]);
break;
}glbegin(gl_quads);
switch (cellstate)
{case cs_topleft:
gltexcoord2f(0.0f,0.5f);glvertex3f(0.
0,0.0,0.0); //gltexcoord*() 設定紋理座標,glvertex*() 設定頂點座標
gltexcoord2f(0.5f,0.5f);glvertex3f(1.0,0.0,0.0);
gltexcoord2f(0.5f,1.0f);glvertex3f(1.0,1.0,0.0);
gltexcoord2f(0.0f,1.0f);glvertex3f(0.0,1.0,0.0);
break;
case cs_topright:
gltexcoord2f(0.5f,0.5f);glvertex3f(0.0,0.0,0.0);
gltexcoord2f(1.0f,0.5f);glvertex3f(1.0,0.0,0.0);
gltexcoord2f(1.0f,1.0f);glvertex3f(1.0,1.0,0.0);
gltexcoord2f(0.5f,1.0f);glvertex3f(0.0,1.0,0.0);
break;
case cs_bottomleft:
gltexcoord2f(0.0f,0.0f);glvertex3f(0.0,0.0,0.0);
gltexcoord2f(0.5f,0.0f);glvertex3f(1.0,0.0,0.0);
gltexcoord2f(0.5f,0.5f);glvertex3f(1.0,1.0,0.0);
gltexcoord2f(0.0f,0.5f);glvertex3f(0.0,1.0,0.0);
break;
case cs_bottomright:
gltexcoord2f(0.5f,0.0f);glvertex3f(0.0,0.0,0.0);
gltexcoord2f(1.0f,0.0f);glvertex3f(1.0,0.0,0.0);
華容道遊戲玩法大全
一 標準華容 起始圖此局為經典華容,屬於 一橫式 也叫做 橫刀立馬1 後面有許多變局,其解法為 1 卒3右,黃下,關左,卒2下,馬左,卒4上一,卒2右,馬下,關右 2 卒1上左,卒3上二,馬左,卒4左下,關下,卒3卒1右二,馬上,黃上,卒4卒2左二,關下,卒1下右,馬右,黃右 記下此時圖為1 1 3...
華容道的玩法揭秘
華容道 橫刀立馬1 通關步驟 81步 右下卒左一,黃下,關右,左上卒下,馬右,左下卒上一,下卒左一,馬下,關左,右卒上右,下卒上二,馬右,左上卒右下,關下,上二卒左二,黃上,馬上,下二卒右二,關下,右上卒下左,馬左,黃左,趙下,曹右,張右,左二卒上二,馬左,張下,曹左,趙上,黃右,下卒上二,下卒左上...
排氣道技術交底
交底內容 一 準備工作 1 技術準備 專案技術部對工長進行技術交底,工長組織安裝工人學習技術交底,熟悉排氣道的安裝程式和質量要求,特別是煙氣道安裝的細部做法和注意事項。2 材料 工具準備 本工程廚房排氣道設計選用10bjz8,400 300,衛生間選用10bjz8,300 250。排氣道進場以後,要...