#ifndef _GameFramework_H #define _GameFramework_H //#include class SceneBase; class GameFramework { private: static SceneBase *s_pCurrentScene; static SceneBase *s_pNextScene; static SceneBase *s_pOldNextScene; //·Îµù½ÅÀ» Á¦¿ÜÇϰí ó¸®ÇÒ ´ÙÀ½¾À\ //ÇöÀç´Â ¹èƲ¾À -> ·Îµù¾À -> ¹Ì¼Ç¾À ¼øÀ¸·Î º¯°æµÈ´Ù. //ÇÏÁö¸¸ 󸮵Ǿî¾ß µÉ ºÎºÐÀº ·Îµù¾ÀÀÌ ¾ø¾î¾ß µÊ. //ÇöÀç´Â ¹èƲ¾À -> ¹Ì¼Ç¾À ¼øÀ¸·Î º¯°æµÊÀ» ±â·ÏÇÔ.. static SCENE_TYPE post_Scene_; public: GameFramework() {} ~GameFramework() { Destroy(); } BOOL CommitChangeState( void ); static BOOL ChangeScene( SCENE_TYPE eScene ); static SCENE_TYPE GetCurScene(); static SCENE_TYPE GetPostScene(); static SCENE_TYPE GetCurSceneType(); static SCENE_TYPE GetPostSceneType(); BOOL Create( SCENE_TYPE eScene ); void Destroy( void ); BOOL Update( DWORD dwTick ); void SetViewport(); void Set2DViewport(); BOOL Render( DWORD dwTick ); BOOL PreInterfaceRender( DWORD dwTick ); BOOL PostInterfaceRender( DWORD dwTick ); void Activate( void ); void DeleteDeviceObjects( void ); void InvalidateDeviceObjects( void ); void RestoreDeviceObjects( void ); void ParsePacket( MSG_BASE * pMsg ); void ParsePacketInChat( MSG_BASE * pMsg ); void OnDeviceReset(); static SceneBase *GetCurrentScene(); int OnEndRendering( DWORD dwTick ); #ifdef __NA_0_20080415_PROCESS_END_PROECSS int OnEndProcess( DWORD dwTick ); #endif }; #endif // _GameFramework_H