Remove fallback notes. More code than it's worth.

This commit is contained in:
Glenn Maynard
2002-09-12 07:13:25 +00:00
parent f7a8c0fe61
commit 5ca26b37c2
6 changed files with 6 additions and 69 deletions
-21
View File
@@ -381,7 +381,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"DDR Single", // m_szName
{ NOTES_TYPE_DANCE_SINGLE,NOTES_TYPE_DANCE_SINGLE }, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::ONE_PLAYER_ONE_CREDIT, // m_StyleType
{ 160, 480 }, // m_iCenterX
4, // m_iColsPerPlayer
@@ -409,7 +408,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
false, // m_bUsedForEdit
"DDR Versus", // m_szName
{ NOTES_TYPE_DANCE_SINGLE,NOTES_TYPE_DANCE_SINGLE }, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::TWO_PLAYERS_TWO_CREDITS, // m_StyleType
{ 160, 480 }, // m_iCenterX
4, // m_iColsPerPlayer
@@ -437,7 +435,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"DDR Double", // m_szName
{ NOTES_TYPE_DANCE_DOUBLE,NOTES_TYPE_DANCE_DOUBLE }, // m_NotesTypes
NOTES_TYPE_INVALID,
StyleDef::ONE_PLAYER_TWO_CREDITS, // m_StyleType
{ 320, 320 }, // m_iCenterX
8, // m_iColsPerPlayer
@@ -473,7 +470,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
false, // m_bUsedForEdit
"DDR Couples", // m_szName
{ NOTES_TYPE_DANCE_COUPLE_1, NOTES_TYPE_DANCE_COUPLE_2 }, // m_NotesTypes
NOTES_TYPE_DANCE_SINGLE, // m_FallbackNotesType
StyleDef::TWO_PLAYERS_TWO_CREDITS, // m_StyleType
{ 160, 480 }, // m_iCenterX
4, // m_iColsPerPlayer
@@ -501,7 +497,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"DDR Solo", // m_szName
{ NOTES_TYPE_DANCE_SOLO,NOTES_TYPE_DANCE_SOLO }, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::ONE_PLAYER_ONE_CREDIT, // m_StyleType
{ 320, 320 }, // m_iCenterX
6, // m_iColsPerPlayer
@@ -533,7 +528,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"DDR Couples Player 1", // m_szName
{ NOTES_TYPE_DANCE_COUPLE_1, NOTES_TYPE_DANCE_COUPLE_1 }, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::ONE_PLAYER_TWO_CREDITS, // m_StyleType
{ 320, 320 }, // m_iCenterX
4, // m_iColsPerPlayer
@@ -561,7 +555,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"DDR Couples Player 2", // m_szName
{ NOTES_TYPE_DANCE_COUPLE_2, NOTES_TYPE_DANCE_COUPLE_2 }, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::ONE_PLAYER_TWO_CREDITS, // m_StyleType
{ 320, 320 }, // m_iCenterX
4, // m_iColsPerPlayer
@@ -617,7 +610,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"Pump Single", // m_szName
{ NOTES_TYPE_PUMP_SINGLE,NOTES_TYPE_PUMP_SINGLE }, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::ONE_PLAYER_ONE_CREDIT, // m_StyleType
{ 160, 480 }, // m_iCenterX
5, // m_iColsPerPlayer
@@ -647,7 +639,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
false, // m_bUsedForEdit
"Pump Versus", // m_szName
{ NOTES_TYPE_PUMP_SINGLE,NOTES_TYPE_PUMP_SINGLE }, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::TWO_PLAYERS_TWO_CREDITS, // m_StyleType
{ 160, 480 }, // m_iCenterX
5, // m_iColsPerPlayer
@@ -677,7 +668,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"Pump Double", // m_szName
{ NOTES_TYPE_PUMP_DOUBLE,NOTES_TYPE_PUMP_DOUBLE }, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::ONE_PLAYER_TWO_CREDITS, // m_StyleType
{ 320, 480 }, // m_iCenterX
10, // m_iColsPerPlayer
@@ -717,7 +707,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
false, // m_bUsedForEdit
"Pump Couples", // m_szName
{ NOTES_TYPE_PUMP_COUPLE_1,NOTES_TYPE_PUMP_COUPLE_2}, // m_NotesTypes
NOTES_TYPE_PUMP_SINGLE, // m_FallbackNotesType
StyleDef::TWO_PLAYERS_TWO_CREDITS, // m_StyleType
{ 160, 480 }, // m_iCenterX
5, // m_iColsPerPlayer
@@ -747,7 +736,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"Pump Couples Player 1", // m_szName
{ NOTES_TYPE_PUMP_COUPLE_1,NOTES_TYPE_PUMP_COUPLE_1}, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::ONE_PLAYER_ONE_CREDIT, // m_StyleType
{ 160, 480 }, // m_iCenterX
5, // m_iColsPerPlayer
@@ -777,7 +765,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"Pump Couples Player 2", // m_szName
{ NOTES_TYPE_PUMP_COUPLE_2,NOTES_TYPE_PUMP_COUPLE_2}, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::ONE_PLAYER_ONE_CREDIT, // m_StyleType
{ 160, 480 }, // m_iCenterX
5, // m_iColsPerPlayer
@@ -808,7 +795,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"EZ2 Single", // m_szName
{ NOTES_TYPE_EZ2_SINGLE,NOTES_TYPE_EZ2_SINGLE }, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::ONE_PLAYER_ONE_CREDIT, // m_StyleType
{ 160, 480 }, // m_iCenterX
5, // m_iColsPerPlayer
@@ -838,7 +824,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"EZ2 SingleHard", // m_szName
{ NOTES_TYPE_EZ2_SINGLE_HARD,NOTES_TYPE_EZ2_SINGLE_HARD}, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::ONE_PLAYER_ONE_CREDIT, // m_StyleType
{ 160, 480 }, // m_iCenterX
5, // m_iColsPerPlayer
@@ -868,7 +853,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"EZ2 Real", // m_szName
{ NOTES_TYPE_EZ2_REAL,NOTES_TYPE_EZ2_REAL }, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::ONE_PLAYER_ONE_CREDIT, // m_StyleType
{ 160, 480 }, // m_iCenterX
7, // m_iColsPerPlayer
@@ -902,7 +886,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"EZ2Double", // m_szName
{ NOTES_TYPE_EZ2_DOUBLE,NOTES_TYPE_EZ2_DOUBLE }, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::ONE_PLAYER_ONE_CREDIT, // m_StyleType
{ 160, 480 }, // m_iCenterX
10, // m_iColsPerPlayer
@@ -942,7 +925,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"EZ2 Versus", // m_szName
{ NOTES_TYPE_EZ2_SINGLE,NOTES_TYPE_EZ2_SINGLE }, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::TWO_PLAYERS_TWO_CREDITS, // m_StyleType
{ 160, 480 }, // m_iCenterX
5, // m_iColsPerPlayer
@@ -972,7 +954,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"EZ2 VersusHard", // m_szName
{ NOTES_TYPE_EZ2_SINGLE_HARD,NOTES_TYPE_EZ2_SINGLE_HARD }, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::TWO_PLAYERS_TWO_CREDITS, // m_StyleType
{ 160, 480 }, // m_iCenterX
5, // m_iColsPerPlayer
@@ -1002,7 +983,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"EZ2 VersusReal", // m_szName
{ NOTES_TYPE_EZ2_REAL,NOTES_TYPE_EZ2_REAL }, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::TWO_PLAYERS_TWO_CREDITS, // m_StyleType
{ 160, 480 }, // m_iCenterX
7, // m_iColsPerPlayer
@@ -1036,7 +1016,6 @@ StyleDef g_StyleDefs[NUM_STYLES] =
true, // m_bUsedForEdit
"Para Single", // m_szName
{ NOTES_TYPE_PARA,NOTES_TYPE_PARA}, // m_NotesTypes
NOTES_TYPE_INVALID, // m_FallbackNotesType
StyleDef::ONE_PLAYER_ONE_CREDIT, // m_StyleType
{ 320, 320 }, // m_iCenterX
5, // m_iColsPerPlayer
+4 -39
View File
@@ -10,19 +10,6 @@
-----------------------------------------------------------------------------
*/
/* Couples notes:
* Couples is just two sets of notes, paired as a game type, with a fallback
* to the normal mode. This lets us import Pump _2 songs without having to
* duplicate the _1 side for couples. This way, we get to handle couples
* the same way in every game. (Which is nice, because not many people
* use couples.)
*
* This does mean it's impossible to tell (in the current UI) whether a
* given song has couples or not; they all show up the same, even if both
* sides are using the fallback. (Except that couples songs tend to have
* slightly varying radar values, unless the pattern is just flipped.)
* -glenn
*/
#include "Notes.h"
#include "RageUtil.h"
#include <math.h> // for fmod
@@ -567,35 +554,14 @@ void Song::TidyUpData()
}
}
/* Get Notes that match a given style and player.
*
* If UseFallbacks is true, fallback notes will be returned if (and
* only if) no non-fallback notes are found at all.
*
* If UseFallbacks is false, fallback notes will never be returned.
*/
void Song::GetNotesThatMatch( const StyleDef *s, int p, CArray<Notes*, Notes*>& arrayAddTo, bool UseFallbacks ) const
/* Get Notes that match a given style and player. */
void Song::GetNotesThatMatch( const StyleDef *s, int p, CArray<Notes*, Notes*>& arrayAddTo ) const
{
int cnt = GetNotesThatMatch( s->m_NotesTypes[p], arrayAddTo );
if ( UseFallbacks && !cnt )
GetNotesThatMatch( s->m_FallbackNotesType, arrayAddTo );
}
/* Get note patterns of the given type; return the number of patterns returned. */
int Song::GetNotesThatMatch( NotesType nt, CArray<Notes*, Notes*>& arrayAddTo ) const
{
int ret=0;
for( int i=0; i<m_apNotes.GetSize(); i++ ) // for each of the Song's Notes
{
if( m_apNotes[i]->m_NotesType == nt )
{
if( m_apNotes[i]->m_NotesType == s->m_NotesTypes[p] )
arrayAddTo.Add( m_apNotes[i] );
ret++;
}
}
return ret;
}
/* Return whether the song is playable in the given style. */
@@ -604,8 +570,7 @@ bool Song::SongCompleteForStyle( const StyleDef *st ) const
for( int pn = 0; pn < NUM_PLAYERS; ++pn )
{
if(st->m_NotesTypes[pn] == NOTES_TYPE_INVALID) continue; /* unused */
if(!SongHasNotesType(st->m_NotesTypes[pn]) &&
!SongHasNotesType(st->m_FallbackNotesType))
if(!SongHasNotesType(st->m_NotesTypes[pn]))
return false;
}
return true;
+1 -2
View File
@@ -265,8 +265,7 @@ void SongSelector::OnNotesTypeChange()
m_textStyle.SetText( GAMEMAN->GetStyleDefForStyle(GetSelectedStyle())->m_szName );
m_pNotess.RemoveAll();
/* Only get primary notes in this style, not fallback notes. */
GetSelectedSong()->GetNotesThatMatch( GAMEMAN->GetStyleDefForStyle(GetSelectedStyle()), 0, m_pNotess, false );
GetSelectedSong()->GetNotesThatMatch( GAMEMAN->GetStyleDefForStyle(GetSelectedStyle()), 0, m_pNotess );
SortNotesArrayByDifficulty( m_pNotess );
m_pNotess.Add( NULL ); // marker for "(NEW)"
m_iSelectedNotes = 0;
-2
View File
@@ -84,9 +84,7 @@ PlayerNumber StyleDef::ControllerToPlayerNumber( GameController controller ) con
bool StyleDef::MatchesNotesType( NotesType type, int pn ) const
{
if(type == m_NotesTypes[pn]) return true;
if(type == m_FallbackNotesType) return true;
return false;
}
-3
View File
@@ -46,9 +46,6 @@ public:
* for each player in couples. */
NotesType m_NotesTypes[NUM_PLAYERS];
/* This type is used as a fallback; if, for any player, m_StyleType[p] isn't
* available, this type will be used. Use NOTES_TYPE_INVALID for no fallback. */
NotesType m_FallbackNotesType;
enum StyleType
{
ONE_PLAYER_ONE_CREDIT, // e.g. single
+1 -2
View File
@@ -176,8 +176,7 @@ public:
bool SongCompleteForStyle( const StyleDef *st ) const;
bool SongHasNotesType( NotesType nt ) const;
bool SongHasNotesTypeAndDifficulty( NotesType nt, DifficultyClass dc ) const;
void GetNotesThatMatch( const StyleDef *s, int p, CArray<Notes*, Notes*>& arrayAddTo, bool UseFallbacks = true) const;
int GetNotesThatMatch( NotesType nt, CArray<Notes*, Notes*>& arrayAddTo ) const;
void GetNotesThatMatch( const StyleDef *s, int p, CArray<Notes*, Notes*>& arrayAddTo ) const;
int GetNumTimesPlayed() const;
bool IsNew() const;
bool IsEasy( NotesType nt ) const;