add HiddenOffset, SuddenOffset mods
This commit is contained in:
@@ -317,11 +317,10 @@ float ArrowEffects::GetRotation( const PlayerState* pPlayerState, float fNoteBea
|
|||||||
|
|
||||||
static float GetCenterLine( const PlayerState* pPlayerState )
|
static float GetCenterLine( const PlayerState* pPlayerState )
|
||||||
{
|
{
|
||||||
const float fMiniPercent = pPlayerState->m_CurrentPlayerOptions.m_fEffects[PlayerOptions::EFFECT_MINI];
|
|
||||||
const float fZoom = 1 - fMiniPercent*0.5f;
|
|
||||||
|
|
||||||
/* Another mini hack: if EFFECT_MINI is on, then our center line is at eg. 320,
|
/* Another mini hack: if EFFECT_MINI is on, then our center line is at eg. 320,
|
||||||
* not 160. */
|
* not 160. */
|
||||||
|
const float fMiniPercent = pPlayerState->m_CurrentPlayerOptions.m_fEffects[PlayerOptions::EFFECT_MINI];
|
||||||
|
const float fZoom = 1 - fMiniPercent*0.5f;
|
||||||
return CENTER_LINE_Y / fZoom;
|
return CENTER_LINE_Y / fZoom;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -346,22 +345,30 @@ static float GetHiddenSudden( const PlayerState* pPlayerState )
|
|||||||
// TRICKY: We fudge hidden and sudden to be farther apart if they're both on.
|
// TRICKY: We fudge hidden and sudden to be farther apart if they're both on.
|
||||||
static float GetHiddenEndLine( const PlayerState* pPlayerState )
|
static float GetHiddenEndLine( const PlayerState* pPlayerState )
|
||||||
{
|
{
|
||||||
return GetCenterLine( pPlayerState ) + FADE_DIST_Y * SCALE( GetHiddenSudden(pPlayerState), 0.f, 1.f, -1.0f, -1.25f );
|
return GetCenterLine( pPlayerState ) +
|
||||||
|
FADE_DIST_Y * SCALE( GetHiddenSudden(pPlayerState), 0.f, 1.f, -1.0f, -1.25f ) +
|
||||||
|
GetCenterLine( pPlayerState ) * pPlayerState->m_CurrentPlayerOptions.m_fAppearances[PlayerOptions::APPEARANCE_HIDDEN_OFFSET];
|
||||||
}
|
}
|
||||||
|
|
||||||
static float GetHiddenStartLine( const PlayerState* pPlayerState )
|
static float GetHiddenStartLine( const PlayerState* pPlayerState )
|
||||||
{
|
{
|
||||||
return GetCenterLine( pPlayerState ) + FADE_DIST_Y * SCALE( GetHiddenSudden(pPlayerState), 0.f, 1.f, +0.0f, -0.25f );
|
return GetCenterLine( pPlayerState ) +
|
||||||
|
FADE_DIST_Y * SCALE( GetHiddenSudden(pPlayerState), 0.f, 1.f, +0.0f, -0.25f ) +
|
||||||
|
GetCenterLine( pPlayerState ) * pPlayerState->m_CurrentPlayerOptions.m_fAppearances[PlayerOptions::APPEARANCE_HIDDEN_OFFSET];
|
||||||
}
|
}
|
||||||
|
|
||||||
static float GetSuddenEndLine( const PlayerState* pPlayerState )
|
static float GetSuddenEndLine( const PlayerState* pPlayerState )
|
||||||
{
|
{
|
||||||
return GetCenterLine( pPlayerState ) + FADE_DIST_Y * SCALE( GetHiddenSudden(pPlayerState), 0.f, 1.f, -0.0f, +0.25f );
|
return GetCenterLine( pPlayerState ) +
|
||||||
|
FADE_DIST_Y * SCALE( GetHiddenSudden(pPlayerState), 0.f, 1.f, -0.0f, +0.25f ) +
|
||||||
|
GetCenterLine( pPlayerState ) * pPlayerState->m_CurrentPlayerOptions.m_fAppearances[PlayerOptions::APPEARANCE_SUDDEN_OFFSET];
|
||||||
}
|
}
|
||||||
|
|
||||||
static float GetSuddenStartLine( const PlayerState* pPlayerState )
|
static float GetSuddenStartLine( const PlayerState* pPlayerState )
|
||||||
{
|
{
|
||||||
return GetCenterLine( pPlayerState ) + FADE_DIST_Y * SCALE( GetHiddenSudden(pPlayerState), 0.f, 1.f, +1.0f, +1.25f );
|
return GetCenterLine( pPlayerState ) +
|
||||||
|
FADE_DIST_Y * SCALE( GetHiddenSudden(pPlayerState), 0.f, 1.f, +1.0f, +1.25f ) +
|
||||||
|
GetCenterLine( pPlayerState ) * pPlayerState->m_CurrentPlayerOptions.m_fAppearances[PlayerOptions::APPEARANCE_SUDDEN_OFFSET];
|
||||||
}
|
}
|
||||||
|
|
||||||
// used by ArrowGetAlpha and ArrowGetGlow below
|
// used by ArrowGetAlpha and ArrowGetGlow below
|
||||||
|
|||||||
@@ -123,11 +123,13 @@ void PlayerOptions::GetMods( vector<CString> &AddTo ) const
|
|||||||
AddPart( AddTo, m_fEffects[EFFECT_BUMPY], "Bumpy" );
|
AddPart( AddTo, m_fEffects[EFFECT_BUMPY], "Bumpy" );
|
||||||
AddPart( AddTo, m_fEffects[EFFECT_BEAT], "Beat" );
|
AddPart( AddTo, m_fEffects[EFFECT_BEAT], "Beat" );
|
||||||
|
|
||||||
AddPart( AddTo, m_fAppearances[APPEARANCE_HIDDEN], "Hidden" );
|
AddPart( AddTo, m_fAppearances[APPEARANCE_HIDDEN], "Hidden" );
|
||||||
AddPart( AddTo, m_fAppearances[APPEARANCE_SUDDEN], "Sudden" );
|
AddPart( AddTo, m_fAppearances[APPEARANCE_HIDDEN_OFFSET], "HiddenOffset" );
|
||||||
AddPart( AddTo, m_fAppearances[APPEARANCE_STEALTH], "Stealth" );
|
AddPart( AddTo, m_fAppearances[APPEARANCE_SUDDEN], "Sudden" );
|
||||||
AddPart( AddTo, m_fAppearances[APPEARANCE_BLINK], "Blink" );
|
AddPart( AddTo, m_fAppearances[APPEARANCE_SUDDEN_OFFSET], "SuddenOffset" );
|
||||||
AddPart( AddTo, m_fAppearances[APPEARANCE_RANDOMVANISH],"RandomVanish" );
|
AddPart( AddTo, m_fAppearances[APPEARANCE_STEALTH], "Stealth" );
|
||||||
|
AddPart( AddTo, m_fAppearances[APPEARANCE_BLINK], "Blink" );
|
||||||
|
AddPart( AddTo, m_fAppearances[APPEARANCE_RANDOMVANISH], "RandomVanish" );
|
||||||
|
|
||||||
AddPart( AddTo, m_fScrolls[SCROLL_REVERSE], "Reverse" );
|
AddPart( AddTo, m_fScrolls[SCROLL_REVERSE], "Reverse" );
|
||||||
AddPart( AddTo, m_fScrolls[SCROLL_SPLIT], "Split" );
|
AddPart( AddTo, m_fScrolls[SCROLL_SPLIT], "Split" );
|
||||||
@@ -263,7 +265,9 @@ void PlayerOptions::FromString( CString sOptions, bool bWarnOnInvalid )
|
|||||||
else if( sBit == "bumpy" ) SET_FLOAT( fEffects[EFFECT_BUMPY] )
|
else if( sBit == "bumpy" ) SET_FLOAT( fEffects[EFFECT_BUMPY] )
|
||||||
else if( sBit == "beat" ) SET_FLOAT( fEffects[EFFECT_BEAT] )
|
else if( sBit == "beat" ) SET_FLOAT( fEffects[EFFECT_BEAT] )
|
||||||
else if( sBit == "hidden" ) SET_FLOAT( fAppearances[APPEARANCE_HIDDEN] )
|
else if( sBit == "hidden" ) SET_FLOAT( fAppearances[APPEARANCE_HIDDEN] )
|
||||||
|
else if( sBit == "hiddenoffset" ) SET_FLOAT( fAppearances[APPEARANCE_HIDDEN_OFFSET] )
|
||||||
else if( sBit == "sudden" ) SET_FLOAT( fAppearances[APPEARANCE_SUDDEN] )
|
else if( sBit == "sudden" ) SET_FLOAT( fAppearances[APPEARANCE_SUDDEN] )
|
||||||
|
else if( sBit == "suddenoffset" ) SET_FLOAT( fAppearances[APPEARANCE_SUDDEN_OFFSET] )
|
||||||
else if( sBit == "stealth" ) SET_FLOAT( fAppearances[APPEARANCE_STEALTH] )
|
else if( sBit == "stealth" ) SET_FLOAT( fAppearances[APPEARANCE_STEALTH] )
|
||||||
else if( sBit == "blink" ) SET_FLOAT( fAppearances[APPEARANCE_BLINK] )
|
else if( sBit == "blink" ) SET_FLOAT( fAppearances[APPEARANCE_BLINK] )
|
||||||
else if( sBit == "randomvanish" ) SET_FLOAT( fAppearances[APPEARANCE_RANDOMVANISH] )
|
else if( sBit == "randomvanish" ) SET_FLOAT( fAppearances[APPEARANCE_RANDOMVANISH] )
|
||||||
|
|||||||
@@ -49,7 +49,9 @@ struct PlayerOptions
|
|||||||
};
|
};
|
||||||
enum Appearance {
|
enum Appearance {
|
||||||
APPEARANCE_HIDDEN,
|
APPEARANCE_HIDDEN,
|
||||||
|
APPEARANCE_HIDDEN_OFFSET,
|
||||||
APPEARANCE_SUDDEN,
|
APPEARANCE_SUDDEN,
|
||||||
|
APPEARANCE_SUDDEN_OFFSET,
|
||||||
APPEARANCE_STEALTH,
|
APPEARANCE_STEALTH,
|
||||||
APPEARANCE_BLINK,
|
APPEARANCE_BLINK,
|
||||||
APPEARANCE_RANDOMVANISH,
|
APPEARANCE_RANDOMVANISH,
|
||||||
|
|||||||
Reference in New Issue
Block a user