diff --git a/stepmania/src/CombinedLifeMeter.h b/stepmania/src/CombinedLifeMeter.h index 5d28b3b01e..c44749e651 100644 --- a/stepmania/src/CombinedLifeMeter.h +++ b/stepmania/src/CombinedLifeMeter.h @@ -19,7 +19,6 @@ public: /* Change life after receiving a hold note grade. tscore is the score * received for the initial tap note. */ virtual void ChangeLife( PlayerNumber pn, HoldNoteScore score, TapNoteScore tscore ) = 0; - virtual void ChangeLifeMine( PlayerNumber pn ) = 0; virtual void OnDancePointsChange( PlayerNumber pn ) = 0; // look in GAMESTATE and update the display virtual bool IsInDanger( PlayerNumber pn ) = 0; virtual bool IsHot( PlayerNumber pn ) = 0; diff --git a/stepmania/src/CombinedLifeMeterTug.cpp b/stepmania/src/CombinedLifeMeterTug.cpp index 262d71edaa..4e6653305c 100644 --- a/stepmania/src/CombinedLifeMeterTug.cpp +++ b/stepmania/src/CombinedLifeMeterTug.cpp @@ -68,6 +68,7 @@ void CombinedLifeMeterTug::ChangeLife( PlayerNumber pn, TapNoteScore score ) case TNS_GOOD: fPercentToMove = PREFSMAN->m_fTugMeterPercentChangeGood; break; case TNS_BOO: fPercentToMove = PREFSMAN->m_fTugMeterPercentChangeBoo; break; case TNS_MISS: fPercentToMove = PREFSMAN->m_fTugMeterPercentChangeMiss; break; + case TNS_HIT_MINE: fPercentToMove = PREFSMAN->m_fTugMeterPercentChangeHitMine; break; default: ASSERT(0); break; } @@ -92,13 +93,6 @@ void CombinedLifeMeterTug::ChangeLife( PlayerNumber pn, HoldNoteScore score, Tap ChangeLife( pn, fPercentToMove ); } -void CombinedLifeMeterTug::ChangeLifeMine( PlayerNumber pn ) -{ - float fPercentToMove = PREFSMAN->m_fTugMeterPercentChangeHitMine; - - ChangeLife( pn, fPercentToMove ); -} - void CombinedLifeMeterTug::ChangeLife( PlayerNumber pn, float fPercentToMove ) { if( PREFSMAN->m_bMercifulDrain && fPercentToMove < 0 ) diff --git a/stepmania/src/CombinedLifeMeterTug.h b/stepmania/src/CombinedLifeMeterTug.h index 974f5e8ca8..5605579fbe 100644 --- a/stepmania/src/CombinedLifeMeterTug.h +++ b/stepmania/src/CombinedLifeMeterTug.h @@ -17,7 +17,6 @@ public: virtual void ChangeLife( PlayerNumber pn, TapNoteScore score ); virtual void ChangeLife( PlayerNumber pn, HoldNoteScore score, TapNoteScore tscore ); - virtual void ChangeLifeMine( PlayerNumber pn ); virtual void OnDancePointsChange( PlayerNumber pn ) {}; virtual bool IsInDanger( PlayerNumber pn ) { return false; }; virtual bool IsHot( PlayerNumber pn ) { return false; }; diff --git a/stepmania/src/LifeMeter.h b/stepmania/src/LifeMeter.h index b72d3c7e62..2ce2e92ac6 100644 --- a/stepmania/src/LifeMeter.h +++ b/stepmania/src/LifeMeter.h @@ -20,7 +20,6 @@ public: /* Change life after receiving a hold note grade. tscore is the score * received for the initial tap note. */ virtual void ChangeLife( HoldNoteScore score, TapNoteScore tscore ) = 0; - virtual void ChangeLifeMine() = 0; virtual void OnDancePointsChange() = 0; // look in GAMESTATE and update the display virtual bool IsInDanger() const = 0; virtual bool IsHot() const = 0; diff --git a/stepmania/src/LifeMeterBar.cpp b/stepmania/src/LifeMeterBar.cpp index 6a21258c95..11de6dd298 100644 --- a/stepmania/src/LifeMeterBar.cpp +++ b/stepmania/src/LifeMeterBar.cpp @@ -287,6 +287,7 @@ void LifeMeterBar::ChangeLife( TapNoteScore score ) case TNS_GOOD: fDeltaLife = PREFSMAN->m_fLifeDeltaPercentChangeGood; break; case TNS_BOO: fDeltaLife = PREFSMAN->m_fLifeDeltaPercentChangeBoo; break; case TNS_MISS: fDeltaLife = PREFSMAN->m_fLifeDeltaPercentChangeMiss; break; + case TNS_HIT_MINE: fDeltaLife = PREFSMAN->m_fLifeDeltaPercentChangeHitMine; break; default: ASSERT(0); } @@ -302,6 +303,7 @@ void LifeMeterBar::ChangeLife( TapNoteScore score ) case TNS_GOOD: fDeltaLife = +0.000f; break; case TNS_BOO: fDeltaLife = PREFSMAN->m_fLifeDeltaPercentChangeBoo; break; case TNS_MISS: fDeltaLife = PREFSMAN->m_fLifeDeltaPercentChangeMiss; break; + case TNS_HIT_MINE: fDeltaLife = PREFSMAN->m_fLifeDeltaPercentChangeHitMine; break; default: ASSERT(0); } @@ -315,6 +317,7 @@ void LifeMeterBar::ChangeLife( TapNoteScore score ) case TNS_GOOD: fDeltaLife = -1.0; break; case TNS_BOO: fDeltaLife = -1.0; break; case TNS_MISS: fDeltaLife = -1.0; break; + case TNS_HIT_MINE: fDeltaLife = -1.0; break; default: ASSERT(0); } @@ -433,29 +436,6 @@ void LifeMeterBar::ChangeLife( float fDeltaLife ) m_fLifeVelocity += fDeltaLife; } -void LifeMeterBar::ChangeLifeMine() -{ - float fDeltaLife=0.f; - switch( GAMESTATE->m_SongOptions.m_DrainType ) - { - case SongOptions::DRAIN_NORMAL: - fDeltaLife = PREFSMAN->m_fLifeDeltaPercentChangeHitMine; - if( IsHot() ) - fDeltaLife = -0.10f; // make it take a while to get back to "doing great" - break; - case SongOptions::DRAIN_NO_RECOVER: - fDeltaLife = PREFSMAN->m_fLifeDeltaPercentChangeHitMine; - break; - case SongOptions::DRAIN_SUDDEN_DEATH: - fDeltaLife = -1.0; - break; - default: - ASSERT(0); - } - - ChangeLife( fDeltaLife ); -} - void LifeMeterBar::AfterLifeChanged() { diff --git a/stepmania/src/LifeMeterBar.h b/stepmania/src/LifeMeterBar.h index a67550ead6..eddd4d2b03 100644 --- a/stepmania/src/LifeMeterBar.h +++ b/stepmania/src/LifeMeterBar.h @@ -21,7 +21,6 @@ public: virtual void ChangeLife( TapNoteScore score ); virtual void ChangeLife( HoldNoteScore score, TapNoteScore tscore ); virtual void ChangeLife( float fDeltaLifePercent ); - virtual void ChangeLifeMine(); virtual void AfterLifeChanged(); virtual void OnDancePointsChange() {}; // this life meter doesn't care virtual bool IsInDanger() const; diff --git a/stepmania/src/LifeMeterBattery.cpp b/stepmania/src/LifeMeterBattery.cpp index 68a4e020cb..521d93567d 100644 --- a/stepmania/src/LifeMeterBattery.cpp +++ b/stepmania/src/LifeMeterBattery.cpp @@ -92,6 +92,7 @@ void LifeMeterBattery::ChangeLife( TapNoteScore score ) case TNS_GOOD: case TNS_BOO: case TNS_MISS: + case TNS_HIT_MINE: m_iTrailingLivesLeft = m_iLivesLeft; m_iLivesLeft--; m_soundLoseLife.Play(); @@ -128,11 +129,6 @@ void LifeMeterBattery::ChangeLife( float fDeltaLifePercent ) { } -void LifeMeterBattery::ChangeLifeMine() -{ - ChangeLife( TNS_MISS ); // same as a miss -} - void LifeMeterBattery::OnDancePointsChange() { } diff --git a/stepmania/src/LifeMeterBattery.h b/stepmania/src/LifeMeterBattery.h index fd5bc22fe8..fa18efa36e 100644 --- a/stepmania/src/LifeMeterBattery.h +++ b/stepmania/src/LifeMeterBattery.h @@ -23,7 +23,6 @@ public: virtual void ChangeLife( TapNoteScore score ); virtual void ChangeLife( HoldNoteScore score, TapNoteScore tscore ); virtual void ChangeLife( float fDeltaLifePercent ); - virtual void ChangeLifeMine(); virtual void OnDancePointsChange(); // look in GAMESTATE and update the display virtual bool IsInDanger() const; virtual bool IsHot() const; diff --git a/stepmania/src/Player.cpp b/stepmania/src/Player.cpp index f6d84044b5..d163d3c448 100644 --- a/stepmania/src/Player.cpp +++ b/stepmania/src/Player.cpp @@ -834,13 +834,13 @@ void Player::Step( int col, const RageTimer &tm ) m_soundMine.Play(); if( m_pLifeMeter ) - m_pLifeMeter->ChangeLifeMine(); + m_pLifeMeter->ChangeLife( score ); // TODO: Remove use of PlayerNumber PlayerNumber pn = m_pPlayerState->m_PlayerNumber; if( m_pCombinedLifeMeter ) - m_pCombinedLifeMeter->ChangeLifeMine( pn ); + m_pCombinedLifeMeter->ChangeLife( pn, score ); tn.result.bHidden = true; m_NoteData.SetTapNote( col, iIndexOverlappingNote, tn ); if( m_pNoteField ) @@ -907,9 +907,7 @@ void Player::Step( int col, const RageTimer &tm ) * backwards indefinitely, and ignore grading. */ if( iIndexOverlappingNote == -1 ) iIndexOverlappingNote = GetClosestNote( col, BeatToNoteRow(fSongBeat), - iStepSearchRows, - MAX_NOTE_ROW, - true ); + iStepSearchRows, MAX_NOTE_ROW, true ); if( iIndexOverlappingNote != -1 ) { TapNote tn = m_NoteData.GetTapNote( col, iIndexOverlappingNote );