NEW FEATURE: Added 0.25x scroll speed
CHANGE: Reorganized options on Player Options screen NEW FEATURE: New modifier: Acceleration-Land NEW FEATURE: New modifier: Acceleration-Expand NEW FEATURE: New modifier: Acceleration-Boomerang CHANGE: Tweaked Acceleration-Wave for more of a challenge CHANGE: Changed format NoteSkin tap graphic format. Existing NoteSkins will need to update the tap graphic.
This commit is contained in:
@@ -13,32 +13,11 @@
|
||||
#include "PlayerOptions.h"
|
||||
#include "RageUtil.h"
|
||||
|
||||
void PlayerOptions::NextEffect()
|
||||
{
|
||||
if( m_bEffects[NUM_EFFECT_TYPES-1] )
|
||||
{
|
||||
ZERO( m_bEffects );
|
||||
return;
|
||||
}
|
||||
|
||||
for( int i=0; i<NUM_EFFECT_TYPES-1; i++ )
|
||||
{
|
||||
if( m_bEffects[i] )
|
||||
{
|
||||
ZERO( m_bEffects );
|
||||
m_bEffects[i+1] = true;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
ZERO( m_bEffects );
|
||||
m_bEffects[0] = true;
|
||||
}
|
||||
|
||||
void PlayerOptions::Init()
|
||||
{
|
||||
m_fArrowScrollSpeed = 1.0f;
|
||||
m_bBoost = false;
|
||||
m_fScrollSpeed = 1.0f;
|
||||
m_AccelType = ACCEL_OFF;
|
||||
ZERO( m_bEffects );
|
||||
m_AppearanceType = APPEARANCE_VISIBLE;
|
||||
m_TurnType = TURN_NONE;
|
||||
@@ -54,10 +33,10 @@ CString PlayerOptions::GetString()
|
||||
{
|
||||
CString sReturn;
|
||||
|
||||
if( m_fArrowScrollSpeed != 1 )
|
||||
if( m_fScrollSpeed != 1 )
|
||||
{
|
||||
/* -> 1.00 */
|
||||
CString s = ssprintf( "%2.2f", m_fArrowScrollSpeed );
|
||||
CString s = ssprintf( "%2.2f", m_fScrollSpeed );
|
||||
if( s[s.GetLength()-1] == '0' ) {
|
||||
/* -> 1.0 */
|
||||
s.erase(s.GetLength()-1); // delete last char
|
||||
@@ -69,15 +48,23 @@ CString PlayerOptions::GetString()
|
||||
sReturn += s + "X, ";
|
||||
}
|
||||
|
||||
if( m_bBoost ) sReturn += "Boost, ";
|
||||
switch( m_AccelType )
|
||||
{
|
||||
case ACCEL_OFF: break;
|
||||
case ACCEL_BOOST: sReturn += "Boost, "; break;
|
||||
case ACCEL_LAND: sReturn += "Land, "; break;
|
||||
case ACCEL_WAVE: sReturn += "Wave, "; break;
|
||||
case ACCEL_EXPAND: sReturn += "Expand, "; break;
|
||||
case ACCEL_BOOMERANG: sReturn += "Boomerang, "; break;
|
||||
default: ASSERT(0);
|
||||
}
|
||||
|
||||
if( m_bEffects[EFFECT_WAVE] ) sReturn += "Wave, ";
|
||||
if( m_bEffects[EFFECT_DRUNK] ) sReturn += "Drunk, ";
|
||||
if( m_bEffects[EFFECT_DIZZY] ) sReturn += "Dizzy, ";
|
||||
if( m_bEffects[EFFECT_SPACE] ) sReturn += "Space, ";
|
||||
if( m_bEffects[EFFECT_MINI] ) sReturn += "Mini, ";
|
||||
if( m_bEffects[EFFECT_FLIP] ) sReturn += "Flip, ";
|
||||
if( m_bEffects[EFFECT_TORNADO] ) sReturn += "Tornado, ";
|
||||
if( m_bEffects[EFFECT_DRUNK] ) sReturn += "Drunk, ";
|
||||
if( m_bEffects[EFFECT_DIZZY] ) sReturn += "Dizzy, ";
|
||||
if( m_bEffects[EFFECT_SPACE] ) sReturn += "Space, ";
|
||||
if( m_bEffects[EFFECT_MINI] ) sReturn += "Mini, ";
|
||||
if( m_bEffects[EFFECT_FLIP] ) sReturn += "Flip, ";
|
||||
if( m_bEffects[EFFECT_TORNADO] )sReturn += "Tornado, ";
|
||||
|
||||
switch( m_AppearanceType )
|
||||
{
|
||||
@@ -138,16 +125,20 @@ void PlayerOptions::FromString( CString sOptions )
|
||||
TrimLeft(sBit);
|
||||
TrimRight(sBit);
|
||||
|
||||
if( sBit == "0.5x" ) m_fArrowScrollSpeed = 0.5f;
|
||||
else if( sBit == "0.75x" ) m_fArrowScrollSpeed = 0.75f;
|
||||
else if( sBit == "1.5x" ) m_fArrowScrollSpeed = 1.5f;
|
||||
else if( sBit == "2.0x" ) m_fArrowScrollSpeed = 2.0f;
|
||||
else if( sBit == "3.0x" ) m_fArrowScrollSpeed = 3.0f;
|
||||
else if( sBit == "4.0x" ) m_fArrowScrollSpeed = 4.0f;
|
||||
else if( sBit == "5.0x" ) m_fArrowScrollSpeed = 5.0f;
|
||||
else if( sBit == "8.0x" ) m_fArrowScrollSpeed = 8.0f;
|
||||
else if( sBit == "boost" ) m_bBoost = true;
|
||||
else if( sBit == "wave" ) m_bEffects[EFFECT_WAVE] = true;
|
||||
if( sBit == "0.25x" ) m_fScrollSpeed = 0.25f;
|
||||
else if( sBit == "0.5x" ) m_fScrollSpeed = 0.5f;
|
||||
else if( sBit == "0.75x" ) m_fScrollSpeed = 0.75f;
|
||||
else if( sBit == "1.5x" ) m_fScrollSpeed = 1.5f;
|
||||
else if( sBit == "2.0x" ) m_fScrollSpeed = 2.0f;
|
||||
else if( sBit == "3.0x" ) m_fScrollSpeed = 3.0f;
|
||||
else if( sBit == "4.0x" ) m_fScrollSpeed = 4.0f;
|
||||
else if( sBit == "5.0x" ) m_fScrollSpeed = 5.0f;
|
||||
else if( sBit == "8.0x" ) m_fScrollSpeed = 8.0f;
|
||||
else if( sBit == "boost" ) m_AccelType = ACCEL_BOOST;
|
||||
else if( sBit == "land" ) m_AccelType = ACCEL_LAND;
|
||||
else if( sBit == "wave" ) m_AccelType = ACCEL_WAVE;
|
||||
else if( sBit == "expand" ) m_AccelType = ACCEL_EXPAND;
|
||||
else if( sBit == "boomerang" ) m_AccelType = ACCEL_BOOMERANG;
|
||||
else if( sBit == "drunk" ) m_bEffects[EFFECT_DRUNK] = true;
|
||||
else if( sBit == "dizzy" ) m_bEffects[EFFECT_DIZZY] = true;
|
||||
else if( sBit == "space" ) m_bEffects[EFFECT_SPACE] = true;
|
||||
@@ -172,3 +163,46 @@ void PlayerOptions::FromString( CString sOptions )
|
||||
else if( sBit == "dark" ) m_bDark = true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void PlayerOptions::NextAccel()
|
||||
{
|
||||
m_AccelType = (AccelType) ((m_AccelType+1)%NUM_ACCEL_TYPES);
|
||||
}
|
||||
|
||||
void PlayerOptions::NextEffect()
|
||||
{
|
||||
if( m_bEffects[NUM_EFFECT_TYPES-1] ) // last effect is on
|
||||
{
|
||||
ZERO( m_bEffects );
|
||||
return;
|
||||
}
|
||||
|
||||
for( int i=0; i<NUM_EFFECT_TYPES-1; i++ )
|
||||
{
|
||||
if( m_bEffects[i] )
|
||||
{
|
||||
ZERO( m_bEffects );
|
||||
m_bEffects[i+1] = true;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// if we get here, no effects are on
|
||||
m_bEffects[0] = true;
|
||||
}
|
||||
|
||||
void PlayerOptions::NextColor()
|
||||
{
|
||||
m_ColorType = (ColorType) ((m_ColorType+1)%NUM_COLOR_TYPES);
|
||||
}
|
||||
|
||||
void PlayerOptions::NextAppearance()
|
||||
{
|
||||
m_AppearanceType = (AppearanceType) ((m_AppearanceType+1)%NUM_APPEARANCE_TYPES);
|
||||
}
|
||||
|
||||
void PlayerOptions::NextTurn()
|
||||
{
|
||||
m_TurnType = (TurnType) ((m_TurnType+1)%NUM_TURN_TYPES);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user