add "converge" mod
This commit is contained in:
@@ -88,14 +88,18 @@ float ArrowGetYOffset( PlayerNumber pn, int iCol, float fNoteBeat )
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static void ArrowGetReverseShiftAndScale( PlayerNumber pn, int iCol, float fYReverseOffsetPixels, float &fShift, float &fScale )
|
static void ArrowGetReverseShiftAndScale( PlayerNumber pn, int iCol, float fYReverseOffsetPixels, float &fShiftOut, float &fScaleOut )
|
||||||
{
|
{
|
||||||
/* XXX: Hack: we need to scale the reverse shift by the zoom. */
|
/* XXX: Hack: we need to scale the reverse shift by the zoom. */
|
||||||
float fMiniPercent = GAMESTATE->m_CurrentPlayerOptions[pn].m_fEffects[PlayerOptions::EFFECT_MINI];
|
float fMiniPercent = GAMESTATE->m_CurrentPlayerOptions[pn].m_fEffects[PlayerOptions::EFFECT_MINI];
|
||||||
float fZoom = 1 - fMiniPercent*0.5f;
|
float fZoom = 1 - fMiniPercent*0.5f;
|
||||||
|
|
||||||
fShift = SCALE( GAMESTATE->m_CurrentPlayerOptions[pn].GetReversePercentForColumn(iCol), 0.f, 1.f, -fYReverseOffsetPixels/fZoom/2, fYReverseOffsetPixels/fZoom/2 );
|
float fPercentReverse = GAMESTATE->m_CurrentPlayerOptions[pn].GetReversePercentForColumn(iCol);
|
||||||
fScale = SCALE( GAMESTATE->m_CurrentPlayerOptions[pn].GetReversePercentForColumn(iCol), 0.f, 1.f, 1.f, -1.f);
|
fShiftOut = SCALE( fPercentReverse, 0.f, 1.f, -fYReverseOffsetPixels/fZoom/2, fYReverseOffsetPixels/fZoom/2 );
|
||||||
|
float fPercentConverge = GAMESTATE->m_CurrentPlayerOptions[pn].m_fScrolls[PlayerOptions::SCROLL_CONVERGE];
|
||||||
|
fShiftOut = SCALE( fPercentConverge, 0.f, 1.f, fShiftOut, 0.5f );
|
||||||
|
|
||||||
|
fScaleOut = SCALE( fPercentReverse, 0.f, 1.f, 1.f, -1.f);
|
||||||
}
|
}
|
||||||
|
|
||||||
float ArrowGetYPos( PlayerNumber pn, int iCol, float fYOffset, float fYReverseOffsetPixels, bool WithReverse )
|
float ArrowGetYPos( PlayerNumber pn, int iCol, float fYOffset, float fYReverseOffsetPixels, bool WithReverse )
|
||||||
|
|||||||
@@ -68,6 +68,7 @@ const OptionColumnEntry g_OptionColumnEntries[] =
|
|||||||
{"Split", 5},
|
{"Split", 5},
|
||||||
{"Alternate", 5},
|
{"Alternate", 5},
|
||||||
{"Cross", 5},
|
{"Cross", 5},
|
||||||
|
{"Converge", 5},
|
||||||
{"Incoming", 6},
|
{"Incoming", 6},
|
||||||
{"Space", 6},
|
{"Space", 6},
|
||||||
{"Hallway", 6},
|
{"Hallway", 6},
|
||||||
|
|||||||
@@ -123,10 +123,11 @@ CString PlayerOptions::GetString() const
|
|||||||
sReturn += AddPart( m_fAppearances[APPEARANCE_BLINK], "Blink" );
|
sReturn += AddPart( m_fAppearances[APPEARANCE_BLINK], "Blink" );
|
||||||
sReturn += AddPart( m_fAppearances[APPEARANCE_RANDOMVANISH], "RandomVanish" );
|
sReturn += AddPart( m_fAppearances[APPEARANCE_RANDOMVANISH], "RandomVanish" );
|
||||||
|
|
||||||
sReturn += AddPart( m_fScrolls[SCROLL_REVERSE], "Reverse" );
|
sReturn += AddPart( m_fScrolls[SCROLL_REVERSE], "Reverse" );
|
||||||
sReturn += AddPart( m_fScrolls[SCROLL_SPLIT], "Split" );
|
sReturn += AddPart( m_fScrolls[SCROLL_SPLIT], "Split" );
|
||||||
sReturn += AddPart( m_fScrolls[SCROLL_ALTERNATE], "Alternate" );
|
sReturn += AddPart( m_fScrolls[SCROLL_ALTERNATE], "Alternate" );
|
||||||
sReturn += AddPart( m_fScrolls[SCROLL_CROSS], "Cross" );
|
sReturn += AddPart( m_fScrolls[SCROLL_CROSS], "Cross" );
|
||||||
|
sReturn += AddPart( m_fScrolls[SCROLL_CONVERGE], "Converge" );
|
||||||
|
|
||||||
sReturn += AddPart( m_fDark, "Dark");
|
sReturn += AddPart( m_fDark, "Dark");
|
||||||
|
|
||||||
@@ -294,6 +295,7 @@ void PlayerOptions::FromString( CString sOptions )
|
|||||||
else if( sBit == "split" ) SET_FLOAT( fScrolls[SCROLL_SPLIT] )
|
else if( sBit == "split" ) SET_FLOAT( fScrolls[SCROLL_SPLIT] )
|
||||||
else if( sBit == "alternate" ) SET_FLOAT( fScrolls[SCROLL_ALTERNATE] )
|
else if( sBit == "alternate" ) SET_FLOAT( fScrolls[SCROLL_ALTERNATE] )
|
||||||
else if( sBit == "cross" ) SET_FLOAT( fScrolls[SCROLL_CROSS] )
|
else if( sBit == "cross" ) SET_FLOAT( fScrolls[SCROLL_CROSS] )
|
||||||
|
else if( sBit == "converge" ) SET_FLOAT( fScrolls[SCROLL_CONVERGE] )
|
||||||
else if( sBit == "noholds" || sBit == "nofreeze" ) m_bTransforms[TRANSFORM_NOHOLDS] = on;
|
else if( sBit == "noholds" || sBit == "nofreeze" ) m_bTransforms[TRANSFORM_NOHOLDS] = on;
|
||||||
else if( sBit == "nomines" ) m_bTransforms[TRANSFORM_NOMINES] = on;
|
else if( sBit == "nomines" ) m_bTransforms[TRANSFORM_NOMINES] = on;
|
||||||
else if( sBit == "dark" ) SET_FLOAT( fDark )
|
else if( sBit == "dark" ) SET_FLOAT( fDark )
|
||||||
|
|||||||
@@ -84,6 +84,7 @@ struct PlayerOptions
|
|||||||
SCROLL_SPLIT,
|
SCROLL_SPLIT,
|
||||||
SCROLL_ALTERNATE,
|
SCROLL_ALTERNATE,
|
||||||
SCROLL_CROSS,
|
SCROLL_CROSS,
|
||||||
|
SCROLL_CONVERGE,
|
||||||
NUM_SCROLLS
|
NUM_SCROLLS
|
||||||
};
|
};
|
||||||
float GetReversePercentForColumn( int iCol ); // accounts for all Directions
|
float GetReversePercentForColumn( int iCol ); // accounts for all Directions
|
||||||
|
|||||||
Reference in New Issue
Block a user