0

我必须为我的软件开发课程创建一个游戏,并且我试图弄清楚如何将我的课程链接在一起以更新例如当我转到不同屏幕时玩家的健康状况。我创建了一个包含玩家所需的所有方法和变量的类播放器,例如,健康、船、名称,但是说我在游戏中打架,我怎么能不断更新健康,因为每次我必须去一个新屏幕,我必须继续创建一个新的播放器实例。

解决这个问题的另一种方法是什么,所以它更面向 OO?

谢谢!!

4

2 回答 2

0

您可能希望考虑使用现有的设计模式来帮助解决您的问题。例如,单例对象可能是您的最佳选择

http://en.wikipedia.org/wiki/Singleton_pattern

于 2012-09-12T13:35:09.770 回答
0

将事件用于此类事情。想象有一个中心位置,所有事件都被发送以进行分发。然后,您的游戏组件可以为某些事件注册侦听器。事件示例:

当有人更新玩家健康时,玩家实例会发送一个带有新值的事件“Health changed”。

“显示健康”组件可以侦听此类事件并相应地更新自身。

这种方法的美妙之处在于,健康组件不需要了解玩家的任何信息。它只是响应“Health(int)”事件。

于 2012-09-12T13:50:08.217 回答