/* ========================================================================== * ÆÄ ÀÏ : TutorialScript.h * ¸ñ Àû : * ÀÛ ¼º ÀÚ : ±è°¡¶÷ * ÀÛ ¼º ÀÏ : 2009-10-13 * ÁÖÀÇ»çÇ× : *===========================================================================*/ #pragma once #include "Lexer.h" // ¸ðµå ±¸Á¶Ã¼ class cParser; class cTutorialMode { public: cTutorialMode(); ~cTutorialMode() {} public: // ¸ðµå À妽º unsigned long mModeIndex; // ½ÃÀÛÁÂÇ¥ unsigned long mStartPosIndex; // ºÎȰ°ü·Ã ¾È³»¹® À妽º unsigned long mDieTextIndex; }; inline cTutorialMode::cTutorialMode() : mModeIndex(UINT_MAX) , mStartPosIndex(0) , mDieTextIndex(0) { } // class cTutorialScript { public: static cTutorialScript* mpSingleton; public: cTutorialScript(); ~cTutorialScript(); bool Init(); void Release(); cTutorialMode* GetTutorialMode( unsigned long modeIdx ); public: static cTutorialScript* GetSingleton(); private: bool LoadScript( const cString& pathName ); bool LoadImages( const cString& path, cParser& parser ); bool LoadMode( cParser& parser, cTutorialMode* mode ); private: // Æ©Å丮¾ó ¸ðµå °ü¸® (cTutorialMode*) typedef tPointerHashMap cModeMap; cModeMap mModeMap; }; inline cTutorialMode* cTutorialScript::GetTutorialMode( unsigned long modeIdx ) { return (cTutorialMode*)mModeMap.GetAt( modeIdx ); } inline cTutorialScript* cTutorialScript::GetSingleton() { return mpSingleton; } #define TUTORIALSCRIPT cTutorialScript::GetSingleton()