DragonNest/GameCommon/DnAggroResetBlow.cpp

88 lines
2.2 KiB
C++
Raw Normal View History

2024-12-19 09:48:26 +08:00
#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