棋牌平臺搭建教程-德州撲克算法詳解
德州撲克是一種技巧性非常強的撲克遊戲,有一定的運氣成分,但玩家之間主要還是要靠鬥智力、耍手腕、動腦筋。其規則非常簡單,比較容易掌握,但是要達到精通的境界卻有一定的難度。
我們可以定義一個枚舉來羅列出所有的牌型:
[cpp] view plain copy
//牌的類型枚舉
enum CardTypeEnum
{
ctNoneCard = 0,
ctHighCard, //高牌
ctDouble_OneCard,//一對
ctDouble_TwoCard,//二對
ctThreeCard, //三條
ctStraightCard, //順子
ctFlushCard, //同花
ctGourdCard, //三條加對子(葫蘆)
ctFourCard, //四條
ctStraightFlush, //同花順
ctRoyalFlush //皇家同花順
};
牌型大小從小到大。
德州撲克遊戲一共有52張牌,我們可以先定義一個數組來保存52張牌int nArrayCard[52]裏面依次存0------51,接下來我們需要打亂數組的順序來達到隨機發牌的效果,然後依次發2張牌玩家的手中。具體的講解在這點就寫了,大家可以參考棋牌平臺制作 http://www.yasewl.com
如果你現在已經明白了洗牌,發牌的算法。那麽恭喜你可以繼續往下看了。
接下來,我們就開始討論如何來確定玩家手中的牌為什麽牌型。
可以定義一個結構體來保存每張牌的信息數據,以便我們接下來的討論。
[cpp] view plain copy
//牌的信息
struct CardStruct
{
int s_nCardIndex; //牌的索引值0-51
int s_nCardValue; //牌的大小2345678910111213
int s_nCardSuit ; //牌的花色(1黑桃,2紅桃,3梅花,4方塊)
int s_nImage_X;
int s_nImage_Y; //排在大圖片中的Y坐標
};
本文出自 “棋牌源碼搭建教程” 博客,請務必保留此出處http://13114207.blog.51cto.com/13104207/1945951
棋牌平臺搭建教程-德州撲克算法詳解