void LifeMeterBattery::ChangeLives(int iLifeDiff) { if( iLifeDiff < 0 ) SubtractLives( abs(iLifeDiff) ); else if( iLifeDiff > 0 ) AddLives(iLifeDiff); }
void FireBall::IdleUpdate(void) { if (Sprite::Move(facingPosition.x, facingPosition.y)) { list<Sprite *>::iterator Iter; for (Iter = level->npc.begin(); Iter != level->npc.end(); Iter++) { if ((*Iter)->classID != classID && (int)(*Iter)->GetX() == (int)pos.x && (int)(*Iter)->GetY() == (int)pos.y) { (*Iter)->AddLives(-1); AddLives(-1); } } } else { AddLives(-1); } }
void LifeMeterBattery::ChangeLife( HoldNoteScore score, TapNoteScore tscore ) { if( m_iLivesLeft == 0 ) return; bool bSubtract = false; if( score == HNS_Held && HELD_ADD_LIVES > 0 ) AddLives(HELD_ADD_LIVES); if( score == HNS_LetGo && LET_GO_SUBTRACT_LIVES > 0 ) { SubtractLives(LET_GO_SUBTRACT_LIVES); bSubtract = true; } Message msg( "LifeChanged" ); msg.SetParam( "Player", m_pPlayerState->m_PlayerNumber ); msg.SetParam( "LifeMeter", LuaReference::CreateFromPush(*this) ); msg.SetParam( "LivesLeft", GetLivesLeft() ); msg.SetParam( "LostLife", bSubtract ); MESSAGEMAN->Broadcast( msg ); }