如何一次向所有在线用户显示骰子滚动值?

时间:2015-01-05 12:28:37

标签: php actionscript-3 flash

在动作脚本Adobe Flash中,我创建了一个掷骰子的棋盘游戏。虽然它是一个多人游戏&在线玩,如果玩​​家1掷骰子滚动动作,其值应该对其他玩家可见" (即,Player2,Player3,Player4)。怎么实现呢?

在服务器端使用php。 请提出一些建议。

这里有任何帮助吗?

感谢。

1 个答案:

答案 0 :(得分:2)

这是一个实施问题,而不是特定于任何特定语言。观察者设计模式非常适合您的情况。

根据Wikipedia

  

观察者模式是一种软件设计模式,其中一个称为主体的对象维护其依赖者列表,称为观察者,并通常通过调用其中一种方法自动通知它们任何状态变化。

所以在这种情况下,你的"观察员"是你的球员,你将注册"主题"。每当观察者改变其状态(滚动骰子)时,通知主体,然后通知所有其他观察者。

如何存储数据在这里并不重要。只要观察者通知主体它已掷骰子,主体就可以更新所有注册的观察者。

您可以存储/检索数据库表中的数据。然后你只需要在每个玩家移动时写入它,并在通知主体更新移动的所有观察者时从中读取。

因此每个玩家都可以拥有自己的 id ,这将是您的主要表键,当其中一个进行移动时,表格会更新。您需要一种方法来通知您的游戏,以了解该表已更新。将其写入xml文件,游戏不断检查将是一种方式,并且它会在xml数据更改时更新播放器。

您可以通过各种方式实现该模式,但您会发现使用Observer模式更容易找到它。