#pragma once #include "GrowingAreaState.h" class CFarmAreaStateAddWater; class CFarmAreaStateGrowing:public IFarmAreaState,public TBoostMemoryPool { public: CFarmAreaStateGrowing( CGrowingArea* pArea ) :IFarmAreaState(pArea) { m_pAddWaterState = NULL; } virtual ~CFarmAreaStateGrowing(); virtual Farm::AreaState::eState GetState(){ return Farm::AreaState::GROWING; } virtual void BeginProcess(); virtual void Process( float fDelta ); virtual void EndProcess(); // CheckState virtual bool CanStartAddWater(); // ¹° ÁÙ ¼ö ÀÖ´Â »óÅÂ? virtual bool CanCancelAddWater( CDNUserSession* pSession ); // ¹° Áִ°ŰŠÃë¼ÒÇÒ ¼ö ÀÖ´Â »óÅÂ? virtual bool CanCompleteAddWater( CDNUserSession* pSession ); // ¹° Áִ°ŰŠ¿Ï·áÇÒ ¼ö ÀÖ´Â »óÅÂ? virtual bool CanDBUpdate(); // DB Update ÇØ¾ßÇÏ´ÂÁö °Ë»ç? virtual void RejectReasonLog(WCHAR* wszCondition, CDNUserSession* pSession = NULL); // void StartAddWater( CDNUserSession* pSession, const CSFarmAddWater* pPacket ); void CancelAddWater( CDNUserSession* pSession, const CSFarmAddWater* pPacket ); void QueryAddWater(); void CompleteAddWater( int iRet ); private: CFarmAreaStateAddWater* m_pAddWaterState; };