diff --git a/stepmania/src/Game.h b/stepmania/src/Game.h index f7062546d5..86bc3a2f37 100644 --- a/stepmania/src/Game.h +++ b/stepmania/src/Game.h @@ -33,6 +33,7 @@ public: const char *m_szName; bool m_bCountNotesSeparately; // Count multiple notes in a row as separate notes or as one note + bool m_bAllowHopos; // allow Hammer-ons and Pull-offs? Only useful for guitar type input. InputScheme m_InputScheme; TapNoteScore MapTapNoteScore( TapNoteScore tns ) const; diff --git a/stepmania/src/GameManager.cpp b/stepmania/src/GameManager.cpp index 19cbd58124..e6906dc1b9 100644 --- a/stepmania/src/GameManager.cpp +++ b/stepmania/src/GameManager.cpp @@ -116,6 +116,7 @@ static Game g_Games[NUM_GAMES] = { // GAME_DANCE "dance", // m_szName false, // m_bCountNotesSeparately + false, // m_bAllowHopos { // m_InputScheme "dance", // m_szName NUM_DANCE_BUTTONS, // m_iButtonsPerController @@ -168,6 +169,7 @@ static Game g_Games[NUM_GAMES] = { // GAME_PUMP "pump", // m_szName false, // m_bCountNotesSeparately + false, // m_bAllowHopos { // m_InputScheme "pump", // m_szName NUM_PUMP_BUTTONS, // m_iButtonsPerController @@ -219,6 +221,7 @@ static Game g_Games[NUM_GAMES] = { "ez2", // m_szName false, // m_bCountNotesSeparately + false, // m_bAllowHopos { // m_InputScheme "ez2", // m_szName NUM_EZ2_BUTTONS, // m_iButtonsPerController @@ -272,6 +275,7 @@ static Game g_Games[NUM_GAMES] = { // GAME_PARA "para", // m_szName false, // m_bCountNotesSeparately + false, // m_bAllowHopos { // m_InputScheme "para", // m_szName NUM_PARA_BUTTONS, // m_iButtonsPerController @@ -323,6 +327,7 @@ static Game g_Games[NUM_GAMES] = { // GAME_DS3DDX "ds3ddx", // m_szName false, // m_bCountNotesSeparately + false, // m_bAllowHopos { // m_InputScheme "ds3ddx", // m_szName NUM_DS3DDX_BUTTONS, // m_iButtonsPerController @@ -377,6 +382,7 @@ static Game g_Games[NUM_GAMES] = { // GAME_BEAT "beat", // m_szName true, // m_bCountNotesSeparately + false, // m_bAllowHopos { // m_InputScheme "beat", // m_szName NUM_BEAT_BUTTONS, // m_iButtonsPerController @@ -432,6 +438,7 @@ static Game g_Games[NUM_GAMES] = { // GAME_MANIAX "maniax", // m_szName false, // m_bCountNotesSeparately + false, // m_bAllowHopos { // m_InputScheme "maniax", // m_szName NUM_MANIAX_BUTTONS, // m_iButtonsPerController @@ -482,6 +489,7 @@ static Game g_Games[NUM_GAMES] = { // GAME_TECHNO "techno", // m_szName false, // m_bCountNotesSeparately + false, // m_bAllowHopos { // m_InputScheme "techno", // m_szName NUM_TECHNO_BUTTONS, // m_iButtonsPerController @@ -537,6 +545,7 @@ static Game g_Games[NUM_GAMES] = { // GAME_POPN "popn", // m_szName true, // m_bCountNotesSeparately + false, // m_bAllowHopos { // m_InputScheme "popn", // m_szName NUM_POPN_BUTTONS, // m_iButtonsPerController @@ -592,6 +601,7 @@ static Game g_Games[NUM_GAMES] = { // GAME_LIGHTS "lights", // m_szName false, // m_bCountNotesSeparately + false, // m_bAllowHopos { // m_InputScheme "lights", // m_szName NUM_LIGHTS_BUTTONS, // m_iButtonsPerController diff --git a/stepmania/src/Player.cpp b/stepmania/src/Player.cpp index 6dc266fe47..ad91c55a37 100644 --- a/stepmania/src/Player.cpp +++ b/stepmania/src/Player.cpp @@ -392,7 +392,8 @@ void Player::Load() NoteDataUtil::TransformNoteData( m_NoteData, m_pPlayerState->m_PlayerOptions.GetStage(), GAMESTATE->GetCurrentStyle()->m_StepsType ); const Song* pSong = GAMESTATE->m_pCurSong; - NoteDataUtil::SetHopoPossibleFlags( pSong, m_NoteData ); + if( GAMESTATE->m_pCurGame->m_bAllowHopos ) + NoteDataUtil::SetHopoPossibleFlags( pSong, m_NoteData ); switch( GAMESTATE->m_PlayMode ) {