[IPhone] 观察者模式与游戏开发
2010-07-22 20:46
316 查看
简介
三月份的时候,我接到一个IPhone游戏项目的开发,为了这个游戏,我学习了观察者模式,并使用它在我的游戏里
背景
在我的游戏中,我设计的GameScene来当作游戏关卡的上层类,它继承Observable,利用GameRole来实践游戏角色
像是Player跟NPC,GameRole则实践Observer
利用观察者模式,来实践关卡中的角色的更新
UML
Observer Code
三月份的时候,我接到一个IPhone游戏项目的开发,为了这个游戏,我学习了观察者模式,并使用它在我的游戏里
背景
在我的游戏中,我设计的GameScene来当作游戏关卡的上层类,它继承Observable,利用GameRole来实践游戏角色
像是Player跟NPC,GameRole则实践Observer
利用观察者模式,来实践关卡中的角色的更新
UML
Observer Code
class Observable; class Observer : public NSObject { private: // --- Add private member --- // public: // --- Add public member --- // Observer(); virtual ~Observer(); virtual void Update() = 0; }; typedef set<observer*> SET; class Observable : public NSObject { private: // --- Add private member --- // SET m_observers; public: // --- Add public member --- // Observable(); virtual~Observable(); void RegisterObserver(Observer *o); void RemoveObserver(Observer *o); void NotifyObservers(); }; void Observable::RegisterObserver(Observer *o) { m_observers.insert(o); } void Observable::RemoveObserver(Observer *o) { m_observers.erase(o); } void Observable::NotifyObservers() { SET::reverse_iterator index; SET::reverse_iterator end = m_observers.rend(); for(index = m_observers.rbegin(); index != end; index++) { ((Observer*)(*index))->Update(); } }
相关文章推荐
- [iPhone] 观察者模式与游戏开发
- [iPhone] 观察者模式与游戏开发
- Cocos2D-x游戏开发之二十三:CCNotificationCenter观察者模式(2)-不同层之间事件的发送和接受
- 关于iphone开发中观察者模式中的kvo机制的总结
- 【IPhone开发】NSNotificationCenter观察者模式给主线程发送通知
- 【potatoes游戏开发】cocos2dx3.X项目重写(八)观察者模式(中)
- 【iOS-Cocos2d游戏开发之八】开启高清(960*640)模式问题与解答、图片适配以及设置iphone横竖屏
- Cocos2D-x游戏开发之:CCNotificationCenter观察者模式基础
- 【iOS-Cocos2d游戏开发之八】开启高清(960*640)模式问题与解答、图片适配以及设置iphone横竖屏
- 游戏开发常用设计模式(一):观察者模式
- 【Cocos2d游戏开发之八】开启高清(960*640)模式问题与解答、图片适配以及设置iphone横竖屏
- 【iOS-Cocos2d游戏开发之八】开启高清(960*640)模式问题与解答、图片适配以及设置iphone横竖屏
- 游戏系统设计开发之观察者模式
- 【Cocos2d游戏开发之八】开启高清(960*640)模式问题与解答、图片适配以及设置iphone横竖屏
- 观察者模式--游戏开发
- [观察者模式]在游戏开发中的应用
- 【iOS-Cocos2d游戏开发之八】开启高清(960*640)模式问题与解答、图片适配以及设置iphone横竖屏
- Cocos2D-x游戏开发之二十二:CCNotificationCenter观察者模式基础(1)
- Cocos2d-x观察者模式其实很简单!!--之游戏开发《赵云要格斗》(13)
- 【potatoes游戏开发】cocos2dx3.X项目重写(八)观察者模式(中)