德州扑克是一种技巧性非常强的扑克游戏,有一定的运气成分,但玩家之间主要还是要靠斗智力、耍手腕、动脑筋。其规则非常简单,比较容易掌握,但是要达到精通的境界却有一定的难度。
我们可以定义一个枚举来罗列出所有的牌型:
[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; //牌在大图片中的X坐标
- int s_nImage_Y; //排在大图片中的Y坐标
- };
时间: 2024-11-25 15:40:20