combo graph half-fix (but still wrong)
This commit is contained in:
@@ -13,16 +13,16 @@ void ComboGraph::Load( CString Path, const StageStats &s, PlayerNumber pn )
|
||||
int MaxComboSize = 0;
|
||||
unsigned i;
|
||||
for( i = 0; i < s.ComboList[pn].size(); ++i )
|
||||
MaxComboSize = max( MaxComboSize, s.ComboList[pn][i].cnt );
|
||||
MaxComboSize = max( MaxComboSize, s.ComboList[pn][i].GetStageCnt() );
|
||||
|
||||
float width = -1;
|
||||
for( i = 0; i < s.ComboList[pn].size(); ++i )
|
||||
{
|
||||
const StageStats::Combo_t &combo = s.ComboList[pn][i];
|
||||
if( combo.cnt < MinComboSizeToShow )
|
||||
if( combo.GetStageCnt() < MinComboSizeToShow )
|
||||
continue; /* too small */
|
||||
|
||||
const bool IsMax = (combo.cnt == MaxComboSize);
|
||||
const bool IsMax = (combo.GetStageCnt() == MaxComboSize);
|
||||
|
||||
LOG->Trace("combo %i is %f+%f", i, combo.start, combo.size);
|
||||
Sprite *sprite = new Sprite;
|
||||
@@ -48,10 +48,10 @@ void ComboGraph::Load( CString Path, const StageStats &s, PlayerNumber pn )
|
||||
for( i = 0; i < s.ComboList[pn].size(); ++i )
|
||||
{
|
||||
const StageStats::Combo_t &combo = s.ComboList[pn][i];
|
||||
if( combo.cnt < MinComboSizeToShow )
|
||||
if( combo.GetStageCnt() < MinComboSizeToShow )
|
||||
continue; /* too small */
|
||||
|
||||
const bool IsMax = (combo.cnt == MaxComboSize);
|
||||
const bool IsMax = (combo.GetStageCnt() == MaxComboSize);
|
||||
if( !IsMax )
|
||||
continue;
|
||||
|
||||
@@ -65,7 +65,7 @@ void ComboGraph::Load( CString Path, const StageStats &s, PlayerNumber pn )
|
||||
const float CenterXPos = SCALE( CenterPercent, 0.0f, 1.0f, -width/2.0f, width/2.0f );
|
||||
text->SetX( CenterXPos );
|
||||
|
||||
text->SetText( ssprintf("%i",combo.cnt) );
|
||||
text->SetText( ssprintf("%i",combo.GetStageCnt()) );
|
||||
text->Command( "diffusealpha,0;sleep,.5f;linear,.3;diffusealpha,1" );
|
||||
|
||||
m_Actors.push_back( text );
|
||||
|
||||
@@ -316,10 +316,7 @@ void StageStats::UpdateComboList( PlayerNumber pn, float pos )
|
||||
* then that extra part of the combo must have come from a previous song.
|
||||
* Remember it separately. */
|
||||
if( ComboList[pn].size() == 1 )
|
||||
{
|
||||
ComboList[pn][0].rollover = cnt-1;
|
||||
cnt = 1;
|
||||
}
|
||||
}
|
||||
|
||||
Combo_t &combo = ComboList[pn].back();
|
||||
|
||||
@@ -80,9 +80,13 @@ struct StageStats
|
||||
/* Combo size, in steps. */
|
||||
int cnt;
|
||||
|
||||
/* Combo rollover from the last song (see UpdateComboList for details). */
|
||||
/* Size of the combo that didn't come from this stage (rollover from the last song).
|
||||
* (This is a subset of cnt.) */
|
||||
int rollover;
|
||||
|
||||
/* Get the size of the combo that came from this song. */
|
||||
int GetStageCnt() const { return cnt - rollover; }
|
||||
|
||||
Combo_t(): start(0), size(0), cnt(0), rollover(0) { }
|
||||
bool IsZero() const { return start < 0; }
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user