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

📄 triggerinfo.h

📁 奇迹世界 部分源代码奇迹世界 部分源代码奇迹世界 部分源代码
💻 H
字号:
#pragma once

//=============================================================================================================================
/// TriggerInfo class
/**
	@author	Kim Min Wook < taiyo@webzen.com >
	@since	2004. 12. 29
	@remark
		- 飘府芭 沥焊甫 郴器窍绊 乐绰 贰欺 努贰胶
	@note
		- 
	@history 
		- 
*/
//=============================================================================================================================
#include <SolarHashTable.h>
#include <ProgramCommon/WzDataType.h>

class CWzArchive;
class ConditionInfo;
class ActionInfo;

class TriggerInfo
{
	enum { _MAX_CATEGORY_NAME_LENGTH = 0xff, };
	enum eATTRIBUTE_BITs
	{
		OR_BIT			= 1,
		ACTIVE_BIT		= (1<<1),
		LOOP_BIT		= (1<<2),
		NEXT_ACTIVE_BIT	= (1<<3),
	};
	friend class Trigger;
	friend class TriggerGroupInfo;
public:
	TriggerInfo(void);
	~TriggerInfo(void);

	VOID Load( CWzArchive & IN rArchive );
	inline const TCHAR *	CategoryName() { return m_pszCategoryName;	}
	inline const WzID		TriggerID() { return m_wzTriggerID;	}
	inline BOOL		IsAND() { return !(OR_BIT & m_wAttribute);	}
	inline BOOL		IsActive() { return (ACTIVE_BIT & m_wAttribute);	}
	inline BOOL		IsLoop() { return (LOOP_BIT & m_wAttribute);	}
	inline BOOL		IsNextActive() { return (NEXT_ACTIVE_BIT & m_wAttribute);	}
private:
	ConditionInfo * _ParseCondition( CWzArchive & IN rArchive, WORD Type );
	ActionInfo *	_ParseAction( CWzArchive & IN rArchive, WORD Type );
	VOID	_setCategoryName( const TCHAR * pszCategoryName ) { _tcsncpy( m_pszCategoryName, pszCategoryName, _MAX_CATEGORY_NAME_LENGTH );	}
	WzID	m_wzTriggerID;
	WORD	m_wAttribute;
	TCHAR	m_pszCategoryName[_MAX_CATEGORY_NAME_LENGTH];

	util::SolarHashTable<ConditionInfo *>	m_ConditionHash;
	util::SolarHashTable<ActionInfo *>		m_ActionHash;
};

⌨️ 快捷键说明

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