999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

網絡棋牌之鞍山麻將

2011-01-01 00:00:00呂寶生,鐘寶榮
電腦知識與技術 2011年4期

摘要:麻將是棋牌游戲中最復雜的棋牌游戲之一。從程序的角度,鞍山麻將是復雜度可以說是“五星級”的。那么程序是怎么實現的讓電腦玩麻將的呢?鞍山麻將相比其他地區的麻將多了混牌,槍牌,三叉,二八將,四歸一,大哥大。邏輯核心就是如何判斷牌是否胡牌。

關鍵詞:混;混皮;槍;大哥大;三叉;二八將;番;分張

中圖分類號:TP37文獻標識碼:A文章編號:1009-3044(2011)04-0878-02

The Internet Card Game-Anshan Mahjong

LV Bao-sheng, ZHONG Bao-rong

(College of Computer Science, Yangtze University, Jingzhou 434023, China)

Abstract: Mahjong is one of the most complex card games. At the view of the programming, the complexity of Anshan Mahjong could be said to be \"five-star \". Then how does the computer achieve it by programming? Anshan Mahjong comparing to others has Hun card which can place any card, gun card, double cards which value is two or eight , four same cards in hand, the count of theZhong card or Fa card or Bai card is three. How to determine whether the cards is winning is the core logic.

Key words: hun card; hunpi card; gun card; mobile card; trigeminal card; two or eight card; fan; the separation

1 游戲介紹

鞍山麻將是遼寧省鞍山地區特有的麻將玩法,其特點在于“混”和“槍”的規則。第一局隨機確定莊家,再由莊家擲第一次色子,從此次擲出來的點數確定翻混牌的位置,并由此點數位置的玩家擲第二次骰子,確定從何處抓牌。每局莊家為上一局第一個胡牌的玩家。

2 關鍵詞解釋

混皮:在服務器端隨機一張牌稱為“混皮”。

混:就是比混皮大1的牌稱為“混牌”?;炜梢援斎我馀?。

槍:就是有人胡牌后,再順序摸起的那張牌以及比這張牌大1的牌稱為“槍牌”。

大哥大:中發白不管哪個牌如果有三張一樣的就叫一個“大哥大”。

刻:三張相同的牌稱為“刻”。

三叉:如果有三個刻就稱為“三叉”。

二八將:就是胡的時候有二,八任意一個成對,就叫“二八將”。這要算作一番的。

番:一番就是一倍。計算得分用的。

分張:倒數26張牌是每人摸一張牌,放在手里不打出。稱為“分張”。

四歸一:如果手里摸到三張混皮稱為“四歸一”,如果手里有四張一樣的牌也稱為“四歸一”。

3 游戲流程

圖1為流程圖。

4 網絡鞍山麻將實現基本原理

136張牌全在服務器端隨機排列,然后發給每一個客戶端。吃,碰,杠,胡,以及摸牌,分張,算分全部是在服務器端判斷完成,然后把數據發到客戶端繪制顯示出來。

結合圖2,大哥更容易理解。桌面上只要大家可以看到的牌,那都是服務器發過來數據,然后客戶端根據服務器數據調用相應的圖片資源進行繪制顯示。大家注意算分界面后面的牌墻,其實那些牌墻只是一個顯示,如果你翻開牌墻看,你會發現牌的另一面是白的,沒有任何數據。同理算分界面上的數據也都來自服務器。

5 鞍山麻將核心胡牌算法

難點分析:因為鞍山麻將中有混牌,所以胡牌的情況就多了很多,這樣不遺漏任何一種胡牌情況就成了難點。

基本原理:把混牌換成34種牌中的一張牌插入到牌隊列中進行分析,如果返回值不為空則認為胡啦。

代碼剖析:

cbCardIndexTemp[cbHunIndex]--;

for (BYTE j=0;j

{//胡牌分析

BYTE cbCurrentCard1=SwitchToCardData(j);

BYTE cbHuCardKind

=AnalyseChiHuCard(cbCardIndexTemp,cbCardIndexTemp1,WeaveItem,cbItemCount,cbCurrentCard1,dwChiHuRight, cbHunIndex,cbHunPiIndex,ChiHuResult,j);

//結果判斷

if (cbHuCardKind!=CHK_NULL)

{

cbCardIndexTemp[cbHunIndex]=1;

ChiHuResult.dwQiongHu=0;

return WIK_CHI_HU;

}

}

cbCardIndexTemp[cbHunIndex]=1;

此段代碼既是當牌隊列中有一個混牌時的分析:先把牌隊列中的混牌刪除,在依次插入34種牌中的每一張牌進行胡牌分析。一旦返回值不為空,就說明胡了,就要發胡牌提示給相應的玩家。最后還有一步就是還原混牌。

同理無論有幾張混牌,都按此理論進行判斷,就不會忽略任意一種胡牌牌型。

6 總結

因為鞍山麻將是中國最復雜地方麻將之一,所以只要能實現鞍山麻將的邏輯與算法。在任何一種地方麻將實現起來都肯定相當簡單。

當前算法不足之處,胡牌類型最優化的分析與計算不夠完善。具體在算法上就是二八將加番與三叉加番沖突未解決。所以胡牌最優化算法有待進一步完善與提高。

參考文獻:

[1] Deloura M.游戲編程精粹1[M].北京:人民郵電出版社,2004.

[2] Deloura M.游戲編程精粹2[M].北京:人民郵電出版社,2003.

[3] Treglia D.游戲編程精粹3[M].北京:人民郵電出版社,2003.

[4] Kirmse A.游戲編程精粹4[M].北京:人民郵電出版社,2005.

[5] Pallister K.游戲編程精粹5[M].北京:人民郵電出版社,2007.

[6] Dickheiser M.游戲編程精粹6[M].北京:人民郵電出版社,2007.

[7] 榮欽科技.Visual C++游戲編程基礎[M].北京:電子工業出版社,2005.

[8] 楊正華,張秋生.Visual C++游戲編程導學[M].北京:清華大學出版社,2004.

[9] 榮欽科技.Visual C++游戲設計[M].北京:北京科海電子出版社,2003.

[13] LaMothe A.Windows游戲編程大師技巧[M].北京:中國電力出版社,2004.

主站蜘蛛池模板: 91视频首页| 中文字幕在线观看日本| 国产人碰人摸人爱免费视频| 毛片基地视频| 国产福利免费在线观看| 亚洲综合一区国产精品| 亚洲天堂啪啪| 韩日无码在线不卡| 亚洲精品午夜无码电影网| 久久精品人妻中文系列| 欧美一级大片在线观看| 91亚洲视频下载| 91偷拍一区| 国产日本一线在线观看免费| 亚洲二区视频| 综合色在线| 久久精品丝袜| 性色在线视频精品| 久热中文字幕在线观看| 国产欧美日韩va| 国产免费怡红院视频| 亚洲Aⅴ无码专区在线观看q| 人妻中文久热无码丝袜| 免费激情网址| 中文字幕一区二区人妻电影| 黄色国产在线| 久久久久青草线综合超碰| 制服丝袜 91视频| 精品一區二區久久久久久久網站 | 1024国产在线| 一级毛片网| 精品人妻一区无码视频| 在线国产欧美| 黄色三级网站免费| 日韩最新中文字幕| 2021精品国产自在现线看| 国产欧美视频综合二区| 亚洲一级毛片免费看| 日本一区高清| 日韩国产一区二区三区无码| 国产va免费精品观看| 在线中文字幕日韩| 日本一本在线视频| 日韩精品少妇无码受不了| 国产成人亚洲日韩欧美电影| 国产精品国产三级国产专业不| 99精品免费在线| 无码福利日韩神码福利片| 亚洲欧美不卡视频| 免费在线不卡视频| 99国产在线视频| 国产精品成人第一区| 国产精品刺激对白在线| 国产精品视频3p| 亚洲AV无码不卡无码| 国产免费羞羞视频| 国产精品九九视频| 久热中文字幕在线| 久久夜色精品国产嚕嚕亚洲av| 澳门av无码| 欧美全免费aaaaaa特黄在线| 婷婷丁香在线观看| 91麻豆国产在线| 偷拍久久网| 欧美人人干| 日本成人一区| 88国产经典欧美一区二区三区| 欧美国产日产一区二区| 99久久亚洲综合精品TS| 欧洲精品视频在线观看| 精品福利视频网| 国产精品护士| 色综合成人| 亚洲黄色成人| 国产91蝌蚪窝| 亚洲成人黄色网址| 另类综合视频| 亚洲精品第五页| 97在线视频免费观看| 国产精品深爱在线| www亚洲精品| 亚洲精品视频免费|