网络版斗地主网页版

手机游戏&&尽在九游
&&&&&&&&真人斗地主,Q萌清新,巧妙的将“斗地主”玩法融合在内。深入骨髓的恶搞小亮点,让你和寂寞从此说拜拜。适配强、内存低、速度快、节奏刺激、丰富玩法,还可以赢话费、iPhone 6.
【我是天子 赶紧来朝拜】游戏中达到天子等级,即可享受群臣朝拜,虐死别人的爽快感。小伙伴,快搞起吧!
【乔布斯 你出来吧】新兑换体系,集齐龙珠...
真人斗地主,Q萌清新,巧妙的将“斗地主”玩法融合在内。深入骨髓的恶搞小
真人斗地主,Q萌清新,巧妙的将“斗地主”玩法融合在内。深入骨髓的恶搞小亮点,让你和寂寞从此说拜拜。适配强、内存低、速度快、节奏刺激、丰富玩法,还可以赢话费、iPhone 6.
【我是天子 赶紧来朝拜】游戏中达到天子等级,即可享受群臣朝拜,虐死别人的爽快感。小伙伴,快搞起吧!
【乔布斯 你出来吧】新兑换体系,集齐龙珠即可召唤乔布斯兑换实物
【节操值 别再掉了】节操排行榜,让你展开一场关于节操的争夺大战
苹果版暂无下载
真人斗地主(网络版)游戏截图
本周飙升榜
下载排行榜
*给个评价吧:
玩家还可选择以下标签快速评论哦:
我来说两句
正在加载,请稍后...
真人斗地主(网络版)
点击下载按钮,或通过扫描二维码直接下载!
真人斗地主(网络版) 1.1.0 安装包安卓安装包
请用手机扫描二维码订阅~
订阅后可及时接受活动,礼包,开测和开放下载的提醒!&|&&|&&|&&|&&|&&|&&|&&|&&|&&|&
&&>>&&>>&&>>&&>>&
子栏目导航
&&&&&&&&&&&&&&&&&&&&&&&&
本类排行榜
1&2&3&4&5&6&7&8&9&10&
电脑版开心斗地主游戏下载
运行环境:&Win9x/NT/2000/XP/2003
(载入中...)
文件大小:&6537&K
软件类别:&免费软件
软件语言:&简体中文
授权方式:&免费版
最后整理:&
软件等级:&★★★★★
软件作者:&
::软件简介::
最新力作开心斗地主网络版,由三人玩一副牌,地主为一方,其余两家为另一方,双方对战,先出完手中牌的一方胜。本游戏同时支持斗地主赢话费、赢q币。
&&&&::↓↓↓绿色第一站本地下载地址↓↓↓::
(载入中...)
::最新更新::
::下载说明::
如果您发现该软件不能下载,请点击【】,谢谢!
本站提供的软件会尽可能测试后再上传,但限于个人能力及系统等问题,无法保证所有软件都没有任何问题,请下载后自行杀毒后再使用。
本站所有资源均是网上搜集或私下交流学习之用,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!本站仅仅提供一个观摩学习的环境,将不对任何资源负法律责任。所有资源请在下载后24小时内删除。一键复制到论坛
更多 斗地主网络版 版本下载
斗地主网络版 正式版 介绍
  一款能赢话费的休闲益智棋牌游戏中心,99电玩大厅为您提供最刺激的电玩游戏,热门的森林舞会单机版,1000炮金蟾捕鱼下载,游戏,斗地主,,万能鲨鱼,金鲨银鲨等更多好玩的游戏等你一起来!一切尽在99电玩大厅下载
斗地主网络版评论
|||||||||||Copyright (C) 1999-, All Rights Reserved 版权所有 天极网络京公网安备84号CopyRight2004年-年
游迅网 All Rights Reserved
备案编号:沪ICP备号-9源码在上一篇文章:
本文是对C#网络版斗地主的开发总结,同时也是最后一篇。
其他三篇文章地址:
网络部分实现:
地主权限的传递:
出牌权限的传递:
大家知道,斗地主这个游戏是将一些特有的牌组合成牌组然后来比较牌组的大小,那么,就应该给PokerGroup类定义一个属性type,即牌组的类型,type的值是一个枚举类型
Code&1&&&&&public&enum&PokerGroupType&2&&&&&{&3&&&&&&&&&单张&=&<span style="color: #,&4&&&&&&&&&对子&=&<span style="color: #,&5&&&&&&&&&双王&=&<span style="color: #,&6&&&&&&&&&三张相同&=&<span style="color: #,&7&&&&&&&&&三带一&=&<span style="color: #,&8&&&&&&&&&炸弹&=&<span style="color: #,&9&&&&&&&&&五张顺子&=&<span style="color: #,<span style="color: #&&&&&&&&&六张顺子&=&<span style="color: #,<span style="color: #&&&&&&&&&三连对&=&<span style="color: #,<span style="color: #&&&&&&&&&四带二&=&<span style="color: #,<span style="color: #&&&&&&&&&二连飞机&=&<span style="color: #,<span style="color: #&&&&&&&&&七张顺子&=&<span style="color: #,<span style="color: #&&&&&&&&&四连对&=&<span style="color: #,<span style="color: #&&&&&&&&&八张顺子&=&<span style="color: #,<span style="color: #&&&&&&&&&飞机带翅膀&=&<span style="color: #,<span style="color: #&&&&&&&&&九张顺子&=&<span style="color: #,<span style="color: #&&&&&&&&&三连飞机&=&<span style="color: #,<span style="color: #&&&&&&&&&五连对&=&<span style="color: #,<span style="color: #&&&&&&&&&十张顺子&=&<span style="color: #,<span style="color: #&&&&&&&&&十一张顺子&=&<span style="color: #,<span style="color: #&&&&&&&&&十二张顺子&=&<span style="color: #,<span style="color: #&&&&&&&&&四连飞机&=&<span style="color: #,<span style="color: #&&&&&&&&&三连飞机带翅膀&=&<span style="color: #,<span style="color: #&&&&&&&&&六连对&=&<span style="color: #,<span style="color: #&&&&&&&&&//没有13<span style="color: #&&&&&&&&&七连对&=&<span style="color: #,<span style="color: #&&&&&&&&&五连飞机&=&<span style="color: #,<span style="color: #&&&&&&&&&八连对&=&<span style="color: #,<span style="color: #&&&&&&&&&四连飞机带翅膀&=&<span style="color: #,<span style="color: #&&&&&&&&&//没有17<span style="color: #&&&&&&&&&九连对&=&<span style="color: #,<span style="color: #&&&&&&&&&六连飞机&=&<span style="color: #,<span style="color: #&&&&&&&&&//没有19<span style="color: #&&&&&&&&&十连对&=&<span style="color: #,<span style="color: #&&&&&&&&&五连飞机带翅膀&=&<span style="color: #<span style="color: #&<span style="color: #&<span style="color: #&&&&&&&&&//下面是各种牌组对应的牌的张数<span style="color: #&&&&&&&&&&//单张&=&1,<span style="color: #&&&&&&&&&//对子&=&2,<span style="color: #&&&&&&&&&//双王&=&2,<span style="color: #&&&&&&&&&//三张相同&=&3,<span style="color: #&&&&&&&&&//三带一&=&4,<span style="color: #&&&&&&&&&//炸弹&=&4,<span style="color: #&&&&&&&&&//五张顺子&=&5,<span style="color: #&&&&&&&&&//六张顺子&=&6,<span style="color: #&&&&&&&&&//三连对&=&6,<span style="color: #&&&&&&&&&//四带二&=&6,<span style="color: #&&&&&&&&&//二连飞机&=&6,<span style="color: #&&&&&&&&&//七张顺子&=&7,<span style="color: #&&&&&&&&&//四连对&=&8,<span style="color: #&&&&&&&&&//八张顺子&=&8,<span style="color: #&&&&&&&&&//飞机带翅膀&=&8,<span style="color: #&&&&&&&&&//九张顺子&=&9,<span style="color: #&&&&&&&&&//三连飞机&=&9,<span style="color: #&&&&&&&&&//五连对&=&10,<span style="color: #&&&&&&&&&//十张顺子&=&10,<span style="color: #&&&&&&&&&//十一张顺子&=&11,<span style="color: #&&&&&&&&&//十二张顺子&=&12,<span style="color: #&&&&&&&&&//四连飞机&=&12,<span style="color: #&&&&&&&&&//三连飞机带翅膀&=&12,<span style="color: #&&&&&&&&&//六连对&=&12,<span style="color: #&&&&&&&&&////没有13<span style="color: #&&&&&&&&&//七连对&=&14,<span style="color: #&&&&&&&&&//五连飞机&=&15,<span style="color: #&&&&&&&&&//八连对&=&16,<span style="color: #&&&&&&&&&//四连飞机带翅膀&=&16,<span style="color: #&&&&&&&&&////没有17<span style="color: #&&&&&&&&&//九连对&=&18,<span style="color: #&&&&&&&&&//六连飞机&=&18,<span style="color: #&&&&&&&&&////没有19<span style="color: #&&&&&&&&&//十连对&=&20,<span style="color: #&&&&&&&&&//五连飞机带翅膀&=&20<span style="color: #&&&&&}
当玩家出牌时,首先应判断玩家的牌组类型。
我判断牌组类型的方法是根据玩家所出牌组张数的不同来做出不同的处理。比如,玩家出的牌只有一张,那么肯定是个子。如果有两张肯定是对子。如果有三张,肯定是三个。如果有6张呢?就有三种情况了:1、顺子。2、连对。、3、飞机。由于顺子,连对,飞机这三种牌可以有很多组合,顺子可以有6张顺子或者7张顺子,连对可以有4连对或者5连对。飞机可以有2连飞机,三连飞机。所以就需要写几个方法分别判断牌组是否为顺子,连对,飞机了。
顺子和对子很好判断,飞机就麻烦点了,由于飞机可以随便带一张或几张牌,如果带的牌的点数比飞机本身的点数大,那么大的那张牌就被排序到飞机前面了,这样对比较牌组的大小很不方便。所以还要有一个对飞机带翅膀这样的牌组进行排序的方法。
判断牌组类型的代码如下:
Code&&&&&&&&///&&summary&&&&&&&&&///&验证所出牌组是否符合游戏规则&&&&&&&&///&&/summary&&&&&&&&&public&static&bool&IsRules(PokerGroup&leadPokers)&//判断所出牌组类型以及其是否符合规则&&&&&&&&{&&&&&&&&&&&&bool&isRule&=&false;&&&&&&&&&&&&Player.sort(leadPokers);&&&&&&&&&&&&switch&(leadPokers.Count)&&&&&&&&&&&&{&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.单张;&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&if&(IsSame(leadPokers,<span style="color: #))&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.对子;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&if&(leadPokers[<span style="color: #]&==&PokerNum.大王&&&&leadPokers[<span style="color: #]&==&PokerNum.小王)&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.双王;&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&if&(IsSame(leadPokers,<span style="color: #))&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.三张相同;&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&if&(IsSame(leadPokers,&<span style="color: #))&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.炸弹;&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&if&(IsThreeLinkPokers(leadPokers))&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.三带一;&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&if&(IsStraight(leadPokers))&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.五张顺子;&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&if&(IsStraight(leadPokers))&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.六张顺子;&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&if&(IsLinkPair(leadPokers))&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.三连对;&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&if&(IsSame(leadPokers,&<span style="color: #))&&&&&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.四带二;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&if&(IsThreeLinkPokers(leadPokers))&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.二连飞机;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&if&(IsStraight(leadPokers))&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.七张顺子;&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&if&(IsStraight(leadPokers))&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.八张顺子;&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&if&(IsLinkPair(leadPokers))&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.四连对;&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&if&(IsThreeLinkPokers(leadPokers))&&&&&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.飞机带翅膀;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&if&(IsStraight(leadPokers))&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.九张顺子;&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&if&(IsThreeLinkPokers(leadPokers))&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.三连飞机;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&if&(IsStraight(leadPokers))&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.十张顺子;&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&if&(IsLinkPair(leadPokers))&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.五连对;&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&if&(IsStraight(leadPokers))&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.十一张顺子;&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&if&(IsStraight(leadPokers))&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.十二张顺子;&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&if&(IsLinkPair(leadPokers))&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.六连对;&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&if&(IsThreeLinkPokers(leadPokers))&&&&&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&//<span style="color: #有三连飞机带翅膀和四连飞机两种情况,所以在IsThreeLinkPokers中做了特殊处理,此处不用给type赋值.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&if&(IsLinkPair(leadPokers))&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.七连对;&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&if&(IsThreeLinkPokers(leadPokers))&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.五连飞机;&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&if&(IsLinkPair(leadPokers))&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.八连对;&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&if&(IsThreeLinkPokers(leadPokers))&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.四连飞机带翅膀;&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&if&(IsLinkPair(leadPokers))&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.六连对;&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&if&(IsThreeLinkPokers(leadPokers))&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.六连飞机;&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&case&<span style="color: #:&&&&&&&&&&&&&&&&&&&&if&(IsLinkPair(leadPokers))&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.十连对;&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&if&(IsThreeLinkPokers(leadPokers))&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&leadPokers.type&=&PokerGroupType.五连飞机带翅膀;&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&true;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&isRule&=&false;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&}&&&&&&&&&&&&return&isR&&&&&&&&}&&&&&&&&///&&summary&&&&&&&&&///&判断一个牌组指定数量相邻的牌是否两两相同&&&&&&&&///&&/summary&&&&&&&&&///&&param&name="PG"&牌组对象&/param&&&&&&&&&///&&param&name="amount"&指定数量的相邻牌组&/param&&&&&&&&&///&&returns&指定数量的相邻牌是否两两相同&/returns&&&&&&&&&public&static&bool&IsSame(PokerGroup&PG,&int&amount)&&&&&&&&{&&&&&&&&&&&&bool&IsSame1&=&false;&&&&&&&&&&&&bool&IsSame2&=&false;&&&&&&&&&&&&for&(int&i&=&<span style="color: #;&i&&&amount&-&<span style="color: #;&i++)&//从大到小比较相邻牌是否相同&&&&&&&&&&&&{&&&&&&&&&&&&&&&&if&(PG[i]&==&PG[i+<span style="color: #])&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&IsSame1&=&true;&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&IsSame1&=&false;&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&}&&&&&&&&&&&&}&&&&&&&&&&&&for&(int&i&=&PG.Count&-&<span style="color: #;&i&&&PG.Count&-&&i--)&&//从小到大比较相邻牌是否相同&&&&&&&&&&&&{&&&&&&&&&&&&&&&&if&(PG[i]&==&PG[i&-&<span style="color: #])&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&IsSame2&=&true;&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&IsSame2&=&false;&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&}&&&&&&&&&&&&}&&&&&&&&&&&&if&(IsSame1&||&IsSame2)&&&&&&&&&&&&{&&&&&&&&&&&&&&&&return&true;&&&&&&&&&&&&}&&&&&&&&&&&&else&&&&&&&&&&&&{&&&&&&&&&&&&&&&&return&false;&&&&&&&&&&&&}&&&&&&&&}&&&&&&&&///&&summary&&&&&&&&&///&判断牌组是否为顺子&&&&&&&&///&&/summary&&&&&&&&&///&&param&name="PG"&牌组&/param&&&&&&&&&///&&returns&是否为顺子&/returns&&&&&&&&&public&static&bool&IsStraight(PokerGroup&PG)&&&&&&&&{&&&&&&&&&&&&bool&IsStraight&=&false;&&&&&&&&&&&&foreach&(Poker&poker&in&PG)//不能包含2、小王、大王&&&&&&&&&&&&{&&&&&&&&&&&&&&&&if&(poker&==&PokerNum.P2&||&poker&==&PokerNum.小王&||&poker&==&PokerNum.大王)&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&IsStraight&=&false;&&&&&&&&&&&&&&&&&&&&return&IsS&&&&&&&&&&&&&&&&}&&&&&&&&&&&&}&&&&&&&&&&&&for&(int&i&=&<span style="color: #;&i&&&PG.Count&-&<span style="color: #;&i++)&&&&&&&&&&&&{&&&&&&&&&&&&&&&&if&(PG[i].pokerNum&-&<span style="color: #&==&PG[i&+&<span style="color: #].pokerNum)&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&IsStraight&=&true;&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&IsStraight&=&false;&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&}&&&&&&&&&&&&}&&&&&&&&&&&&return&IsS&&&&&&&&}&&&&&&&&///&&summary&&&&&&&&&///&判断牌组是否为连对&&&&&&&&///&&/summary&&&&&&&&&///&&param&name="PG"&牌组&/param&&&&&&&&&///&&returns&是否为连对&/returns&&&&&&&&&public&static&bool&IsLinkPair(PokerGroup&PG)&&&&&&&&{&&&&&&&&&&&&bool&IsLinkPair&=&false;&&&&&&&&&&&&foreach&(Poker&poker&in&PG)&//不能包含2、小王、大王&&&&&&&&&&&&{&&&&&&&&&&&&&&&&if&(poker&==&PokerNum.P2&||&poker&==&PokerNum.小王&||&poker&==&PokerNum.大王)&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&IsLinkPair&=&false;&&&&&&&&&&&&&&&&&&&&return&IsLinkP&&&&&&&&&&&&&&&&}&&&&&&&&&&&&}&&&&&&&&&&&&for&(int&i&=&<span style="color: #;&i&&&PG.Count&-&<span style="color: #;&i&+=&<span style="color: #)&&//首先比较是否都为对子,再比较第一个对子的点数-1是否等于第二个对子,最后检察最小的两个是否为对子(这里的for循环无法检测到最小的两个,所以需要拿出来单独检查)&&&&&&&&&&&&{&&&&&&&&&&&&&&&&if&(PG[i]&==&PG[i&+&<span style="color: #]&&&&PG[i].pokerNum&-&<span style="color: #&==&PG[i&+&<span style="color: #].pokerNum&&&&PG[i&+&<span style="color: #]&==&PG[i&+&<span style="color: #])&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&IsLinkPair&=&true;&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&IsLinkPair&=&false;&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&}&&&&&&&&&&&&}&&&&&&&&&&&&return&IsLinkP&&&&&&&&}&&&&&&&&///&&summary&&&&&&&&&///&判断牌组是否为连续三张牌,飞机,飞机带翅膀&&&&&&&&///&&/summary&&&&&&&&&///&&param&name="PG"&牌组&/param&&&&&&&&&///&&returns&是否为连续三张牌&/returns&&&&&&&&&public&static&bool&IsThreeLinkPokers(PokerGroup&PG)&//判断三张牌方法为判断两两相邻的牌,如果两两相邻的牌相同,则count自加1.最后根据count的值判断牌的类型为多少个连续三张&&&&&&&&{&&&&&&&&&&&&bool&IsThreeLinkPokers&=&false;&&&&&&&&&&&&int&HowMuchLinkThree&=&<span style="color: #;&&//飞机的数量&&&&&&&&&&&&PG&=&SameThreeSort(PG);&//排序,把飞机放在前面&&&&&&&&&&&&for&(int&i&=&<span style="color: #;&i&&&PG.C&i++)&&//得到牌组中有几个飞机&&&&&&&&&&&&{&&&&&&&&&&&&&&&&if&(PG[i]&==&PG[i&-&<span style="color: #]&&&&PG[i]&==&PG[i&-&<span style="color: #])&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&HowMuchLinkThree++;&&&&&&&&&&&&&&&&}&&&&&&&&&&&&}&&&&&&&&&&&&if&(HowMuchLinkThree&&&<span style="color: #)&&//当牌组里面有三个时&&&&&&&&&&&&{&&&&&&&&&&&&&&&&if&(HowMuchLinkThree&&&<span style="color: #)&&//当牌组为飞机时&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&for&(int&i&=&<span style="color: #;&i&&&HowMuchLinkThree&*&<span style="color: #&-&<span style="color: #;&i&+=&<span style="color: #)&//判断飞机之间的点数是否相差1&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&if&(PG[i]&!=&PokerNum.P2&&&&PG[i].pokerNum&-&<span style="color: #&==&PG[i&+&<span style="color: #].pokerNum)&//<span style="color: #点不能当飞机出&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&IsThreeLinkPokers&=&true;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&IsThreeLinkPokers&=&false;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&break;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&IsThreeLinkPokers&=&true;&//牌组为普通三个,直接返回true&&&&&&&&&&&&&&&&}&&&&&&&&&&&&}&&&&&&&&&&&&else&&&&&&&&&&&&{&&&&&&&&&&&&&&&&IsThreeLinkPokers&=&false;&&&&&&&&&&&&}&&&&&&&&&&&&if&(HowMuchLinkThree&==&<span style="color: #)&&&&&&&&&&&&{&&&&&&&&&&&&&&&&PG.type&=&PokerGroupType.四连飞机;&&&&&&&&&&&&}&&&&&&&&&&&&if&(HowMuchLinkThree&==&<span style="color: #&&&&PG.Count&==&<span style="color: #)&&&&&&&&&&&&{&&&&&&&&&&&&&&&&PG.type&=&PokerGroupType.三连飞机带翅膀;&&&&&&&&&&&&}&&&&&&&&&&&&return&IsThreeLinkP&&&&&&&&}&&&&&&&&///&&summary&&&&&&&&&///&对飞机和飞机带翅膀进行排序,把飞机放在前面,翅膀放在后面.&&&&&&&&///&&/summary&&&&&&&&&///&&param&name="PG"&牌组&/param&&&&&&&&&///&&returns&是否为连续三张牌&/returns&&&&&&&&&public&static&PokerGroup&SameThreeSort(PokerGroup&PG)&&&&&&&&{&&&&&&&&&&&&Poker&FourPoker&=&null;&&//如果把4张当三张出并且带4张的另外一张,就需要特殊处理,这里记录出现这种情况的牌的点数.&&&&&&&&&&&&bool&FindedThree&=&false;&&//已找到三张相同的牌&&&&&&&&&&&&PokerGroup&tempPokerGroup&=&new&PokerGroup();&&//记录三张相同的牌&&&&&&&&&&&&int&count&=&<span style="color: #;&//记录在连续三张牌前面的翅膀的张数&&&&&&&&&&&&int&Four&=&<span style="color: #;&//&记录是否连续出现三三相同,如果出现这种情况则表明出现把4张牌(炸弹)当中的三张和其他牌配成飞机带翅膀,并且翅膀中有炸弹牌的点数.&&&&&&&&&&&&//&比如有如下牌组:&&玩家要出的牌实际上应该为&带997,但是经过从大到小的排序后变成了&一不美观,二不容易比较.&&&&&&&&&&&&for&(int&i&=&<span style="color: #;&i&&&PG.C&i++)&&//直接从2开始循环,因为PG[0],PG[1]的引用已经存储在其他变量中,直接比较即可&&&&&&&&&&&&{&&&&&&&&&&&&&&&&if&(PG[i]&==&PG[i&-&<span style="color: #]&&&&PG[i]&==&PG[i&-&<span style="color: #])//&比较PG[i]与PG[i-1],PG[i]与PG[i-2]是否同时相等,如果相等则说明这是三张相同牌&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&if&(Four&&=&<span style="color: #)&//默认的Four为0,所以第一次运行时这里为false,直接执行else&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&//一旦连续出现两个三三相等,就会执行这里的if&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&FourPoker&=&PG[i];&//当找到四张牌时,记录下4张牌的点数&&&&&&&&&&&&&&&&&&&&&&&&Poker&changeP&&&&&&&&&&&&&&&&&&&&&&&&&for&(int&k&=&i;&k&&&<span style="color: #;&k--)&//把四张牌中的一张移动到最前面.&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&changePoker&=&PG[k];&&&&&&&&&&&&&&&&&&&&&&&&&&&&PG[k]&=&PG[k&-&<span style="color: #];&&&&&&&&&&&&&&&&&&&&&&&&&&&&PG[k&-&<span style="color: #]&=&changeP&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&count++;&//由于此时已经找到三张牌,下面为count赋值的程序不会执行,所以这里要手动+1&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&Four++;&//记录本次循环,因为本次循环找到了三三相等的牌,如果连续两次找到三三相等的牌则说明找到四张牌(炸弹)&&&&&&&&&&&&&&&&&&&&&&&&tempPokerGroup.Add(PG[i]);&//把本次循环的PG[i]记录下来,即记录下三张牌的点数&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&FindedThree&=&true;&//标记已找到三张牌&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&Four&=&<span style="color: #;&//没有找到时,连续找到三张牌的标志Four归零&&&&&&&&&&&&&&&&&&&&if&(!FindedThree)&//只有没有找到三张牌时才让count增加.如果已经找到三张牌,则不再为count赋值.&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&count&=&i&-&<span style="color: #;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&}&&&&&&&&&&&&}&&&&&&&&&&&&foreach&(Poker&tempPoker&in&tempPokerGroup)&&//迭代所有的三张牌点数&&&&&&&&&&&&{&&&&&&&&&&&&&&&&Poker&changeP&&//临时交换Poker&&&&&&&&&&&&&&&&for&(int&i&=&<span style="color: #;&i&&&PG.C&i++)&&//把所有的三张牌往前移动&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&if&(PG[i]&==&tempPoker)&&//当PG[i]等于三张牌的点数时&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&if&(PG[i]&==&FourPoker)&//由于上面已经把4张牌中的一张放到的最前面,这张牌也会与tempPoker相匹配所以这里进行处理&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&//&当第一次遇到四张牌的点数时,把记录四张牌的FourPoker赋值为null,并中断本次循环.由于FourPoker已经为Null,所以下次再次遇到四张牌的点数时会按照正常情况执行.&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&FourPoker&=&null;&&&&&&&&&&&&&&&&&&&&&&&&&&&&continue;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&changePoker&=&PG[i&-&count];&&&&&&&&&&&&&&&&&&&&&&&&PG[i&-&count]&=&PG[i];&&&&&&&&&&&&&&&&&&&&&&&&PG[i]&=&changeP&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&}&&&&&&&&&&&&}&&&&&&&&&&&&return&PG;&&&&&&&&}
无序的牌组通过以上代码的洗礼,已经变成了非常容易比较的牌组了。
比较牌组的大小就非常简单了。首先排除特殊牌组炸弹,双王。
然后再比较普通牌组的第一张牌就可以了。下面是牌组比较的代码,重写了PokerGroup的大于号运算符
Code&&&&&&&&public&static&bool&operator&&(PokerGroup&LP,&PokerGroup&RP)&&&&&&&&{&&&&&&&&&&&&bool&IsGreater&=&false;&&&&&&&&&&&&if&(LP.type&!=&RP.type&&&&LP.type&!=&PokerGroupType.炸弹&&&&LP.type&!=&PokerGroupType.双王)&&&&&&&&&&&&{&&&&&&&&&&&&&&&&IsGreater&=&false;&&&&&&&&&&&&}&&&&&&&&&&&&else&&&&&&&&&&&&{&&&&&&&&&&&&&&&&if&(LP.type&==&PokerGroupType.炸弹&&&&RP.type&==&PokerGroupType.炸弹)&//LPRP都为炸弹&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&if&(LP[<span style="color: #]&&&RP[<span style="color: #])&//比较大小&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&IsGreater&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&IsGreater&=&false;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&if&(LP.type&==&PokerGroupType.炸弹)&//只有LP为炸弹&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&IsGreater&=&true;&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&if&(LP.type&==&PokerGroupType.双王)&//LP为双王&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&IsGreater&=&true;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&if&(LP[<span style="color: #]&&&RP[<span style="color: #])&//LP为普通牌组&&&&&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&IsGreater&=&true;&&&&&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&IsGreater&=&false;&&&&&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&}&&&&&&&&&&&&}&&&&&&&&&&&&return&IsG&&&&&&&&}
然后在接收其他玩家牌组的时候调用IsRule方法给牌组定义一个类型,自己出牌的时候也定义一个类型,再在出牌的时候比较俩牌组的大小。
阅读(...) 评论()

我要回帖

更多关于 欢乐斗地主 的文章

 

随机推荐