void CShellyFrags::process() { performCollisions(); performGravityMid(); // Reflections at wall. Not sure, if it makes sense, let's observe the behaviour if( (blockedl && mXSpeed < 0) || (blockedr && mXSpeed > 0) ) { mXSpeed = -mXSpeed; } if( blockedd ) { dead = true; exists = false; return; } moveXDir(mXSpeed); processActionRoutine(); }
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; }
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)(); }
void CSparky::process() { performCollisions(); performGravityMid(); if(!dead) // If we is dead, there is no way to continue moving or turning { if( blockedl ) { if(xDirection == LEFT) setAction(A_SPARKY_TURN); xDirection = RIGHT; } else if(blockedr) { if(xDirection == RIGHT) setAction(A_SPARKY_TURN); xDirection = LEFT; } } if(!processActionRoutine()) exists = false; (this->*mp_processState)(); }
void CMimrock::process() { performCollisions(); performGravityMid(); processActionRoutine(); (this->*mp_processState)(); }
void CShikadiMaster::process() { performCollisions(); performGravityMid(); if(!processActionRoutine()) exists = false; (this->*mp_processState)(); }
void CLick::process() { performCollisions(); performGravityMid(); if( blockedl ) xDirection = RIGHT; else if( blockedr ) xDirection = LEFT; (this->*mp_processState)(); if(!processActionRoutine()) exists = false; }
void CRoboRed::process() { performCollisions(); performGravityMid(); if( blockedl ) { xDirection = RIGHT; } else if(blockedr) { xDirection = LEFT; } if(!processActionRoutine()) exists = false; (this->*mp_processState)(); }
void CMastersSpark::process() { performCollisions(); performGravityMid(); if( blockedl ) { xDirection = RIGHT; mIsDead = true; } else if(blockedr) { xDirection = LEFT; mIsDead = true; } if(!processActionRoutine()) exists = false; (this->*mp_processState)(); }
void CBlueBird::process() { performCollisions(); if(!inhibitfall) performGravityMid(); if( blockedl ) xDirection = RIGHT; else if( blockedr ) xDirection = LEFT; if( blockedu ) yDirection = DOWN; else if( blockedu ) yDirection = UP; (this->*mpProcessState)(); if(!processActionRoutine()) exists = false; }
void CKorath::process() { performCollisions(); performGravityMid(); if(!dead) // If we is dead, there is no way to continue moving or turning { if( blockedl ) { xDirection = RIGHT; } else if(blockedr) { xDirection = LEFT; } } if(!processActionRoutine()) exists = false; (this->*mp_processState)(); }