一直对编写战棋类游戏感兴趣,去年花了些时间来试验把原来C#编写的跳棋改成Android联网对战跳棋,但没有成功,最近再次努力,居然有所成果。

可能是去年想编一个兼顾单机玩和网络玩的游戏,过于抽象了,现在只考虑网络对战。

效果

人和电脑对战

Android REST 开发网络跳棋对战程序_第1张图片


两人对战

Android REST 开发网络跳棋对战程序_第2张图片

设计

主要有两个构件

客户端

com.pnp.chess.android 是客户端在 Android 上的实现

服务器

com.pnp.chess.server 是服务器端, Server 端使用 JavaWebServices 的 REST 来定位 User, Game 等资源

客户端和服务器用 Json 格式交换

服务器端是可以有若干 game, 每个game有一个或者两个 Player 的结构


联网对战的时候, 一个Games中有两个 Human User, 人机对战的时候, 服务器会构造 AI User.

由于 AI User 在服务器上, 所以人机对战也必须连接 Server


Android REST 开发网络跳棋对战程序_第3张图片


另外有 com.pnp.chess.common, 这是服务器和客户端共用代码的集合. ( 比如两端都需要都要用到 Step )


更多相关文章

  1. Android 使用Picasso加载网络图片等比例缩放
  2. 支付宝客户端架构解析:Android 容器化框架初探
  3. Android开发之网络请求通信专题(二):基于HttpClient的文件上传下载
  4. Android在网络中与JavaWeb的项目进行交互的方法(Webservice)
  5. Android也架构之三:简单工厂模式优化网络请求
  6. Android——基于Android Studio开发备忘录客户端
  7. Android多媒体--访问网络上的Audio对应的M3U文件,实现网络音频流

随机推荐

  1. android 4.0 屏蔽home键实现
  2. 使用Toast(android中的一种提醒方式) &
  3. android读取联系人信息(学习版)
  4. Android(安卓)link the libdl.so
  5. Android中TouchDelegate的用法浅析
  6. android editText动态改变事件
  7. android ImageUtils 图片处理工具类
  8. android之Notification的使用
  9. Android(安卓)EditText中添加图标的简单
  10. TextView实现中间文字两侧图片的样式 和