建议实体之间的弹性游戏通信

时间:2010-11-16 17:10:52

标签: flex events communication entities

我正在开发一款Flex游戏,这是一种桌牌游戏。考虑使用这个实体开发其他游戏,我选择创建与游戏分离的实体,甚至是其他游戏实体。因此,我目前正在使用事件进行游戏实体之间的通信。

在我的情况下,游戏实体指的是例如玩家手部件,其可以接收卡,或者通过自定义请求和交易事件将卡发送到另一个未知部件。例如,一组持卡人组件也会发生同样的情况。

这种方法在开始时似乎是一个很好的设计师,但经过一段时间后,我的游戏控制器类有很多事件处理函数,这对我来说开始变坏了。

我目前的想法是创建一个游戏事件管理器,配合我的游戏控制器来处理事件和清理控制器代码。

最后,我不确定上面提到的我的设计决定,所以我想知道你们这些游戏的通信设计是什么。

我希望这个问题的答案也可以帮助别人。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

你能把它分成几个控制器类吗?在选项卡式应用程序中,我为每个选项卡使用spearate控制器。将你的应用分解成合理的碎片不会像切割和干燥一样,但很有可能。

一个建议可能是:

  • MainController - 处理游戏的“shell”,例如应用程序启动,菜单,启动画面等......

  • GameController - 处理状态变化和基于用户的事件,如轮流,检查胜利条件,更新分数等......

  • EntityController - 您的游戏实体(卡片,卡片组和指针)之间的通信。

我很难用这么少关于你游戏的信息作出太多的判断,但我希望你明白这个想法。

此外,如果你想减少样板事件处理代码,我再次使用框架的想法。我听说过关于机器人腿的好消息,并亲自在一些项目上使用过Swiz。 Swiz有很好的,不引人注意的事件调解swizframework.org