88 lines
2.2 KiB
C++
88 lines
2.2 KiB
C++
|
|
#include "stdafx.h"
|
|||
|
|
#include "DnAggroResetBlow.h"
|
|||
|
|
#include "DnMonsterActor.h"
|
|||
|
|
|
|||
|
|
#ifdef _DEBUG
|
|||
|
|
#define new new(_NORMAL_BLOCK,__FILE__,__LINE__)
|
|||
|
|
#endif
|
|||
|
|
|
|||
|
|
|
|||
|
|
CDnAggroResetBlow::CDnAggroResetBlow( DnActorHandle hActor, const char* szValue ) : CDnBlow( hActor )
|
|||
|
|
{
|
|||
|
|
m_StateBlow.emBlowIndex = STATE_BLOW::BLOW_148;
|
|||
|
|
SetValue( szValue );
|
|||
|
|
m_fValue = (float)atof( szValue );
|
|||
|
|
|
|||
|
|
// 0 : <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>(<28>ٽ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>ȵ<EFBFBD>)
|
|||
|
|
// 1 : <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>(<28>ٽ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>)
|
|||
|
|
// 1<><31> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>·<EFBFBD> <20><><EFBFBD><EFBFBD> <20>ϰ<EFBFBD>, <20><><EFBFBD><EFBFBD>ȿ<EFBFBD><C8BF> <20><><EFBFBD><EFBFBD> <20>Ǹ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>·<EFBFBD> <20><><EFBFBD><EFBFBD> <20>ǹǷ<C7B9>
|
|||
|
|
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>ʴ´<CAB4>.
|
|||
|
|
// 0<><30> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>׳<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>Ű<EFBFBD><C5B0> <20><>.
|
|||
|
|
m_iType = (int)m_fValue;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
CDnAggroResetBlow::~CDnAggroResetBlow(void)
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void CDnAggroResetBlow::OnBegin( LOCAL_TIME LocalTime, float fDelta )
|
|||
|
|
{
|
|||
|
|
#ifdef _GAMESERVER
|
|||
|
|
if(m_hActor->IsMonsterActor() )
|
|||
|
|
{
|
|||
|
|
if (m_iType == 0)
|
|||
|
|
static_cast<CDnMonsterActor*>( m_hActor.GetPointer() )->ResetAggro( m_ParentSkillInfo.hSkillUser );
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
OutputDebug( "CDnAggroResetBlow::OnBegin - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>Ϳ<EFBFBD><CDBF>Ը<EFBFBD> <20><>ȿ<EFBFBD>մϴ<D5B4>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>߸<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.\n" );
|
|||
|
|
SetState( STATE_BLOW::STATE_END );
|
|||
|
|
}
|
|||
|
|
#else
|
|||
|
|
if( m_hActor->IsMonsterActor() == false )
|
|||
|
|
{
|
|||
|
|
SetState( STATE_BLOW::STATE_END );
|
|||
|
|
}
|
|||
|
|
#endif
|
|||
|
|
|
|||
|
|
OutputDebug( "CDnAggroResetBlow::OnBegin\n");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
void CDnAggroResetBlow::Process( LOCAL_TIME LocalTime, float fDelta )
|
|||
|
|
{
|
|||
|
|
CDnBlow::Process( LocalTime, fDelta );
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
void CDnAggroResetBlow::OnEnd( LOCAL_TIME LocalTime, float fDelta )
|
|||
|
|
{
|
|||
|
|
#if defined(_GAMESERVER)
|
|||
|
|
if(m_hActor && m_hActor->IsMonsterActor() )
|
|||
|
|
{
|
|||
|
|
//Type : 0<><30> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD>...
|
|||
|
|
if (m_iType == 0)
|
|||
|
|
static_cast<CDnMonsterActor*>( m_hActor.GetPointer() )->ResetAggro(m_ParentSkillInfo.hSkillUser);
|
|||
|
|
}
|
|||
|
|
#endif // _GAMESERVER
|
|||
|
|
|
|||
|
|
OutputDebug( "CDnAggroResetBlow::OnEnd\n");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
#if defined(PRE_ADD_PREFIX_SYSTE_RENEW)
|
|||
|
|
void CDnAggroResetBlow::AddStateEffectValue(const char* szOrigValue, const char* szAddValue, std::string& szNewValue)
|
|||
|
|
{
|
|||
|
|
char szBuff[128] = {0, };
|
|||
|
|
|
|||
|
|
szNewValue = szOrigValue;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void CDnAggroResetBlow::RemoveStateEffectValue(const char* szOrigValue, const char* szAddValue, std::string& szNewValue)
|
|||
|
|
{
|
|||
|
|
char szBuff[128] = {0, };
|
|||
|
|
|
|||
|
|
szNewValue = szOrigValue;
|
|||
|
|
}
|
|||
|
|
#endif // PRE_ADD_PREFIX_SYSTE_RENEW
|