本文整理汇总了C++中CMover::GetRemoveSfxObj方法的典型用法代码示例。如果您正苦于以下问题:C++ CMover::GetRemoveSfxObj方法的具体用法?C++ CMover::GetRemoveSfxObj怎么用?C++ CMover::GetRemoveSfxObj使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CMover
的用法示例。
在下文中一共展示了CMover::GetRemoveSfxObj方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Process
void CSfx::Process()
{
#ifdef _DEBUG
if( m_dwIndex == XI_SKILL_MAG_FIRE_HOTAIR01 ) // 디버깅 하려면 이걸 바꿔 쓰세요.
{
int a = 0;
}
#endif
m_nFrame++;
if( m_nSec == 0 ) // 0은 1회 플레이후 종료.
{
if( m_pSfxObj->Process() ) // return true는 애니메이션 끝.
Delete();
}
else
{
// 반복 애니메이션
if( m_pSfxObj->Process() )
m_pSfxObj->m_nCurFrame = 0;
if( m_nSec != -1 ) // 무한반복(-1)이 아니면
{
if( m_nFrame > ( m_nSec * 60 ) ) // 시간 체크를 한다.
Delete();
}
}
#ifdef __CLIENT
if(m_pSfxObj->m_pSfxBase != NULL)
{
for( int j=0; j<m_pSfxObj->m_pSfxBase->m_apParts.GetSize(); j++ )
{
if( m_pSfxObj->m_pSfxBase->Part(j)->m_nType != SFXPARTTYPE_MESH )
continue;
CModelObject* pMesh = NULL;
pMesh = g_SfxMeshMng.Mesh( m_pSfxObj->m_pSfxBase->Part(j)->m_strTex );
if( pMesh )
pMesh->FrameMove();
}
}
#endif //__CLIENT
if( m_idDest != NULL_ID ) // Dest가 지정되어 있을때.
{
CMover* pObjDest = (CMover*)prj.GetCtrl( m_idDest );
if( IsValidObj( pObjDest ) ) // 유효한넘인가?
m_vPosDest = pObjDest->GetPos(); // 당시 좌표를 계속 받아둠. Invalid상태가 되면 마지막 좌표로 세팅된다.
SetPos( m_vPosDest ); // 타겟에 오브젝트 발동.
#ifdef __CLIENT
#if __VER >= 11 // __MA_VER11_06 // 확율스킬 효과수정 world,neuz
if( m_dwIndex == XI_SKILL_PSY_HERO_STONE02 )
{
if( IsValidObj( pObjDest ) ) // 유효한넘인가?
{
DWORD dwTmpID = pObjDest->GetRemoveSfxObj(XI_SKILL_PSY_HERO_STONE02 );
if( dwTmpID && m_nFrame > 0)
{
Delete();
return;
}
}
}
#endif // __MA_VER11_06 // 확율스킬 효과수정 world,neuz
// 091022 mirchang - 프로텍션, 펜바리어 스킬 버프 해제 시 sfx 삭제
if( m_dwIndex == XI_SKILL_MER_SHIELD_PANBARRIER02 )
{
if( IsValidObj( pObjDest ) ) // 유효한넘인가?
{
DWORD dwTmpID = pObjDest->GetRemoveSfxObj( XI_SKILL_MER_SHIELD_PANBARRIER02 );
if( dwTmpID && m_nFrame > 0)
{
Delete();
return;
}
}
}
if( m_dwIndex == XI_SKILL_MER_SHIELD_PROTECTION02 )
{
if( IsValidObj( pObjDest ) ) // 유효한넘인가?
{
DWORD dwTmpID = pObjDest->GetRemoveSfxObj( XI_SKILL_MER_SHIELD_PROTECTION02 );
if( dwTmpID && m_nFrame > 0)
{
Delete();
return;
}
}
}
#endif // __CLIENT
} else
{
// Dest가 지정되어 있지 않을때. Src로...
if( m_idSrc != NULL_ID )
{
CMover* pObjSrc = (CMover*)prj.GetCtrl( m_idSrc );
if( IsValidObj( pObjSrc ) ) // 소스아이디가 지정되어 있으면
SetPos( pObjSrc->GetPos() ); // 소스측에 이펙 발동.
//.........这里部分代码省略.........