#pragma once //#define MAX_EFFECT_SKILL_ID 800 #define MAX_EFFECT_SKILL_ID 1000 #define MAX_EFFECT_BOW_ID 4 #define g_Effect_ID CEffectIDMng::GetInstance() class SGameAction; class SGameObject; class CEffectIDMng { private: SGameAction* (CEffectIDMng::*GetAction[MAX_EFFECT_SKILL_ID])(); SGameAction* (CEffectIDMng::*GetActionBow[MAX_EFFECT_BOW_ID])(); public: /* SGameAction* ActionTarget( struct SMSG_SKILL_EVENT* msg, int nResultIndex ); SGameAction* ActionTargetExplosion( struct SMSG_SKILL_EVENT* msg, int nResultIndex ); SGameAction* ActionStraight( struct SMSG_SKILL_EVENT* msg, int nResultIndex ); SGameAction* ActionLeech( struct SMSG_SKILL_EVENT* msg, int nResultIndex ); SGameAction* ActionMagicArrow( struct SMSG_SKILL_EVENT* msg, int nResultIndex ); SGameAction* ActionParabola( struct SMSG_SKILL_EVENT* msg, int nResultIndex ); SGameAction* ActionFall( struct SMSG_SKILL_EVENT* msg, int nResultIndex ); SGameAction* ActionMissile( struct SMSG_SKILL_EVENT* msg, int nResultIndex ); SGameAction* ActionBow( struct SMSG_ATTACK* msg, int nResultIndex );*/ ////////////////////////////////////////////////////////////////////////// //////NEW SGameAction* ActionBow(); SGameAction* ActionRecall(); SGameAction* ActionReverseRecall(); SGameAction* ActionAttkWeapon(); SGameAction* ActionAttkShield(); SGameAction* ActionMultiAttkWeapon(); SGameAction* ActionAboveTwoAttk(); SGameAction* ActionAttkAbsorber(); SGameAction* ActionChargeAttk(); SGameAction* ActionShootBow(); SGameAction* ActionShootStrongBow(); SGameAction* ActionShootAbsorberBow(); SGameAction* ActionSelfSkill(); SGameAction* ActionThrowSkill(); SGameAction* ActionThrowSkillDelay(); SGameAction* ActionThrowAbsorberSkill(); SGameAction* ActionCreatureAbsorberSkill(); SGameAction* ActionThrowWideAreaSkill(); SGameAction* ActionThrowWideAreaMultiSkill(); SGameAction* ActionFireMissle(); SGameAction* ActionFireMultiMissle(); SGameAction* ActionFirePenetratedMissle(); SGameAction* ActionFireChainMissile(); /// 2011.03.23 - prodongi SGameAction* ActionLastingWideAreaSkill(); SGameAction* ActionPfxTest1(); SGameAction* ActionWorkingSkill(); public: void Init(); SGameAction* GetActionSkill( struct _SKILL_FX* pSkillFx ); SGameAction* GetActionBowSKill( struct SMSG_ATTACK* msg ); protected: CEffectIDMng(void); public: static CEffectIDMng& GetInstance(); ~CEffectIDMng(void); };