斗地主算法(1)

现在在公司实习用quick-coco2dx引擎写了斗地主,所有代码用lua脚本实现。我把算法封装成了一个lua类(CardUtils)所有代码可以直接拿来使用。

首先先弄清楚有那些牌型:

火箭or王炸:即双王(大王和小王),最大的牌。

        炸弹:四张同数值牌(如四个 7 )。

        单牌:单个牌(如红桃 5 )。

        对牌:数值相同的两张牌(如梅花 4+ 方块 4 )。

        三张牌:数值相同的三张牌(如三个 J )。

        三带一:数值相同的三张牌 + 一张单牌或一对牌。例如: 333+6 或 444+99 

        单顺:五张或更多的连续单牌(如: 45678 或 78910JQK )。不包括 2 点和双王。

        双顺:三对或更多的连续对牌(如: 334455 、 7788991010JJ )。不包括 2

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Unity斗地主算法是指在Unity游戏引擎中实现的斗地主游戏的核心算法斗地主是一种扑克牌游戏,其规则包括发牌、叫分、出牌、抢地主等环节。在Unity斗地主游戏中,算法主要负责随机发牌、牌型判断、分数计算、叫分和抢地主等操作。 在Unity斗地主游戏中,随机发牌的算法采用了洗牌、发牌和排序三个步骤。因为斗地主需要将54张牌均分成三份,所以洗牌的随机性和准确性非常重要。在发牌和排序阶段,算法需要保证每个玩家得到17张牌,且牌的大小和花色是随机的,同时牌的组合方式也要考虑游戏的规则。 牌型判断算法是指判断出每个玩家所出的牌型,以便计算分数和判断胜负。这个算法需要对牌型进行分类,如单牌、对子、三张等,同时还需要考虑牌型的组合和大小,例如顺子、连对、飞机等。算法需要准确判断出每个玩家所出的牌型并进行比对,依此来判断胜负。 分数计算需要根据游戏规则进行计算,包括分数的基本计算、炸弹的额外分值和特殊情况下的倍数加成等。算法需要按照游戏规则进行计算,计算每个玩家所得分数。 叫分和抢地主的算法是玩家对游戏的一次选择,需要根据当前发牌的情况和已知牌型进行判断算法需要对每个玩家的叫分和抢地主进行判断和比对,以此判断最终的地主和游戏规则。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值