本文整理汇总了C++中processActionRoutine函数的典型用法代码示例。如果您正苦于以下问题:C++ processActionRoutine函数的具体用法?C++ processActionRoutine怎么用?C++ processActionRoutine使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了processActionRoutine函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: performGravityMid
void CMadMushroom::process()
{
performGravityMid();
performCollisions();
if(!blockedd)
{
m_jumped = false;
}
if(blockedd && !m_jumped)
{
yinertia = -MUSHROOM_LOW_INERTIA;
jumpcounter++;
if( jumpcounter>=bounceAmount )
{
yinertia = -MUSHROOM_HIGH_INERTIA;
jumpcounter = 0;
playSound( SOUND_BOUNCE_HIGH );
}
else
{
playSound( SOUND_BOUNCE_LOW );
}
m_jumped = true;
}
if(!processActionRoutine())
exists = false;
}
示例2: setAction
void CWormmouth::getTouchedBy(CSpriteObject &theObject)
{
if(dead || theObject.dead )
return;
CStunnable::getTouchedBy(theObject);
// Was it a bullet? Than make it stunned.
if( dynamic_cast<CBullet*>(&theObject) )
{
setAction( A_WORMMOUTH_STUNNED );
dead = true;
theObject.dead = true;
if(!processActionRoutine())
exists = false;
performCollisions();
processGettingStunned();
}
if( !getActionNumber(A_WORMMOUTH_EAT) )
return;
if( CPlayerBase *player = dynamic_cast<CPlayerBase*>(&theObject) )
{
player->kill();
}
}
示例3: performCollisions
void CAmpton::process()
{
performCollisions();
if(!getActionNumber(A_AMPTON_POLE_SLIDE))
performGravityMid();
if(!dead) // If we is dead, there is no way to continue moving or turning
{
if( blockedl )
{
if(xDirection == LEFT)
setAction(A_AMPTON_TURN);
xDirection = RIGHT;
}
else if(blockedr)
{
if(xDirection == RIGHT)
setAction(A_AMPTON_TURN);
xDirection = LEFT;
}
}
if(!processActionRoutine())
exists = false;
(this->*mp_processState)();
}
示例4: process
void CRocket::process()
{
if(!processActionRoutine())
exists = false;
(this->*mp_processState)();
}
示例5: processActionRoutine
void CLick::process()
{
(this->*mp_processState)();
processActionRoutine();
processFalling();
}
示例6: processLevelMiscFlagsCheck
void CPlayerDive::process()
{
(this->*mp_processState)();
processLevelMiscFlagsCheck();
processActionRoutine();
}
示例7: process
void CWaterMine::process()
{
(this->*mp_processState)();
if(!processActionRoutine())
exists = false;
}
示例8: performCollisions
void CBlorb::process()
{
performCollisions();
if(!processActionRoutine())
exists = false;
(this->*mp_processState)();
}
示例9: performCollisions
void CMimrock::process()
{
performCollisions();
processFalling();
(this->*mp_processState)();
processActionRoutine();
}
示例10: setAction
void CBullets::process()
{
if( blockedd || blockedu || blockedl || blockedr )
{
setAction(A_KEENSHOT_IMPACT);
}
processActionRoutine();
}
示例11: performCollisions
void CMimrock::process()
{
performCollisions();
performGravityMid();
processActionRoutine();
(this->*mp_processState)();
}
示例12: if
void CCouncilMember::process()
{
(this->*mp_processState)();
if( blockedl )
m_hDir = RIGHT;
else if(blockedr)
m_hDir = LEFT;
processActionRoutine();
}
示例13: setAction
void CBullet::process()
{
if( !getActionNumber(A_KEENSHOT_IMPACT) && (blockedd || blockedu || blockedl || blockedr || onslope) )
{
setAction(A_KEENSHOT_IMPACT);
playSound( SOUND_SHOT_HIT );
dead = true;
}
processActionRoutine();
}
示例14: CGalaxySpriteObject
CMadMushroom::CMadMushroom(CMap *pmap, const Uint16 foeID, Uint32 x, Uint32 y) :
CGalaxySpriteObject(pmap, foeID, x, y),
jumpcounter(0)
{
setupGalaxyObjectOnMap(0x20E4, A_MUSHROOM_BOUNCE);
CSprite &rSprite = g_pGfxEngine->getSprite(sprite);
performCollisions();
processMove( 0, rSprite.m_bboxY1-rSprite.m_bboxY2 );
processActionRoutine();
}
示例15: CGalaxySpriteObject
CArachnut::CArachnut(CMap *pmap, const Uint16 foeID, Uint32 x, Uint32 y) :
CGalaxySpriteObject(pmap, foeID, x, y)
{
setupGalaxyObjectOnMap( 0x2378, A_ARACHNUT_WALK );
xDirection = LEFT;
CSprite &rSprite = g_pGfxEngine->getSprite(sprite);
performCollisions();
processMove( 0, rSprite.m_bboxY1-rSprite.m_bboxY2 );
processActionRoutine();
}