⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 quest.h

📁 墨香最新私服
💻 H
字号:
// Quest.h: interface for the CQuest class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_QUEST_H__8126C9A7_14D6_4D64_87FC_8BAE17A44978__INCLUDED_)
#define AFX_QUEST_H__8126C9A7_14D6_4D64_87FC_8BAE17A44978__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "..\[CC]Quest\QuestDefines.h"

class CPlayer;
class CQuestInfo;
class CSubQuestInfo;
class CQuestGroup;
class CQuestEvent;

class CQuest 
{
protected:
	CPlayer*			m_pPlayer;
	CQuestInfo*			m_pQuestInfo;							// script Á¤º¸
	CSubQuestInfo*		m_CurSubQuestInfoArray[MAX_SUBQUEST];	// ÇöÀç ÁøÇàÇÒ subquest
	
	DWORD				m_dwSubQuestCount;
	SUBQUEST			m_SubQuestTable[MAX_SUBQUEST];			// subquest Á¤º¸
	DWORD				m_dwSubQuestFlag;
	DWORD				m_dwData;								// 0ÀÌ ¾Æ´Ï¸é Äù½ºÆ® ³¡
	DWORD				m_dwTime;

public:
	CQuest( CPlayer* pPlayer, CQuestInfo* pQuestInfo );
	virtual ~CQuest();

	// À¯Àú Á¢¼Ó ÈÄ DBµ¥ÀÌÅÍ ¼¼ÆÃ 
	void	SetMainQuestData( DWORD dwSubQuestFlag, DWORD dwData, DWORD dwTime );
	void	SetSubQuestData( DWORD dwSubQuestIdx, DWORD dwData, DWORD dwTime );

	// trigger
	void	SetSubQuestFlag( DWORD dwSubQuestIdx );
	BOOL	EndQuest( DWORD dwQuestIdx, DWORD dwSubQuestIdx );
	BOOL	StartSubQuest( DWORD dwQuestIdx, DWORD dwSubQuestIdx );
	BOOL	EndSubQuest( DWORD dwQuestIdx, DWORD dwSubQuestIdx );
	BOOL	ChangeSubQuestValue( DWORD dwSubQuestIdx, DWORD dwKind );
	
	// event
	void	OnQuestEvent( CPlayer* pPlayer, CQuestGroup* pQuestGroup, CQuestEvent* pQuestEvent, DWORD dwQuestIdx );

	// getfn
	inline DWORD	IsQuestComplete()						{ return m_dwData; }
	inline DWORD	GetQuestTime()							{ return m_dwTime; }
	inline DWORD	GetSubQuestData( DWORD dwSubQuestIdx )	{ return m_SubQuestTable[dwSubQuestIdx].dwData; }
	inline DWORD	GetSubQuestTime( DWORD dwSubQuestIdx )	{ return m_SubQuestTable[dwSubQuestIdx].dwTime; }
	inline DWORD	GetSubQuestFlag()						{ return m_dwSubQuestFlag; }
	BOOL			IsSubQuestComplete( DWORD dwSubQuestIdx );
	DWORD			GetQuestIdx();	
	DWORD			GetSubQuestCount()						{ return m_dwSubQuestCount;	}
	
	

	// etc
	DWORD			CreateTime();
};

#endif // !defined(AFX_QUEST_H__8126C9A7_14D6_4D64_87FC_8BAE17A44978__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -