DragonNest/GameCommon/MATalismanUser.cpp

52 lines
1 KiB
C++
Raw Permalink Normal View History

#include "stdafx.h"
#if defined(PRE_ADD_TALISMAN_SYSTEM)
#include "MATalismanUser.h"
MATalismanUser::MATalismanUser()
{
memset( m_bSelfDelete, 0, sizeof(m_bSelfDelete) );
}
MATalismanUser::~MATalismanUser()
{
for(DWORD i = 0 ; i < TALISMAN_MAX ; ++i)
{
DetachTalisman(i);
}
}
void MATalismanUser::Process( LOCAL_TIME LocalTime, float fDelta )
{
}
bool MATalismanUser::AttachTalisman( DnTalismanHandle hTalisman, int Index, float fRatio, bool bDelete/* = false*/ )
{
if(!hTalisman)
return false;
if( m_hTalisman[Index] && m_hTalisman[Index] != hTalisman)
{
MATalismanUser::DetachTalisman(Index);
}
m_hTalisman[Index] = hTalisman;
m_bSelfDelete[Index] = bDelete;
hTalisman->CalculateRatioValue(fRatio); //<2F><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ġ <20><><EFBFBD><EFBFBD>
return true;
}
bool MATalismanUser::DetachTalisman( int Index )
{
if(!m_hTalisman[Index])
return false;
if( m_bSelfDelete[Index] )
{
SAFE_RELEASE_SPTR(m_hTalisman[Index]);
m_bSelfDelete[Index] = false;
}
m_hTalisman[Index].Identity();
return true;
}
#endif // PRE_ADD_TALISMAN_SYSTEM