Swoole和WebSocket之斗地主中篇准备发牌抢地主

  • Swoole和WebSocket之斗地主中篇准备发牌抢地主已关闭评论
  • 152 views
  • A+
所属分类:PHP

这篇文章是Swoole和WebSocket之斗地主上篇进房间的续集,在这里我们主要讲解准备->发牌->抢地主整个流程。

Swoole和WebSocket之斗地主中篇准备发牌抢地主

开始

环境和上次保持一致即可.

功能实现

我们这期需要实现的有准备协议发牌推送抢地主这几个协议.

准备协议

当一个用户准备,需要通知其它的用户更改显示状态, 当最后一个人准备的时候我们就发牌,我要通知用户抢地主.

  • 功能分析

当用户准备的时候,我要通知其它用户更新准备用户的状态, 若是最后一个准备我们需要洗牌推送发牌协议.

Note:在这里我们抢地主不作复杂的流程,我们要是抢了就是成功为地主,没有抢就将消息发给下一个人抢。

  • 服务端

修改协议文件,实现准备协议的代码

  1. 修改协议路由protocol.php
  1. 实现代码
  • 客户端

我们只需要实现对应的readyStatusassignPoker就行了.

实现的客户业务代码

以上服务端和客户端代码就完成了用户准备、发牌、抢地主功能。下一期我们讲下准备出牌的实现.

Note: 在代码中我们以实现功能为主,实际有好多情况没有去考虑以及一些BUG。比如说关闭页面需要断开用户通知给其它用户等等。

源码地址

https://github.com/TianLiangZhou/loocode-example/tree/master/landowner

效果地址

https://example.loocode.com/landowner/index.html

推荐阅读

  1. https://wiki.swoole.com/
  2. https://github.com/TianLiangZhou/surf
  3. https://pixijs.io/examples/
  4. https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API
  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin