From c1ffc40f860a6e75fbb359f7eda64380305e0c2c Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Sun, 7 Nov 2004 01:11:26 +0000 Subject: [PATCH] fix incorrect credit deduction when in free play + DelayedCreditReconcile --- stepmania/src/ModeChoice.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/stepmania/src/ModeChoice.cpp b/stepmania/src/ModeChoice.cpp index ed36fe75b3..4e7590f950 100644 --- a/stepmania/src/ModeChoice.cpp +++ b/stepmania/src/ModeChoice.cpp @@ -418,11 +418,15 @@ void ModeChoice::Apply( PlayerNumber pn ) const // players joined. If enough players aren't joined, then // we need to subtract credits for the sides that will be // joined as a result of applying this option. - int iNumCreditsRequired = GetCreditsRequiredToPlayStyle(m_pStyle); - int iNumCreditsPaid = GetNumCreditsPaid(); - - int iNumCreditsOwed = iNumCreditsRequired - iNumCreditsPaid; - GAMESTATE->m_iCoins -= iNumCreditsOwed * PREFSMAN->m_iCoinsPerCredit; + if( PREFSMAN->m_iCoinMode == COIN_PAY ) + { + int iNumCreditsRequired = GetCreditsRequiredToPlayStyle(m_pStyle); + int iNumCreditsPaid = GetNumCreditsPaid(); + int iNumCreditsOwed = iNumCreditsRequired - iNumCreditsPaid; + GAMESTATE->m_iCoins -= iNumCreditsOwed * PREFSMAN->m_iCoinsPerCredit; + LOG->Trace( "Deducted %i coins, %i remaining", + iNumCreditsOwed * PREFSMAN->m_iCoinsPerCredit, GAMESTATE->m_iCoins ); + } // If only one side is joined and we picked a style