Files
Sun1602/SolarQuest/QuestActionInfo.h
T
2022-10-26 12:25:11 +08:00

35 lines
977 B
C++

#pragma once
#include "QuestDefine.h"
class QuestActionInfo
{
public:
QuestActionInfo(eQUEST_ACTION_TYPE eType):m_Type(eType) {}
virtual ~QuestActionInfo(void){}
virtual BOOL DoAccept( void * pvParam ) { __UNUSED(pvParam); return FALSE; }
virtual BOOL DoComplete( void * pvParam ) { __UNUSED(pvParam); return FALSE; }
private:
public:
void SetType(eQUEST_ACTION_TYPE value){m_Type=value;}
eQUEST_ACTION_TYPE GetType()const {return m_Type;}
protected:
eQUEST_ACTION_TYPE m_Type;
};
//-----------------------------------------------------------------------
//
// ÇÏÀ§ Ŭ·¡½º ¼±¾ð Á¤Àǹ®
//
//-----------------------------------------------------------------------
#define BEGIN_DECL_QACTION_INFO( ConcreteAction ) \
class ConcreteAction##_INFO : public QuestActionInfo \
{ \
public: \
ConcreteAction##_INFO():QuestActionInfo(e##ConcreteAction){} \
virtual ~ConcreteAction##_INFO(){}
#define END_DECL_QACTION_INFO \
};