本文整理汇总了C++中CMover::SetJJim方法的典型用法代码示例。如果您正苦于以下问题:C++ CMover::SetJJim方法的具体用法?C++ CMover::SetJJim怎么用?C++ CMover::SetJJim使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CMover
的用法示例。
在下文中一共展示了CMover::SetJJim方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: if
//.........这里部分代码省略.........
SendActMsg( OBJMSG_STOP_TURN );
SetJumpState( OBJSTA_SJUMP1 );
if( (GetState() & OBJSTA_COLLECT)== 0 ) pMover->SetMotion( MTI_JUMP1, ANILOOP_1PLAY );
pModel->SetMotionBlending( FALSE );
break;
// 완드공격
case OBJMSG_ATK_MAGIC1: // 공격 1
{
if( IsAction() ) return 0;
if( IsSit() ) // 앉아있는상태였으면 해제
ResetState( OBJSTA_MOVE_ALL );
if( GetState() & OBJSTA_ATK_ALL ) return 0; // 이미 공격동작을 하고 있으면 취소.
if( pMover->m_dwFlag & MVRF_NOATTACK ) return -1; // 공격금지 상태면 걍 리턴.
if( pMover->IsMode( NO_ATTACK_MODE ) ) return -1;
CMover* pHitObj = prj.GetMover( nParam1 );
if( IsInvalidObj( pHitObj ) ) return -1;
if( pHitObj->IsDie() ) return -1;
#ifdef __WORLDSERVER
if( !g_eLocal.GetState( EVE_STEAL ) )
{
if( pMover->IsSteal( pHitObj ) ) // pHitObj를 스틸하려하면 이공격은 무시.
return -1;
}
#endif
if( IsActDamage() )
ResetState( OBJSTA_DMG_ALL );
if( IsStateFlag( OBJSTAF_COMBAT ) == FALSE )
SendActMsg( OBJMSG_MODE_COMBAT );
SendActMsg( OBJMSG_STOP_TURN );
SendActMsg( OBJMSG_STAND );
SetState( OBJSTA_ATK_ALL, OBJSTA_ATK_MAGIC1 );
pMover->SetMotion( MTI_ATK1, ANILOOP_1PLAY ); // 완드동작이 없으므로 공격동작으로 대신함.
pHitObj->SetJJim( pMover );
pMover->m_nAtkCnt = 1; // 카운트 시작.
pMover->OnAttackStart( pHitObj, dwMsg ); // 공격시작 핸들러.
}
break;
// 레인지공격
case OBJMSG_ATK_RANGE1: // 공격 1
{
if( IsAction() ) return 0;
if( pMover->m_dwFlag & MVRF_NOATTACK ) return -1; // 공격금지 상태면 걍 리턴.
if( pMover->IsMode( NO_ATTACK_MODE ) ) return -1;
if( IsSit() ) // 앉아있는상태였으면 해제
ResetState( OBJSTA_MOVE_ALL );
if( GetState() & OBJSTA_ATK_ALL ) return 0; // 이미 공격동작을 하고 있으면 취소.
CMover* pHitObj = prj.GetMover( nParam1 );
if( IsValidObj( (CObj*)pHitObj ) == FALSE )
return -1;
if( pHitObj->IsDie() )
return -1;
m_idTarget = (DWORD)nParam1; // 공격 타겟.
#ifdef __WORLDSERVER
if( !g_eLocal.GetState( EVE_STEAL ) )
{
if( pMover->IsSteal( pHitObj ) ) // pHitObj를 스틸하려하면 이공격은 무시.
return -1;
}
#endif
if( GetDmgState() == OBJSTA_DMG ) // 피격 중 공격명령이면 피격 상태를 클리어 시킨다.
ResetState( OBJSTA_DMG_ALL );
else if( GetState() & OBJSTA_DMG_ALL ) // 그외 피격동작은 다 취소
return -1;