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

📄 ability.cpp

📁 墨香最新私服
💻 CPP
字号:
// Ability.cpp: implementation of the CAbility class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "Ability.h"
#include "AbilityInfo.h"
#include "AbilityCommonHeader.h"
#include "AbilityManager.h"
#include "AbilityUse_KyungGong.h"
#include "AbilityUse_Job.h"
#include "AbilityUse_Society.h"

#ifdef _MHCLIENT_
#include "ObjectManager.h"
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

WORD CAbility::GetIndex()
{
	ASSERT(m_pAbilityInfo);
	return m_pAbilityInfo->GetIdx();
}

BYTE CAbility::GetLevel()
{
	return m_Level;
}

WORD CAbility::GetKind()
{
	return m_pAbilityInfo->GetKind();
}

void CAbility::Init(CAbilityInfo* pInfo, BYTE Level,POSTYPE QuickPos)
{
	m_pAbilityInfo = pInfo;
	m_Level = Level;
	m_bActivating = FALSE;
	m_QuickPosition = QuickPos;
}

void CAbility::IncreaseLevel()
{
	++m_Level;
}

void CAbility::Use()
{
	ySWITCH(m_pAbilityInfo->GetInfo()->Ability_effect_Kind)
		yCASE(eAUK_KYUNGGONG)
			CAbilityUse_KyungGong use;
			if(m_bActivating == FALSE)
				m_bActivating = use.Activate(GetLevel(),GetAbilityInfo());
			else
				m_bActivating = use.UnActivate(GetLevel(),GetAbilityInfo());

		yCASE(eAUK_JOB)
			CAbilityUse_Job use;
			use.Use(GetLevel(),GetAbilityInfo());
#ifdef _MHCLIENT_			
		yCASE(eAUK_SOCIETY)
			CAbilityUse_Society use;
			use.Act( HERO, GetAbilityInfo() );
#endif
		yDEFAULT
	yENDSWITCH
}

⌨️ 快捷键说明

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