基于华为云dev-cloud的黑白棋开发

学习目标:

  • 了解黑白棋游戏开发流程
  • 熟悉华为云服务
  • 了解运行黑白棋游戏所需的与服务器环境配置
  • 了解DevOps
  • 熟悉华为云DevCloud

**整体流程如下: **
基于华为云dev-cloud的黑白棋开发_第1张图片
基于华为云dev-cloud的黑白棋开发_第2张图片
具体操作步骤本文不做详细叙述,主要描述各部分的功能。
**

一:游戏介绍:

**
游戏规则:

基于华为云dev-cloud的黑白棋开发_第3张图片

基于华为云dev-cloud的黑白棋开发_第4张图片
**

二:黑白棋对战代码介绍:

**

2.0服务器端代码介绍:
第1个代码片段是服务器端监听端口,也就是监听客户端,io点people的初始值为0,但服务器端接听到有客户端接入时,io流中的人数就增加1,也就是io people++当客户端,离开时io流中的人数就减1,也就是ill people–。
匹配时先来者标技上set stand,black,即为黑子,也就决定了先手权;后来者标记set stand ,white,后手。

基于华为云dev-cloud的黑白棋开发_第5张图片
2.1客户端代码功能:
来介绍一下帮助大家理解我们游戏的主体逻辑,第1部分,我们先来介绍一下消息的同步逻辑先由服务器决定,先手方若此,等乙方客户端判断逻辑完毕后,登录此消息发送到服务器端,服务器端再将消息同步至另一客户端。这里落子消息通过后,由客户端判断游戏的胜利,单纯的游戏胜利,如积分录像等需要同步至服务器,意外是中途退出包括掉线的,都视为认输,另一方客户端获得胜利。

第2部分的代码是关于场景的初始化,初始化分为三步走,第1步是将期盘上所有的棋子节点实例化,节点实例化以后,8×8的期盘就画好了,并且在节点中添加了触摸事件chesstouch event,该事件主要判断能否落子。
基于华为云dev-cloud的黑白棋开发_第6张图片
在第3部分的代码是在中央位置放置初始棋子,放置四颗黑白相间的棋子(游戏开始基础)
基于华为云dev-cloud的黑白棋开发_第7张图片
绘制棋盘:
基于华为云dev-cloud的黑白棋开发_第8张图片

若成功落子,则要将落子消息发送到服务器端,再由服务器端将消息派发给客户端:

基于华为云dev-cloud的黑白棋开发_第9张图片
更新棋盘,交换回合,强制交换回合和玩家离开:

基于华为云dev-cloud的黑白棋开发_第10张图片
八个方向进行判定,符合条件就将棋子更改为己方的颜色。若己方无棋可走,另一方有棋可走,则强制转换棋权到另一方。
基于华为云dev-cloud的黑白棋开发_第11张图片

**

三:黑白棋通信逻辑

**
3.1
需求:实现两名玩家的黑白棋对战。
匹配阶段:所有接入服务器的客户端视为连入一个大厅hall,当客户端发送匹配请求时,使其加入匹配队列queue,在匹配队列中的人数达到2人时,即令此二人进行游戏对局,新建一个房间room。

3.2

服务器客户端逻辑:
基于华为云dev-cloud的黑白棋开发_第12张图片

你可能感兴趣的:(游戏开发,游戏)