使用Java RMI的多人纸牌游戏(Hearts)的结构

时间:2013-08-15 17:45:58

标签: java rmi distributed-computing multiplayer middleware

我正在试图找出使用Java RMI实现“Hearts”多人游戏的最佳做法。

这是我到目前为止的想法:

  • 一个远程接口,包含玩家要求的常见任务的方法(每个玩家的交易卡,将牌传递给其他玩家,打牌等)。

  • 服务器将包含4个玩家对象,其中包含他们的牌,当前效果(追求2个俱乐部,允许或不允许在游戏中玩心牌等)以及定义当前游戏状态的变量(卡片)已经玩过,正在使用的套装,如果可以玩心牌等等。)

  • 客户端实例只处理GUI(根据远程方法调用提供的结果进行更改)

我仍然不知道:

  • 播放器播放卡片后,如何在操作完成后立即与其他客户端进行有效通信以更新其GUI? (我只找到客户端调用服务器做某事的例子,而不是相反的例子)

  • 我是否应该将每个Player对象实现为远程对象?或者只是常规对象进入服务器实例?

  • 是否可以使用线程控制每个客户端状态(正在播放,等待其他玩家,结束回合......)如果是这样,我该怎么做?

  • 欢迎任何关于应用程序结构如何变得更好的建议。

0 个答案:

没有答案