最近在考虑斗地主程序的实现,斗地主这个棋牌游戏是众多棋牌游戏中最为有特色的一款,它简单易上手,包含了运气和技巧,经久不衰。
棋牌游戏的分类和区别
麻将类
麻将类一般都是三三成一组,然后对子带几组牌就是胡牌了,里面的操作主要是吃、碰、杠之类,胡牌可以对对胡、清一色、杠上花等,会根据情况有所变化。
扑克类
扑克类就是几种牌,比如说单牌、对子、三带、炸弹这些类型牌,也就是说把牌分类型,然后比大小,一种看分高,一种看跑得快!
关于棋牌的算法和数据结构
棋牌的算法,这里着重研究一下斗地主的算法,斗地主是一种典型的扑克游戏,扑克游戏一般都对牌型进行分类,在不同类型内进行比大小。扑克比大小的传统是很深远的,在小孩子还不会玩扑克牌的时候,他们会玩一种比大小的游戏,根据扑克上数字的大小或者图片内容的大小来决定输赢,在决定完输赢之后,赢的这一方可以得到对方的卡片,这是一种原始的扑克游戏,比大小。比大小是一切扑克的基础。
斗地主游戏的几个特点
斗地主游戏一般每个人分到17张牌,然后剩余3张牌,剩余的三张牌根据抽签情况来决定归属,拿到这三张牌的就是地主,和升级不一样,斗地主的这三张牌是不用埋下去的,只要拿着就行。在完成分牌之后,斗地主就已经完成了一个很大的任务。可以说,分完牌以后,结局已经决定了一半。也就是说,我们在分完牌以后工作完成了一半,但是实际上编程的精彩才刚刚开始而已。
请看斗地主的思路图。