[iPhone] 观察者模式与游戏开发
时间: 2010-07-26 13:23 点击: 次
简介
三月份的时候,我接到一个IPhone游戏项目的开发,为了这个游戏,我学习了观察者模式,并使用它在我的游戏里
背景
在我的游戏中,我设计的GameScene来当作游戏关卡的上层类。它继承Observable,利用GameRole来实践游戏角色,像是Player跟NPC。GameRole则实践Observer,利用观察者模式来实践关卡中的角色的更新。
代码如下
1. class Observable;
2. class Observer : public NSObject
3. {
4. private:
5. // --- Add private member --- //
6. public:
7. // --- Add public member --- //
8. Observer();
9. virtual ~Observer();
10. virtual void Update() = 0;
11. };
12. typedef set<observer*> SET;
13. class Observable : public NSObject
14. {
15. private:
16. // --- Add private member --- //
17. SET m_observers;
18. public:
19. // --- Add public member --- //
20. Observable();
21. virtual~Observable();
22. void RegisterObserver(Observer *o);
23. void RemoveObserver(Observer *o);
24. void NotifyObservers();
25. };
26. void Observable::RegisterObserver(Observer *o)
27. {
28. m_observers.insert(o);
29. }
30. void Observable::RemoveObserver(Observer *o)
31. {
32. m_observers.erase(o);
33. }
34. void Observable::NotifyObservers()
35. {
36. SET::reverse_iterator index;
37. SET::reverse_iterator end = m_observers.rend();
38. for(index = m_observers.rbegin(); index != end; index++)
39. {
40. ((Observer*)(*index))->Update();
41. }
42. }
转自 http://blog.csdn.net/cloudhsu/archive/2010/07/22/5756311.aspx
顶一下(2)
66.7%
踩一下(1)
33.3%
发表评论
本类文章点击排行榜
- [06-11] 游戏是这样写成的 (第一篇:
- [06-11] 学习怎样在 iPhone/iPod Touch 上开
- [06-13] 根据gamebox加工的一个iPhone游戏
- [06-11] iPhone游戏开发的两个技巧
- [01-26] cocos2d 例子
- [06-02] iPhone游戏中,物体跳动时的位
- [03-16] 俄罗斯方块的例子程序
- [03-22] iPhone间通过WiFi联机游戏的代码
- [07-02] iPhone 游戏中实现慢镜头特效的
推荐内容
最近更新
- [08-04] 实现 iPhone 游戏暂停功能的方法
- [07-26] [iPhone] 观察者模式与游戏开发
- [07-08] iPhone游戏中既播放背景音乐又播放特效声音的办
- [07-02] iPhone 游戏中实现慢镜头特效的方法
- [06-30] 暂停的游戏锁屏再开锁返回后异常的解决方法
- [06-13] 根据gamebox加工的一个iPhone游戏框架
- [06-02] iPhone游戏中,物体跳动时的位置算法和控制代码
- [05-14] iPhone游戏中执行动作时不响应触摸的方法
- [05-14] 塔防游戏定时器的使用原则
相关文章
- [08-04] 实现 iPhone 游戏暂停功能的方法
- [07-08] iPhone游戏中既播放背景音乐又播放特效声音的办
- [07-02] iPhone 游戏中实现慢镜头特效的方法
- [06-30] 暂停的游戏锁屏再开锁返回后异常的解决方法
- [06-13] 根据gamebox加工的一个iPhone游戏框架
- [06-02] iPhone游戏中,物体跳动时的位置算法和控制代码
- [05-14] iPhone游戏中执行动作时不响应触摸的方法
- [05-14] 塔防游戏定时器的使用原则
- [03-22] iPhone间通过WiFi联机游戏的代码例子
- [06-11] 游戏是这样写成的 (第三篇: 简单的游戏框架)


根据gamebox加工的一个iPhone游戏框架
iPhone游戏开发的两个技巧
学习怎样在 iPhone/iPod Touch 上开发自制游戏全记录