tweak:
- tune down speedup near 100% - start slowing down at 50% if time is available
This commit is contained in:
@@ -1788,17 +1788,16 @@ float ScreenGameplay::GetHasteRate()
|
|||||||
fLife = max( fLife, pi->m_pLifeMeter->GetLife() );
|
fLife = max( fLife, pi->m_pLifeMeter->GetLife() );
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Scale the music nonlinearly. Only slow the song down below 0.25, so we
|
/* Scale the music nonlinearly. Stick at 1x up to 0.5, so we start at 1x
|
||||||
* don't drag the music out too long. Stick at 1x up to 0.5, so we start
|
* if the life meter defaults to 0.5. Increase gradually up to 0.9.
|
||||||
* at 1x if the life meter defaults to 0.5. Increase gradually up to 0.9.
|
|
||||||
* Accelerate sharply above 0.9. */
|
* Accelerate sharply above 0.9. */
|
||||||
float fSpeed = 1.0f;
|
float fSpeed = 1.0f;
|
||||||
if( fLife < 0.25f )
|
if( fLife < 0.50f )
|
||||||
fSpeed = SCALE( fLife, 0.0f, 0.25f, 0.5f, 1.0f );
|
fSpeed = SCALE( fLife, 0.0f, 0.50f, 0.5f, 1.0f );
|
||||||
else if( fLife > 0.5f && fLife < 0.9f )
|
else if( fLife > 0.5f && fLife < 0.9f )
|
||||||
fSpeed = SCALE( fLife, 0.5f, 0.9f, 1.0f, 1.25f );
|
fSpeed = SCALE( fLife, 0.5f, 0.9f, 1.0f, 1.25f );
|
||||||
else if( fLife >= 0.9f )
|
else if( fLife >= 0.9f )
|
||||||
fSpeed = SCALE( fLife, 0.9f, 1.0f, 1.25f, 2.5f );
|
fSpeed = SCALE( fLife, 0.9f, 1.0f, 1.25f, 2.0f );
|
||||||
fSpeed *= GAMESTATE->m_SongOptions.GetCurrent().m_fHaste;
|
fSpeed *= GAMESTATE->m_SongOptions.GetCurrent().m_fHaste;
|
||||||
|
|
||||||
if( STATSMAN->m_CurStageStats.m_fAccumulatedHaste <= 1 )
|
if( STATSMAN->m_CurStageStats.m_fAccumulatedHaste <= 1 )
|
||||||
|
|||||||
Reference in New Issue
Block a user