a shot in the dark.

This commit is contained in:
Flameshadowxeroshin
2013-06-02 20:45:26 -05:00
parent 2f318e4b6a
commit 0bd052ed17
+20 -25
View File
@@ -1206,33 +1206,28 @@ void Player::UpdateHoldNotes( int iSongRow, float fDeltaTime, vector<TrackRowTap
bool bIsHoldingButton = true; bool bIsHoldingButton = true;
FOREACH( TrackRowTapNote, vTN, trtn ) FOREACH( TrackRowTapNote, vTN, trtn )
{ {
/*if this hold is already done, pretend it's always being pressed. int iTrack = trtn->iTrack;
fixes/masks the phantom hold issue. -FSX*/
if( (iStartRow + trtn->pTN->iDuration) > iSongRow ) // TODO: Remove use of PlayerNumber.
PlayerNumber pn = m_pPlayerState->m_PlayerNumber;
if( m_pPlayerState->m_PlayerController != PC_HUMAN )
{ {
int iTrack = trtn->iTrack; // TODO: Make the CPU miss sometimes.
if( m_pPlayerState->m_PlayerController == PC_AUTOPLAY )
// TODO: Remove use of PlayerNumber.
PlayerNumber pn = m_pPlayerState->m_PlayerNumber;
if( m_pPlayerState->m_PlayerController != PC_HUMAN )
{ {
// TODO: Make the CPU miss sometimes. STATSMAN->m_CurStageStats.m_bUsedAutoplay = true;
if( m_pPlayerState->m_PlayerController == PC_AUTOPLAY ) if( m_pPlayerStageStats != NULL )
{ m_pPlayerStageStats->m_bDisqualified = true;
STATSMAN->m_CurStageStats.m_bUsedAutoplay = true;
if( m_pPlayerStageStats != NULL )
m_pPlayerStageStats->m_bDisqualified = true;
}
}
else
{
GameInput GameI = GAMESTATE->GetCurrentStyle()->StyleInputToGameInput( iTrack, pn );
// this previously read as bIsHoldingButton &=
// was there a specific reason for this? - Friez
bIsHoldingButton &= INPUTMAPPER->IsBeingPressed( GameI, m_pPlayerState->m_mp );
} }
} }
else
{
GameInput GameI = GAMESTATE->GetCurrentStyle()->StyleInputToGameInput( iTrack, pn );
// this previously read as bIsHoldingButton &=
// was there a specific reason for this? - Friez
bIsHoldingButton &= INPUTMAPPER->IsBeingPressed( GameI, m_pPlayerState->m_mp );
}
} }
if( bInitiatedNote && fLife != 0 && bHeadJudged ) if( bInitiatedNote && fLife != 0 && bHeadJudged )
@@ -1263,11 +1258,11 @@ void Player::UpdateHoldNotes( int iSongRow, float fDeltaTime, vector<TrackRowTap
TapNote &tn = *trtn->pTN; TapNote &tn = *trtn->pTN;
// set hold flag so NoteField can do intelligent drawing // set hold flag so NoteField can do intelligent drawing
tn.HoldResult.bHeld = bIsHoldingButton && bInitiatedNote; tn.HoldResult.bHeld = bIsHoldingButton && bInitiatedNote ||;
tn.HoldResult.bActive = bInitiatedNote; tn.HoldResult.bActive = bInitiatedNote;
} }
if( bInitiatedNote && bIsHoldingButton ) if( bInitiatedNote && bIsHoldingButton || ((iStartRow + trtn->pTN->iDuration) > iSongRow ) )
{ {
//LOG->Trace("bInitiatedNote && bIsHoldingButton; Increasing hold life to MAX_HOLD_LIFE"); //LOG->Trace("bInitiatedNote && bIsHoldingButton; Increasing hold life to MAX_HOLD_LIFE");
// Increase life // Increase life