#ifndef __SOLARQUEST_QUESTACTIONINFO_CONCRETE_H #define __SOLARQUEST_QUESTACTIONINFO_CONCRETE_H #pragma once #include "QuestActionInfo.h" class QUEST_ACTION_ITEM_INFO:public QuestActionInfo { public: QUEST_ACTION_ITEM_INFO():QuestActionInfo(eQUEST_ACTION_ITEM){} virtual ~QUEST_ACTION_ITEM_INFO(){} enum { _DEF_CHECK_NUM=3, _MAX_CHECK_NUM=5, }; public: void SetDelete(bool bValue=true) {m_Delete=bValue;} bool IsDelete()const {return m_Delete;} void SetItemArrayCount(WORD value) {m_ItemArrayCount=value;} WORD GetItemArrayCount()const {return m_ItemArrayCount;} void SetItemCode(const DWORD idx,WORD value) { if(FlowControl::FCAssert(idx<_countof(m_pItemCode))) m_pItemCode[idx]=value; } WORD GetItemCode(const DWORD idx) { if(FlowControl::FCAssert(idx<_countof(m_pItemCode))) return m_pItemCode[idx]; return WORD(); } WORD* GetItemCodePtr(){return m_pItemCode;} void SetItemNum(const DWORD idx,WORD value) { if(FlowControl::FCAssert(idx<_countof(m_pItemNum))) m_pItemNum[idx]=value; } WORD GetItemNum(const DWORD idx) { if(FlowControl::FCAssert(idx<_countof(m_pItemNum))) return m_pItemNum[idx]; return WORD(); } WORD* GetItemNumPtr(){return m_pItemNum;} protected: WORD m_ItemArrayCount; bool m_Delete; WORD m_pItemCode[_MAX_CHECK_NUM]; WORD m_pItemNum[_MAX_CHECK_NUM]; }; class QUEST_ACTION_CHANGEofCLASS_INFO:public QuestActionInfo { public: QUEST_ACTION_CHANGEofCLASS_INFO():QuestActionInfo(eQUEST_ACTION_CHANGEofCLASS){} virtual ~QUEST_ACTION_CHANGEofCLASS_INFO(){} PROPERTY ChangeOfClassStep; }; class QUEST_ACTION_SPAWN_MONSTER_INFO:public QuestActionInfo { public: QUEST_ACTION_SPAWN_MONSTER_INFO():QuestActionInfo(eQUEST_ACTION_SPAWN_MONSTER){} virtual ~QUEST_ACTION_SPAWN_MONSTER_INFO(){} void SetHideNpcCode(DWORD value){m_HideNpcCode=value;} DWORD GetHideNpcCode()const {return m_HideNpcCode;} void SetSummonMonsterCode(DWORD value){m_SummonMonsterCode=value;} DWORD GetSummonMonsterCode()const {return m_SummonMonsterCode;} protected: DWORD m_HideNpcCode; DWORD m_SummonMonsterCode; }; class QUEST_ACTION_SPAWN_MONSTER_ABANDON_INFO:public QuestActionInfo { public: QUEST_ACTION_SPAWN_MONSTER_ABANDON_INFO():QuestActionInfo(eQUEST_ACTION_SPAWN_MONSTER_ABANDON){} virtual ~QUEST_ACTION_SPAWN_MONSTER_ABANDON_INFO(){} }; class QUEST_ACTION_CREATE_PORTAL_INFO:public QuestActionInfo { public: QUEST_ACTION_CREATE_PORTAL_INFO():QuestActionInfo(eQUEST_ACTION_CREATE_PORTAL){} virtual ~QUEST_ACTION_CREATE_PORTAL_INFO(){} void SetMapPortalCode(MAPCODE value){m_MapPortalCode=value;} MAPCODE GetMapPortalCode()const {return m_MapPortalCode;} protected: MAPCODE m_MapPortalCode; }; class QUEST_ACTION_CLOSE_PORTAL_INFO:public QuestActionInfo { public: QUEST_ACTION_CLOSE_PORTAL_INFO():QuestActionInfo(eQUEST_ACTION_CLOSE_PORTAL){} virtual ~QUEST_ACTION_CLOSE_PORTAL_INFO(){} }; class QUEST_ACTION_DELETE_COLLECTIONID_INFO:public QuestActionInfo { public: QUEST_ACTION_DELETE_COLLECTIONID_INFO():QuestActionInfo(eQUEST_ACTION_DELETE_COLLECTIONID){} virtual ~QUEST_ACTION_DELETE_COLLECTIONID_INFO(){} }; #ifdef _NA_003027_20111013_HONOR_SYSTEM class QUEST_ACTION_DAILY_QUEST_INFO:public QuestActionInfo { public: QUEST_ACTION_DAILY_QUEST_INFO():QuestActionInfo(eQUEST_ACTION_DAILY_QUEST){} virtual ~QUEST_ACTION_DAILY_QUEST_INFO(){} }; class QUEST_ACTION_DAILY_QUEST_DELETE_INFO:public QuestActionInfo { public: QUEST_ACTION_DAILY_QUEST_DELETE_INFO():QuestActionInfo(eQUEST_ACTION_DAILY_QUEST_DELETE){} virtual ~QUEST_ACTION_DAILY_QUEST_DELETE_INFO(){} }; #endif //_NA_003027_20111013_HONOR_SYSTEM #endif