谁有用蓝牙联机手机游戏的游戏 不要纸牌类的 发过来重赏

当前位置: >
> flex联机游戏开发-斗地主游戏:(一)核心逻辑这是我希望开发的第一个纸牌类游戏,斗地主本身来说是
flex联机游戏开发-斗地主游戏:(一)核心逻辑这是我希望开发的第一个纸牌类游戏,斗地主本身来说是
ooooty & at
flex 联机游戏开发 - 斗地主游戏:(一)核心逻辑
  这是我希望开发的第一个纸牌类游戏,斗地主本身来说是一个有限用户的回合制游戏,核心逻辑与棋类游戏并无多大的不同,但是因为并无多大的行棋算法,所以位置显得不那么的重要。所以我决定还是用开发四国军棋形成的flexchessapi来开发这个游戏,如果flexchessapi不能胜任这个工作,我会考虑形成一个通用的flexcardapi来开发这个游戏。这样,我就能利用flexcardapi开发更多的游戏,比如诈金花等。
  核心逻辑开发完成后效果如图所示
  好了,现在我们开始设计一些纸牌类的一般逻辑思考,放在一个静态类如CardHelp.as中。。
  1) 设计一幅牌
  我们对一幅牌的每一张牌应该给定一个值,每个值包括花色与本身的大小,这样,我们就以一个3位数的值来代表一张牌,比如303代表红花3,414代表黑桃A,这样,我们就能够设计出一幅牌的完整数组,不同的牌需要的完整数不同,比如扎金花是不要王,斗地主是要王的,现在,我们设计一幅牌。
  /**  *斗地主带王的一幅完整的牌   * 在斗地主中,2是比A还大的牌,我们不能叫102,就叫115吧。  */  public static const CARDS_WITH_JOKER:Array=[115,103,104,105,106,107,108,109,110,111,112,113,114,215,203,204,205,206,207,208,209,210,211,212,213,214,315,303,304,305,306,307,308,309,310,311,312,313,314,415,403,404,405,406,407,408,409,410,411,412,413,414,518,519];  /**  *扎金花不带王的一幅完整的牌   */  public static const CARDS_NO_JOKER:Array=[102,103,104,105,106,107,108,109,110,111,112,113,114,202,203,204,205,206,207,208,209,210,211,212,213,214,302,303,304,305,306,307,308,309,310,311,312,313,314,402,403,404,405,406,407,408,409,410,411,412,413,414]; 
  设计两个帮助方法
  /**  *获得特定处于的花色   * @param card  * @return   *   */  public static function getHuaShe(value:int):int{  return Math.floor(value/100); } /**  * 获得特定牌的原始值   * @param card  * @return   *   */  public static function getPureValue(value:int):int{  return value%100; }
   2)牌有了,我们开始设计一个发牌的函数
  2.1)发一张牌,发牌函数相对比较简单,直接从一幅牌的数组中取一张即可,注意的是,取完后应该将该牌删除,以免下次再发一样的牌。
  /**  * 获得牌组中一张随机的牌值   * @param cards  * @return   *   */  public static function getRadomCard(cards:ArrayCollection):int{  if (cards.length==0) return -1;  var key:int=Math.round(Math.random()*(cards.length-1));  return cards.removeItemAt(key)   }
  2.2)发一手牌,对斗地主来说,一手牌就是17张,最后的三张就是底牌,在发牌的时候,我们考虑的是给牌排序,这样,发完牌后就自动从大到小排列。
  /**  * 获得一个随机的一手牌。  * @param cards 全部牌  * @param num 牌的数量  * @param sort 是否排序  * @return   *   */  public static function getRadomCards(cards:ArrayCollection,num:int,sort:Boolean=true):ArrayCollection{  var temp:ArrayCollection=new ArrayCollection();  do{  var cardvalue:int=getRadomCard(cards);  trace("生成牌:"+getDisplayName(cardvalue));  if (!sort)   temp.addItem(cardvalue);  else  {   var added:Boolean=   for (var i:int=0;i&temp.i++)   {      var value:int=temp.getItemAt(i)   if (cardvalue%100&value%100)   {    temp.addItemAt(cardvalue,i);    added=      }      }   if (!added)   {   temp.addItemAt(cardvalue,i);   }       }    num--;  }while(num&0);  trace("排序后:"+temp.toString());  }
  3)进入斗地主的逻辑,我们现在设计一个通用类叫 DoudizhuHelp.as。
  斗地主游戏中的牌型很多,算法也各有不同,但我总觉得网上一些通用的算法有点铺天盖地,所以,我决定自己来重新想一下算法,总的来说,无论你出什么处于,三带二,bomb,4带一等,你总是有个主牌的,从牌只认张数,大小是无所谓的,所以,我将主牌清点出来应该就只有 对子,3条,bomb,双王,顺子这五类,所以,在发牌或者拿到底牌后,我们直接将所有的主牌类型清理出来即可。
  现在,写一个清理主牌类型的函数。
  /**  *获得当前牌的所有牌型   * @return   *   */  public function initType():void{    var temp:ArrayCollection=new ArrayCollection();
  for (var i:int=0;i&_cardAC.length-1;i++)  {
  var card1:ICard=_cardAC.getItemAt(i) as IC   var card2:ICard=_cardAC.getItemAt(i+1) as IC      //添加至双王   if (card1.pureValue==18||card1.pureValue==19)   {   if (!shuangwangAC.contains(card1.pureValue))    shuangwangAC.addItem(card1.pureValue);   }   //相同部分,我们只需要判断一次   if (card1.pureValue==card2.pureValue)   {      //添加至bomb
  if (thintains(card1.pureValue))   {    if (!thintains(card1.pureValue))    this.zhadanAC.addItem(card1.pureValue);   }         //添加至三条   else if (thintains(card1.pureValue))   {    this.santiaoAC.addItem(card1.pureValue);   }   //添加至对子   else   {    this.duizhiAC.addItem(card1.pureValue);   }            }   //添加至顺子   else if (card1.pureValue==card2.pureValue+1&&card2.pureValue!=3)   {   //2不能加入顺子中   if (card1.pureValue==15)      if (!temp.contains(card1.pureValue))    temp.addItem(card1.pureValue);   if (!temp.contains(card2.pureValue))    temp.addItem(card2.pureValue);   }   //位数不等或者已经到达最后   else   {   if (card2.pureValue==3) temp.addItem(card2.pureValue);   if (temp.length&=5)   {    this.sunzhiAC.addAll(temp);   }   temp=new ArrayCollection();      }          }  //如果没有双王,则清空双王集合  if (shuangwangAC.length&2)  {  shuangwangAC.removeAll();    }     trace("双王.."+this.shuangwangAC.toString());  trace("对子.."+this.duizhiAC.toString());  trace("三条..."+this.santiaoAC.toString());  trace("顺子..."+this.sunzhiAC.toString());  trace("bomb...."+this.zhadanAC.toString());   }
  分析每一句的意义。函数应该比较好懂,暂时还没发现什么bug,不过我总觉得不放心:),高手们可以帮我找找bug,谢谢了。。。
  现在,我试着分析了一手牌。
  双王..对子..15,9,6,4,3三条...15,9顺子...10,9,8,7,6,5,4,3bomb....
  在这一个月里,我已经开了太多的头,四国军棋 写到了3,五子棋 写到了2,中国象棋 写到了 1,所以我决定在再完成一个扎金花的游戏逻辑分析后,下一步就开始埋头做联机游戏服务器网站
的开发与联机游戏客户端api的开发,然后对所有已经完成逻辑的游戏进行统一更新,在第三方应用发展迅猛的今天,我的目标是建成一个所有程序员可以轻松进行第三方游戏应用开发测试的公用开源平台,平台将一个完整的sns网站测试环境与以下的各类api,感兴趣的朋友可以随时关注项目开发进展情况,如果你极端感兴趣,或者您仍旧怀着工作部分为了理想活着的大志。你也可以加我QQ 2 1 0 7 3 4 5 2 了解这个项目或者参与这个项目的开发,您不必担心我,你面对的只是一个除了有点忙,没什么坏习惯的开发者。
本问题标题:
本问题地址:
温馨提示:本问答中心的任何言论仅代表发言者个人的观点,与希赛网立场无关。请对您的言论负责,遵守中华人民共和国有关法律、法规。如果您的言论违反希赛网问答中心的规则,将会被删除。
暂无合适的专家
&&&&&&&&&&&&&&&
希赛网 版权所有 & &&&&增值电信业务经营许可证湘B2-多人联机扑克游戏架构及其实现多人游戏,扑克游戏,多人联机,很多人
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
多人联机扑克游戏架构及其实现
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口后使用快捷导航没有帐号?
只需一步,快速开始
查看: 1077|回复: 4
最后登录贡献度13 金元1118 银行存款0 注册时间阅读权限30帖子主题精华0积分164UID3494279
中级玩家, 积分 164, 距离下一级还需 36 积分
贡献度13 金元1118 注册时间积分164精华0帖子
本帖最后由 josbrd 于
13:23 编辑
我是有Steam账号的,用了联机补丁,多人游戏里没办法搜到任何其他人建的游戏啊?联机补丁具体是指哪方面呢?
最后登录贡献度14 金元2061 银行存款0 注册时间阅读权限50帖子主题精华0积分262UID1956091
高级玩家, 积分 262, 距离下一级还需 238 积分
贡献度14 金元2061 注册时间积分262精华0帖子
你加我好友,现在试试看 ID:flywof_war
最后登录贡献度2 金元502 银行存款0 注册时间阅读权限30帖子主题精华0积分58UID2323493
中级玩家, 积分 58, 距离下一级还需 142 积分
贡献度2 金元502 注册时间积分58精华0帖子
D版只能跟D版连吧,正版里面还是能搜到很多游戏的
最后登录贡献度2 金元502 银行存款0 注册时间阅读权限30帖子主题精华0积分58UID2323493
中级玩家, 积分 58, 距离下一级还需 142 积分
贡献度2 金元502 注册时间积分58精华0帖子
好像只能和D版连,正版还是能搜到很多人的,正在打
最后登录贡献度13 金元1118 银行存款0 注册时间阅读权限30帖子主题精华0积分164UID3494279
中级玩家, 积分 164, 距离下一级还需 36 积分
贡献度13 金元1118 注册时间积分164精华0帖子
谢谢楼上的各位,找到好基友了
Powered by后使用快捷导航没有帐号?
体验过《水手之梦》后,不知道为什么,在奇妙又平淡的探索中寻回了一种温暖和煦的心情...
  今天苹果又因为 iMessage 惹祸上身了,这次同样还是因为用户的设备从 iPhone 换成...
2014 年就剩最后两个月,随着西方感恩节的圣诞节的临近,各大手机厂商之间的新机大战...
虽说 iOS 8 已经加入了很多之前需要越狱才能拥有的功能,但是越狱人数并不会因此而大...
Cydia Substrate 更新,为日后扩展功能作准备。
不用连接手机,也能打电话。
厌倦了 iPhone 6 的机身配色?来打造一款专属于自己的另类 iPhone 吧!
贸易协议什么的最有爱了,谁不想以更便宜的价格购买国外品牌的产品呢?
《阿尔文的旅行》(The Journey of Alvin)是游戏开发工作室 Meikme 所推出的一款富有...
采用 Unity 3D 引擎打造,将各种特色玩法融于一体的三国题材力作《推倒三国》近日开启...
《生命在此(Let There Be Life)》是一款曾经在 2013 年获奖的休闲游戏,此前已经在 ...
《汽车粉碎者》( Car Breakers )是一款由知名游戏开发商 Bulkypix 所推出的奇葩益...
不知玩家们是否还记得当年美国推翻伊拉克萨达姆政权后,前总统于一次演讲中遭受到伊...
《山羊小混混(GoatPunks)》又是什么鬼?难道是《模拟山羊》的近亲?其实这是 Antoni...
《迷你液体方块》( Briquid Mini )是游戏开发商 Briquid 将原作《液体方块》移植到...
告别单调无聊,手机壳也玩出了新高度。
随着科技的发展,各种移动设备层出不穷,各式各样的设备可以方便的满足人们的各种生活...
在苹果 10 月发布会上将 iPad mini 3配色增加金色之后,Delux 立即更新小 i mini 产品...
还记得小时候在小区花园或是广场上观看露天电影的情景吗,前方幕布流动的光影早已幻化...
还在苦恼新 iPhone 6 Plus 的小容量空间存不下多个慢动作视频?让 iBridge 帮你救急吧...
你想要为 iPhone 6 / Plus 选择什么样的保护壳?
ClamCase是一款非常与众不同的配件,除了起到保护机身的作用之外,它还能让你的iPad A...
防摔保护壳哪家强?上众筹网找 Neverdrop 帮忙!
持4台iPad,有没有什么棋牌类游戏可以用蓝牙联机玩的?
注册时间 最后登录
在线时间949 小时 UID
主题帖子人气
红苹果, 积分 409, 距离下一级还需 91 积分
持4台iPad,有没有什么棋牌类游戏可以用蓝牙联机玩的?绑定有分
注册时间 最后登录
在线时间1889 小时 UID
主题帖子人气
注册时间 最后登录
在线时间2373 小时 UID
主题帖子人气
今天没太阳都这么晒
注册时间 最后登录
在线时间3662 小时 UID
主题帖子人气
官方解锁的表示无鸭梨
找了好久了
基友出来聚会够打三圈了
我不是一定要你回来,只是当又一个人看海,回头才发现你不在,留下我迂回的徘徊……
注册时间 最后登录
在线时间949 小时 UID
主题帖子人气
威锋有你更精彩:)
注册时间 最后登录
在线时间949 小时 UID
主题帖子人气
威锋有你更精彩:)
注册时间 最后登录
在线时间949 小时 UID
主题帖子人气
威锋有你更精彩:)
注册时间 最后登录
在线时间389 小时 UID
主题帖子人气
青灬青、是我唯一爱的
目测楼主有钱淫、、、、
注册时间 最后登录
在线时间470 小时 UID
主题帖子人气
三国Kill,大富翁
威锋旗下产品
Hi~我是威威!
沪ICP备号-1 丨 深公安网监备案号 5
增值电信业务经营许可证:
Powered by Discuz!| | | | | | | | | | | | | | |

我要回帖

更多关于 ios蓝牙联机游戏 的文章

 

随机推荐