📄 triggercommon.h
字号:
#pragma once
#include <MemoryPoolFactory.h>
// 炼扒 飘府芭 鸥涝
// 3D浚柳评俊辑 鸥涝 蔼阑 函版瞪 版快
// 1. enum eCONDITION_TYPE阑 函版茄促.
// 2. ConditionInfo甫 惑加罐绰 窍困 努贰胶甫 函版茄促.
enum eCONDITION_TYPE
{
eCONDITION_ALWAYS = 0, // 亲惑
eCONDITION_COMPARE_SWITCH = 1, // 胶困摹 厚背
eCONDITION_CLICK_OBJECT = 2, // 坷宏璃飘 努腐
eCONDITION_DAMAGE_OBJECT = 3, // 坷宏璃飘 单固瘤 涝澜
eCONDITION_COUNT_NPCKILL = 4, // 阁胶磐 荤成 付府荐
eCONDITION_PASS_TIME = 5, // 老沥矫埃捞 儒抚
eCONDITION_ENTER_AREA = 6, // 漂沥 康开俊 甸绢皑
eCONDITION_HAVE_ITEM = 7, // 酒捞袍阑 家蜡窍绊 乐促
eCONDITION_MULTI_SWITCH = 8, // 促吝 胶困摹 厚背
eCONDITION_MISSION_POINT = 9, // 固记 器牢飘 父练
eCONDITION_COMPARE_VARIABLE = 10, // 函荐 厚背
eCONDITION_MAX = 11,
};
enum eACTION_TYPE
{
eACTION_CHANGE_OBJECTANI = 1001, // 坷宏璃飘 局聪皋捞记 函版
eACTION_CHANGE_PATHTILE = 1002, // 辨茫扁 鸥老 加己 函版
eACTION_CHANGE_OBJECTSTATE = 1003, // 坷宏璃飘 惑怕 函版
eACTION_PLAY_EVENT = 1004, // 捞亥飘 敲饭捞
eACTION_SET_ISATTACK = 1005, // 傍拜 啊瓷/阂啊 汲沥
eACTION_PORTAL_PLAYER = 1006, // 敲饭捞绢 器呕
eACTION_SET_OBJECTTHRUST = 1007, // 坷宏璃飘 剐扁 汲沥
eACTION_APPLY_DAMAGE = 1008, // 单固瘤 利侩
eACTION_REFLECT_DAMAGE = 1009, // 单固瘤 馆荤
eACTION_CREATE_MONSTER = 1010, // 阁胶磐 积己
eACTION_DISPLAY_MSGBOX = 1011, // 皋技瘤 冠胶 免仿
eACTION_REMOVE_ITEM = 1012, // 牢亥配府 酒捞袍 力芭
eACTION_REWARD_PLAYER = 1014, // 敲饭捞绢 焊惑
eACTION_CLEAR_MISSION = 1015, // 固记 搬苞
eACTION_PORTAL_RANDOM = 1016, // 罚待 器呕
eACTION_ACTIVATE_TRIGGER = 1017, // 飘府芭 劝己 厚劝己
eACTION_AREA_DAMAGE = 1018, // 裹困单固瘤
eACTION_OPERATE_SWITCH = 1019, // 胶困摹 楷魂
eACTION_OPERATE_VARIABLE = 1020,
eACTION_ROAD_CONNECT = 1021,
eACTION_CREATE_DIR_MONSTER = 1022, // 阁胶磐甫 积己茄促(规氢)
eACTION_CHANGE_LIGHT = 1023, // 扼捞飘 汲沥阑 函版茄促
eACTION_CHANGE_OBJECT_TYPE = 1024, // 坷宏璃飘 惑怕甫 官槽促
eACTION_MAPMOVE_RANDOM = 1025, // 罚待 甘 捞悼
eACTION_DROP_TRESUREBOX = 1026, // 焊拱 惑磊 冻绢哆府扁
eACTION_MAX = 1027,
};
// 厚背 辆幅
enum eCOMPARE_TYPE
{
eCOMPARE_EQUAL = 0, // "=="
eCOMPARE_MORE, // ">"
eCOMPARE_LESS, // "<"
eCOMPARE_LESSTHAN, // "<="
eCOMPARE_MORETHAN, // ">="
eCOMPARE_NOTEQUAL, // "!="
};
// 楷魂 辆幅
enum eOPERATION_TYPE
{
eOPERATION_EQUAL = 0, // "="
eOPERATION_PLUS, // "+"
eOPERATION_MINUS, // "-"
eOPERATION_MULTIPLE, // "*"
eOPERATION_DIVIDE, // "/"
};
// 荤侩窍瘤 臼绰 蔼
#define INVALID_SWITCH_ID_VALUE 255
template<class Type>
class TRIGGER_POOL
{
public:
enum { eDEFUALT_TRIGGER_POOL_SIZE = 50, };
TRIGGER_POOL( int size = eDEFUALT_TRIGGER_POOL_SIZE )
{
m_pool.Initialize( size );
}
~TRIGGER_POOL()
{
m_pool.Release();
}
Type * Alloc()
{
return m_pool.Alloc();
}
VOID Free( Type * pType )
{
m_pool.Free( pType );
}
private:
util::CMemoryPoolFactory<Type> m_pool;
};
#define __DECLARE_POOL( CLASSNAME ) \
private: \
static TRIGGER_POOL<CLASSNAME> m_Pool; \
public: \
static CLASSNAME * Create() \
{ \
return m_Pool.Alloc(); \
} \
static VOID Destroy( CLASSNAME * pObject ) \
{ \
m_Pool.Free(pObject); \
}
#define __IMPL_POOL( CLASSNAME ) \
TRIGGER_POOL<CLASSNAME> CLASSNAME::m_Pool;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -