欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

C++實現(xiàn)連連看游戲核心代碼

這兩天研究了一下連連看游戲的源代碼,感覺它挺簡單的,主要就是判斷選中的兩張圖片能否消去。我參考了網(wǎng)上的源代碼(抱歉的是,不記得當時下載的網(wǎng)址了,在此對原作者表示深深的歉意?。?,然后自己把核心代碼整理如下,與大家共享。需要說明的是,這只是核心算法的代碼,界面設計和操作的代碼均已略去。

十年專注成都網(wǎng)站制作,成都企業(yè)網(wǎng)站定制,個人網(wǎng)站制作服務,為大家分享網(wǎng)站制作知識、方案,網(wǎng)站設計流程、步驟,成功服務上千家企業(yè)。為您提供網(wǎng)站建設,網(wǎng)站制作,網(wǎng)頁設計及定制高端網(wǎng)站建設服務,專注于成都企業(yè)網(wǎng)站定制,高端網(wǎng)頁制作,對茶樓設計等多個領域,擁有多年的網(wǎng)站制作經(jīng)驗。

#include <stdlib.h>
#include <time.h>
//圖片類
class picture
{
public:
 int type;//圖片的編號,共有n種,從0到n-1
 bool visible;//圖片是否可見
 int x;//圖片位置的橫坐標
 int y;//圖片位置的綜坐標
};
//整個圖由8行10列組成,每個單元格是一張小圖片
const int pNum = 10;
const int pType = 8;
static picture p[pType][pNum];
//進入新一關
void newStage()
{
 srand(time(0));
 int i,j;
 for(i = 0;i < pType;++i)
 for(j = 0;j < pNum;j++)
 p[i][j].visible = false;
 int x,y;
 for (i = 0;i < pType - 1;++i)
 for(j = 0;j < pNum;++j)
 {
 bool re = true;
 while (re)
 {
 x = rand() % pType;
 y = rand() % pNum;
 if (p[x][y].visible == false)
 {
 p[x][y].type = i;
 p[x][y].visible = true;
 p[x][y].x = x;
 p[x][y].y = y;
 re = false;
 }
 }
 }
 //處理剩余的最后一種圖片
 for (i = 0;i < pType;++i)
 for(j = 0;j < pNum;++j)
 {
 if (p[i][j].visible == false)
 {
 p[i][j].type = pType - 1;
 p[i][j].visible = true;
 p[i][j].x = i;
 p[i][j].y = j;
 }
 }
}
 
//在a、b兩點之間畫線
void drawLine(picture a,picture b)
{
 
}
//判斷圖片a和b之間能否通過一條直線相連(a和b之間有0個轉角)
bool matchDirect(picture a,picture b)
{
 if(!(a.x == b.x || a.y == b.y))
 return false;
 //a、b的橫坐標相同時
 bool yMatch = true;
 if(a.x == b.x)
 {
 if(a.y > b.y)
 {
 for(int i = b.y + 1;i < a.y;++i)
 {
 if(p[a.x][i].visible == true)
 yMatch = false;
 }
 }
 if(b.y > a.y)
 {
 for(int i = a.y + 1;i < b.y;++i)
 {
 if(p[a.x][i].visible == true)
 yMatch = false;
 }
 }
 }
 //a、b的縱坐標相同時
 bool xMatch = true;
 if(a.y == b.y)
 {
 if(a.x > b.x)
 {
 for(int i = b.x + 1;i < a.x;++i)
 {
 if(p[i][a.y].visible == true)
 xMatch = false;
 }
 }
 if(b.x > a.x)
 {
 for(int i = a.x + 1;i < b.x;++i)
 {
 if(p[i][a.y].visible == true)
 xMatch = false;
 }
 }
 }
 return (xMatch && yMatch);
}
//判斷圖片a和b之間是否可以通過一個轉角的折線相連
bool matchOneCorner(picture a,picture b)
{
 if (p[a.x][b.y].visible == false && matchDirect(a,p[a.x][b.y]) && matchDirect(p[a.x][b.y],b))
 {
 drawLine(a,p[a.x][b.y]);
 drawLine(p[a.x][b.y],b);
 return true;
 }
 if (p[b.x][a.y].visible == false && matchDirect(a,p[b.x][a.y]) && matchDirect(p[b.x][a.y],b))
 {
 drawLine(a,p[b.x][a.y]);
 drawLine(p[b.x][a.y],b);
 return true;
 }
 return false;
}
//判斷圖片a和b之間是否可以通過兩個轉角的折線相連
bool matchTwoCorner(picture a,picture b)
{
 int i,j;
 for(i = a.x - 1,j = a.y;i >= 0;--i)
 {
 if(p[i][j].visible == true)
 break;
 else if(matchOneCorner(b,p[i][j]))
 {
 drawLine(a,p[i][j]);
 return true;
 }
 }
 for (i = a.x + 1,j = a.y;i < pNum;++i)
 {
 if(p[i][j].visible == true)
 break;
 else if(matchOneCorner(b,p[i][j]))
 {
 drawLine(a,p[i][j]);
 return true;
 }
 }
 for(i = a.x,j = a.y - 1;j >= 0;--j)
 {
 if(p[i][j].visible == true)
 break;
 else if(matchOneCorner(b,p[i][j]))
 {
 drawLine(a,p[i][j]);
 return true;
 }
 }
 for(i = b.x,j = b.y + 1;j < pType;++j)
 {
 if(p[i][j].visible == true)
 break;
 else if(matchOneCorner(b,p[i][j]))
 {
 drawLine(a,p[i][j]);
 return true;
 }
 }
 return false;
}
//判斷a和b能否相連,條件是a和b的類型相同,且a和b之間的連線拐角數(shù)<=2個
bool match(picture a,picture b)
{
 if(a.type != b.type)
 return false;
 if(matchDirect(a,b))
 {
 drawLine(a,b);
 return true;
 }
 else if(matchOneCorner(a,b))
 return true;
 else if(matchTwoCorner(a,b))
 return true;
 return false;
}

關于C++小游戲的更多精彩內(nèi)容請點擊專題: 《C++經(jīng)典小游戲》 學習了解

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。

新聞名稱:C++實現(xiàn)連連看游戲核心代碼
本文路徑:http://aaarwkj.com/article10/ihpego.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、做網(wǎng)站、定制網(wǎng)站、域名注冊、網(wǎng)頁設計公司、軟件開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設計公司
日本在线有码中文视频| av网址不卡在线免费观看| 精品国产视频一区二区三区| 日韩版色视频在线观看| 公侵犯人妻中文字幕一区| 亚洲啪啪av一区二区三区| 另类视频在线免费观看| 久久偷拍一区二区三区| 欧美色欧美亚洲另类视频| 欧美日在线观看加勒比| 久久精品亚洲精品国产| 小骚货操死你视频在线观看| 五十路八十路息与子交尾| 中文字幕一区二区中文字幕| 青青草原一区在线观看| 99久久精品国产熟女拳交| 国产精品国产三级国产av一区| 极品女神福利视频久久| 久久热这里只有精品网站| 亚洲人的av在线播放| 麻豆视传媒短视频网站| 一卡二卡三卡四卡日韩| 特级艳片在线观看免费| 91精品欧美综合在线| 国产精品日本欧美一区二区| 成人爱爱视频免费观看| 日本a级片免费在线观看| 欧美一区二区三区久久妇| 永久免费成人在线视频| 欧美大尺度影片在线观看| 欧美日韩在线一区二区精品| 97资源视频在线播放| 国产夫妻自拍在线视频| 日韩精品一区二区av在线| 欧美夫妻香蕉视频网站| 亚洲情色精品国产一区| 亚洲视频一区视频二区| 亚洲熟女乱妇爽到高潮| 日韩欧美人妻中文字幕| 全黄性性激高免费放视频| 国产黄的网站在线观看|