65 lines
2.1 KiB
C++
65 lines
2.1 KiB
C++
#pragma once
|
|
#ifndef GAMESERVER_PERIODIC_EFFECT_ABILITY_H
|
|
#define GAMESERVER_PERIODIC_EFFECT_ABILITY_H
|
|
|
|
#include "Ability.h"
|
|
|
|
//==================================================================================================
|
|
|
|
class PeriodicEffectAbility : public Ability
|
|
{
|
|
public:
|
|
PeriodicEffectAbility() {}
|
|
virtual ~PeriodicEffectAbility() {}
|
|
|
|
//virtual void Init(Skill* skill, const BASE_ABILITYINFO* base_ability_info);
|
|
virtual void InitDetailed(Character* attacker,
|
|
SLOTCODE skill_code, SkillInfo* skill_info_data,
|
|
BYTE skill_stat_type, const BASE_ABILITYINFO* base_ability_info);
|
|
|
|
//virtual void Release(Character* target);
|
|
////
|
|
virtual eABILITY_TYPE GetAbilityType() const;
|
|
//virtual bool IsValidStateID() const;
|
|
////
|
|
//virtual bool CanExecute(Character* attacker,
|
|
// Character* target, DWORD main_target_key, WzVector main_target_pos);
|
|
virtual bool Execute(Character* target, BYTE* pMsg, WORD& wMsgSize);
|
|
virtual bool ExecuteEffect(BYTE* pMsg, WORD& wMsgSize);
|
|
//virtual void SetBonusEffect(BONUS_ABILITY_EFFECT* bonus_ability_effect);
|
|
private:
|
|
WzVector m_wvMainTargetPos;
|
|
};
|
|
|
|
//==================================================================================================
|
|
|
|
//virtual
|
|
inline eABILITY_TYPE PeriodicEffectAbility::GetAbilityType() const {
|
|
return eABILITY_TYPE_EFFECT;
|
|
}
|
|
|
|
//virtual
|
|
inline bool PeriodicEffectAbility::Execute(Character* target, BYTE* pMsg, WORD& wMsgSize)
|
|
{
|
|
__UNUSED((target, pMsg, wMsgSize));
|
|
return false;
|
|
}
|
|
|
|
//==================================================================================================
|
|
// aurora ability : buff ability + periodic effect
|
|
//
|
|
#include "BuffStatusAbility.h"
|
|
|
|
class AuroraAbility : public BuffStatusAbility
|
|
{
|
|
public:
|
|
AuroraAbility() {}
|
|
virtual ~AuroraAbility() {}
|
|
|
|
virtual eABILITY_TYPE GetAbilityType() const;
|
|
virtual bool IsValidStateID() const;
|
|
virtual bool Execute(Character* target, BYTE* pMsg, WORD& wMsgSize);
|
|
virtual bool ExecuteEffect(BYTE* pMsg, WORD& wMsgSize);
|
|
};
|
|
|
|
#endif |