From 06ee30d8b9ecbd472cbbcd729ef3ee49b60b7a5d Mon Sep 17 00:00:00 2001 From: Flameshadowxeroshin Date: Fri, 23 Jan 2015 21:30:06 -0600 Subject: [PATCH] Kyzentun's milestone code --- src/Player.cpp | 40 ++++++++++++++++------------------------ src/Player.h | 1 - 2 files changed, 16 insertions(+), 25 deletions(-) diff --git a/src/Player.cpp b/src/Player.cpp index e684c20ecb..1c10047c46 100644 --- a/src/Player.cpp +++ b/src/Player.cpp @@ -372,9 +372,7 @@ void Player::Init( m_iLastSeenCombo = 0; m_bSeenComboYet = false; - for( int i=0; i<5; i++ ) - m_iMilestoneCounters[i] = 0; - + // set initial life if( m_pLifeMeter && m_pPlayerStageStats ) { @@ -3394,29 +3392,23 @@ void Player::SetCombo( unsigned int iCombo, unsigned int iMisses ) bool b100Milestone = false; bool b250Milestone = false; bool b1000Milestone = false; - int iNewMilestoneCounters[5] = { - int(iCombo/25), - int(iCombo/50), - int(iCombo/100), - int(iCombo/250), - int(iCombo/200) - }; - //Don't do milestones right after combo overflow or if combo hasn't changed. - if( m_iLastSeenCombo <= iCombo ) + +#define MILESTONE_CHECK(amount) ((iCombo / amount) > (m_iLastSeenCombo / amount)) + if(m_iLastSeenCombo < 600) { - if( iCombo > 600 ) - b1000Milestone = iNewMilestoneCounters[4] > m_iMilestoneCounters[4]; - else - { - b25Milestone = iNewMilestoneCounters[0] > m_iMilestoneCounters[0]; - b50Milestone = iNewMilestoneCounters[1] > m_iMilestoneCounters[1]; - b100Milestone = iNewMilestoneCounters[2] > m_iMilestoneCounters[2]; - b250Milestone = iNewMilestoneCounters[3] > m_iMilestoneCounters[3]; - } + b25Milestone= MILESTONE_CHECK(25); + b50Milestone= MILESTONE_CHECK(50); + b100Milestone= MILESTONE_CHECK(100); + b250Milestone= MILESTONE_CHECK(250); + b1000Milestone= MILESTONE_CHECK(1000); } - - for( int i=0; i<5; i++ ) - m_iMilestoneCounters[i] = iNewMilestoneCounters[i]; + else + { + b1000Milestone= MILESTONE_CHECK(1000); + } +#undef MILESTONE_CHECK + + m_iLastSeenCombo = iCombo; if( b25Milestone ) this->PlayCommand( "TwentyFiveMilestone"); diff --git a/src/Player.h b/src/Player.h index 45159c767a..acdb82bed2 100644 --- a/src/Player.h +++ b/src/Player.h @@ -199,7 +199,6 @@ protected: NoteData::all_tracks_iterator *m_pIterUnjudgedMineRows; unsigned int m_iLastSeenCombo; bool m_bSeenComboYet; - int m_iMilestoneCounters[5]; JudgedRows *m_pJudgedRows; RageSound m_soundMine;