网络麻将的宝牌设计

今天在帮客户改东北乾安的麻将,乾安麻将的宝牌比效复杂,需求如下:
6.1 宝牌:可以替代任何牌的“万能牌”。
6.2 宝牌产生:牌墙中的最后一张牌为“宝”牌。
6.3 宝牌不能查看。
6.4 换宝:宝牌被宝杠以后,牌墙中倒数第2张牌为宝牌。
6.5 用户听牌后才能使用宝牌。

开始搞了,首选给宝牌定一个变量:看了一下代码,直接把财神当宝牌用了。

  1. 首先在开始游戏的地方把宝牌重置。
  2. 在用户听牌的动作上加一个读取宝牌的代码,从库存牌变量里取最后一张,这里注意,库存牌里最后一张的key是1,是倒过来的,取的时候要检查库存牌是否存在,不存再就往前一张牌取,因为杠牌的时候也取的是最后一张牌,这样可能后面的牌有几个是被杠的玩家取走了不存在了,上代码:
    //获取宝牌,从后面取最后一张,如果不存在就往前一张取
    if(m_cbBaoCard == 0x00)
    {
    for(WORD i=1;i<=8;i++)
    {
    m_cbBaoCard = m_cbRepertoryCard[i];
    if(m_cbBaoCard !=0x00)
    {
    SineCount = i;
    break;
    }
    }
    }
  3. 因为用户杠牌也是取的最后一张,所在在用户杠牌操作的时候,需要查看一下有没有用户听牌,如果有,就重新换宝牌,方法和听牌操作的定义宝牌的一样。
  4. 宝牌只对上听的用户有效,没有上听的用户无效,需要在用户出牌、杠牌的地方加上判断。

原文地址:http://blog.51cto.com/13400346/2062602

时间: 2024-10-07 05:04:48

网络麻将的宝牌设计的相关文章

房卡麻将分析系列 &quot;牌局回放&quot; 之 播放处理

持续放出房卡麻将设计与研发讲解.敬请关注微信共众号:红孩儿的游戏开发之路 房卡麻将分析系列 "牌局回放" 之 播放处理 昨天红孩儿给大伙讲了讲"牌局回放"的数据记录处理,有了数据的存储,下面就是数据的显示了. 实话讲,好久没用过 SQL Server 来做数据库了, 网狐的服务器是基于WIN,IOCP,  SQL Server 这套路子.配置好后,可以在QPTreasureDB数据库中看到三个牌局相关的表. 其中dbo.PrivateGameRecord是存储当前游

麻将语音报牌器

麻将语音报牌器手机l382=6250=830哪里有卖报道,一段时间以来,清华大学网络被入侵,华为.中兴被监控,各种有关互联网安全的负面消息不断出现,引发人们的长期关注,今天,国家互联网信息办公室宣布,为维护国家网络安全.保障中国用户合法利益,我国即将推出网络安全审查制度. 麻将语音报牌器 目前,我国网民数量位居世界第一.国家互联网信息办公室发言人姜军表示,少数国家政府和企业长期利用自己产品的单边垄断和技术独霸优势,大规模收集敏感数据,近年来,我国政府机构.企业.大学和电信主干网络遭遇大规模的侵入

淄博淘宝装修设计网站建设

淄博纳米网络提供淘宝京东等网店全套设计装修网站建设服务,包含产品摄影,详情页设计,店铺装修等,淄博专业的淘宝设计公司,拥有多年淘宝经验,期待与您合作!大量案例 ! 网站建设微网站建设与微信公众平台开发 SEO优化 APP开发

[GXOI/GZOI2019]宝牌一大堆(dp)

luogu     bzoj 这个麻将题还算挺友善的,比隔壁zjoi的要好得多... 比较正常的做法是五维dp 但事实上六维dp也是完全不会被卡的 七对子选权值最高的七个,国士无双直接$13^2$暴力 $dp[i][j][0/1][k][l][m]$表示枚举到了第i张牌,已经凑了j个面子,有无雀头,第i张牌已经用了k张,第i+1张牌用了l张,第i+2张牌用了m张,直接暴力转移... 然后你会得到50... 当然需要优化. 优化1: 枚举到dp值为0的直接continue,这样的不合法牌型有很多可

习题:宝牌一大堆(DP&amp;卡常)

题目 传送门 思路 这道题主要是状态不好想和题目不好理解 如果你和笔者一样没有接触过麻将 我们首先将整个麻将进行hash处理 定义\(dp_{i,j,k,l,m,n}\)为前i种牌,杠子和面子总共的数量为j,雀子的数量为k,第\(i-2\)种牌的数量为l,第\(i-1\)种牌的数量为m,第种i牌的数量为n 需要特别注意的是,DP的值是不将i-2~i这三种牌考虑进去的 那么可以写出转移 \(\begin{cases}dp_{i,j+1,k,l+1,m+1,n+1}(\mbox{顺子})\\dp_{

淘宝的设计印证了我的思路正确

前一段在设计一个电商平台,站内会有很多家居装修装饰的图片展示,所以我的设计思路是黑白色显示简洁.逼格高,另外介于站点的内容特点,这种颜色搭配最容易让内容出彩.此思路当时并没有被采纳. 今天看到淘宝出了big这一子域名的站点,(big.taobao.com),这个站点的内容也以图片为主,为了显示逼格高,采用了黑白色作为背景色,加上头部醒目的红色menu部分,背景 VS menu VS 绚烂内容 这三层视觉层次就显得非常清晰.淘宝的设计印证了我的思路正确. 下面是截图:(一个是只有menu和背景:另

淘宝数据库负责人介绍淘宝数据库设计

江枫先给我们介绍一下自己,和你在这次淘宝"双十一"事件中所扮演的角色? 大家好,我是淘宝技术保障部的江枫.目前主要负责数据库的稳定性这一块.双十一这一天,我主要是负责协调整个数据库团队和保障整个数据库在"双十一"过程中的稳定性不受任何影响. 那给我们详细的谈一下淘宝网现在整个数据库整体的一个架构,包括它硬件的组成.  淘宝的数据库发展到今天,已经是一个非常复杂的系统.我大概算了一下,淘宝目前所有的数据库服务器加起来可能已经超过800台.那在这么一个规模底下,淘宝的数

Python 的网络传输文件功能的设计与实现

摘要:Python 是目前较流行的程序设计语言之一,它具有简单易学代码简洁等特点,并且Python 提供了大量的功能库文件,开发大型应用程序时非常方便,广泛用于网站开发.游戏后台开发等方面.该文基Python 提供的网络编程库,开发了网络文件传输的功能,该功能可以快速有效地在互联网上进行文件的传输.1 Python 介绍Python是由Guido van Rossum在1989年底创造的,在1991年发行了第一个公开版本.Python是一种面向对象的.解释型的.动态数据类型的程序设计语言.Pyt

交换机开发(三)—— 深入分析三层网络交换机的原理和设计

引言 传统路由器在网络中起到隔离网络.隔离广播.路由转发以及防火墙的作业,并且随着网络的不断发展,路由器的负荷也在迅速增长.其中一个重要原因是出于安全和管理方便等方面的考虑,VLAN(虚拟局域网)技术在网络中大量应用.VLAN技术可以逻辑隔离各个不同的网段.端口甚至主机,而各个不同VLAN间的通信都要经过路由器来完成转发.由于局域网中数据流量很大,VLAN间大量的信息交换都要通过路由器来完成转发,这时候随着数据流量的不断增长路由器就成为了网络的瓶颈.为了解决局域网络的这个瓶颈,很多企业内部.学校