Don't draw hold above receptors if being held. Fixes hold notes flying through receptor if holding during a stop.

This commit is contained in:
Chris Danford
2004-01-01 02:14:01 +00:00
parent 7fa80e5530
commit 70f9216c87
3 changed files with 52 additions and 47 deletions
+40 -35
View File
@@ -367,7 +367,7 @@ Actor * NoteDisplay::GetTapMineActor( float fNoteBeat )
return m_pTapMine; return m_pTapMine;
} }
Sprite * NoteDisplay::GetHoldTopCapSprite( float fNoteBeat, bool bActive ) Sprite * NoteDisplay::GetHoldTopCapSprite( float fNoteBeat, bool bIsBeingHeld )
{ {
NoteType nt = NoteType(0); NoteType nt = NoteType(0);
if( cache->m_bHoldTopCapAnimationIsNoteColor ) if( cache->m_bHoldTopCapAnimationIsNoteColor )
@@ -377,7 +377,7 @@ Sprite * NoteDisplay::GetHoldTopCapSprite( float fNoteBeat, bool bActive )
nt = NOTE_TYPE_192ND; nt = NOTE_TYPE_192ND;
nt = min( nt, (NoteType) (NOTE_COLOR_IMAGES-1) ); nt = min( nt, (NoteType) (NOTE_COLOR_IMAGES-1) );
Sprite *pSpriteOut = bActive ? &m_sprHoldTopCapActive[nt] : &m_sprHoldTopCapInactive[nt]; Sprite *pSpriteOut = bIsBeingHeld ? &m_sprHoldTopCapActive[nt] : &m_sprHoldTopCapInactive[nt];
SetActiveFrame( SetActiveFrame(
fNoteBeat, fNoteBeat,
@@ -389,7 +389,7 @@ Sprite * NoteDisplay::GetHoldTopCapSprite( float fNoteBeat, bool bActive )
return pSpriteOut; return pSpriteOut;
} }
Sprite * NoteDisplay::GetHoldBottomCapSprite( float fNoteBeat, bool bActive ) Sprite * NoteDisplay::GetHoldBottomCapSprite( float fNoteBeat, bool bIsBeingHeld )
{ {
NoteType nt = NoteType(0); NoteType nt = NoteType(0);
if( cache->m_bHoldBottomCapAnimationIsNoteColor ) if( cache->m_bHoldBottomCapAnimationIsNoteColor )
@@ -399,7 +399,7 @@ Sprite * NoteDisplay::GetHoldBottomCapSprite( float fNoteBeat, bool bActive )
nt = NOTE_TYPE_192ND; nt = NOTE_TYPE_192ND;
nt = min( nt, (NoteType) (NOTE_COLOR_IMAGES-1) ); nt = min( nt, (NoteType) (NOTE_COLOR_IMAGES-1) );
Sprite *pSpriteOut = bActive ? &m_sprHoldBottomCapActive[nt] : &m_sprHoldBottomCapInactive[nt]; Sprite *pSpriteOut = bIsBeingHeld ? &m_sprHoldBottomCapActive[nt] : &m_sprHoldBottomCapInactive[nt];
SetActiveFrame( SetActiveFrame(
fNoteBeat, fNoteBeat,
@@ -412,7 +412,7 @@ Sprite * NoteDisplay::GetHoldBottomCapSprite( float fNoteBeat, bool bActive )
} }
Actor* NoteDisplay::GetHoldHeadActor( float fNoteBeat, bool bActive ) Actor* NoteDisplay::GetHoldHeadActor( float fNoteBeat, bool bIsBeingHeld )
{ {
NoteType nt = NoteType(0); NoteType nt = NoteType(0);
if( cache->m_bHoldHeadAnimationIsNoteColor ) if( cache->m_bHoldHeadAnimationIsNoteColor )
@@ -422,7 +422,7 @@ Actor* NoteDisplay::GetHoldHeadActor( float fNoteBeat, bool bActive )
nt = NOTE_TYPE_192ND; nt = NOTE_TYPE_192ND;
nt = min( nt, (NoteType) (NOTE_COLOR_IMAGES-1) ); nt = min( nt, (NoteType) (NOTE_COLOR_IMAGES-1) );
Actor *pActorOut = bActive ? m_pHoldHeadActive[nt] : m_pHoldHeadInactive[nt]; Actor *pActorOut = bIsBeingHeld ? m_pHoldHeadActive[nt] : m_pHoldHeadInactive[nt];
SetActiveFrame( SetActiveFrame(
fNoteBeat, fNoteBeat,
@@ -434,7 +434,7 @@ Actor* NoteDisplay::GetHoldHeadActor( float fNoteBeat, bool bActive )
return pActorOut; return pActorOut;
} }
Sprite *NoteDisplay::GetHoldBodySprite( float fNoteBeat, bool bActive ) Sprite *NoteDisplay::GetHoldBodySprite( float fNoteBeat, bool bIsBeingHeld )
{ {
NoteType nt = NoteType(0); NoteType nt = NoteType(0);
if( cache->m_bHoldBodyAnimationIsNoteColor ) if( cache->m_bHoldBodyAnimationIsNoteColor )
@@ -444,7 +444,7 @@ Sprite *NoteDisplay::GetHoldBodySprite( float fNoteBeat, bool bActive )
nt = NOTE_TYPE_192ND; nt = NOTE_TYPE_192ND;
nt = min( nt, (NoteType) (NOTE_COLOR_IMAGES-1) ); nt = min( nt, (NoteType) (NOTE_COLOR_IMAGES-1) );
Sprite *pSpriteOut = bActive ? &m_sprHoldBodyActive[nt] : &m_sprHoldBodyInactive[nt]; Sprite *pSpriteOut = bIsBeingHeld ? &m_sprHoldBodyActive[nt] : &m_sprHoldBodyInactive[nt];
SetActiveFrame( SetActiveFrame(
fNoteBeat, fNoteBeat,
@@ -456,7 +456,7 @@ Sprite *NoteDisplay::GetHoldBodySprite( float fNoteBeat, bool bActive )
return pSpriteOut; return pSpriteOut;
} }
Actor* NoteDisplay::GetHoldTailActor( float fNoteBeat, bool bActive ) Actor* NoteDisplay::GetHoldTailActor( float fNoteBeat, bool bIsBeingHeld )
{ {
NoteType nt = NoteType(0); NoteType nt = NoteType(0);
if( cache->m_bHoldTailAnimationIsNoteColor ) if( cache->m_bHoldTailAnimationIsNoteColor )
@@ -466,7 +466,7 @@ Actor* NoteDisplay::GetHoldTailActor( float fNoteBeat, bool bActive )
nt = NOTE_TYPE_192ND; nt = NOTE_TYPE_192ND;
nt = min( nt, (NoteType) (NOTE_COLOR_IMAGES-1) ); nt = min( nt, (NoteType) (NOTE_COLOR_IMAGES-1) );
Actor *pActorOut = bActive ? m_pHoldTailActive[nt] : m_pHoldTailInactive[nt]; Actor *pActorOut = bIsBeingHeld ? m_pHoldTailActive[nt] : m_pHoldTailInactive[nt];
SetActiveFrame( SetActiveFrame(
fNoteBeat, fNoteBeat,
@@ -479,14 +479,14 @@ Actor* NoteDisplay::GetHoldTailActor( float fNoteBeat, bool bActive )
} }
void NoteDisplay::DrawHoldTopCap( const HoldNote& hn, const bool bActive, float fYHead, float fYTail, int fYStep, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow ) void NoteDisplay::DrawHoldTopCap( const HoldNote& hn, const bool bIsBeingHeld, float fYHead, float fYTail, int fYStep, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow )
{ {
// //
// Draw the top cap (always wavy) // Draw the top cap (always wavy)
// //
const int size = 4096; const int size = 4096;
static RageSpriteVertex queue[size]; static RageSpriteVertex queue[size];
Sprite* pSprTopCap = GetHoldTopCapSprite( hn.GetStartBeat(), bActive ); Sprite* pSprTopCap = GetHoldTopCapSprite( hn.GetStartBeat(), bIsBeingHeld );
// draw manually in small segments // draw manually in small segments
RageSpriteVertex *v = &queue[0]; RageSpriteVertex *v = &queue[0];
@@ -549,7 +549,7 @@ void NoteDisplay::DrawHoldTopCap( const HoldNote& hn, const bool bActive, float
DISPLAY->DrawQuads( queue, v-queue ); DISPLAY->DrawQuads( queue, v-queue );
} }
void NoteDisplay::DrawHoldBody( const HoldNote& hn, const bool bActive, float fYHead, float fYTail, int fYStep, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow ) void NoteDisplay::DrawHoldBody( const HoldNote& hn, const bool bIsBeingHeld, float fYHead, float fYTail, int fYStep, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow )
{ {
// //
// Draw the body (always wavy) // Draw the body (always wavy)
@@ -557,7 +557,7 @@ void NoteDisplay::DrawHoldBody( const HoldNote& hn, const bool bActive, float fY
const int size = 4096; const int size = 4096;
static RageSpriteVertex queue[size]; static RageSpriteVertex queue[size];
Sprite* pSprBody = GetHoldBodySprite( hn.GetStartBeat(), bActive ); Sprite* pSprBody = GetHoldBodySprite( hn.GetStartBeat(), bIsBeingHeld );
// draw manually in small segments // draw manually in small segments
RageSpriteVertex *v = &queue[0]; RageSpriteVertex *v = &queue[0];
@@ -651,7 +651,7 @@ void NoteDisplay::DrawHoldBody( const HoldNote& hn, const bool bActive, float fY
DISPLAY->DrawQuads( queue, v-queue ); DISPLAY->DrawQuads( queue, v-queue );
} }
void NoteDisplay::DrawHoldBottomCap( const HoldNote& hn, const bool bActive, float fYHead, float fYTail, int fYStep, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow ) void NoteDisplay::DrawHoldBottomCap( const HoldNote& hn, const bool bIsBeingHeld, float fYHead, float fYTail, int fYStep, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow )
{ {
// //
// Draw the bottom cap (always wavy) // Draw the bottom cap (always wavy)
@@ -659,7 +659,7 @@ void NoteDisplay::DrawHoldBottomCap( const HoldNote& hn, const bool bActive, flo
const int size = 4096; const int size = 4096;
static RageSpriteVertex queue[size]; static RageSpriteVertex queue[size];
Sprite* pBottomCap = GetHoldBottomCapSprite( hn.GetStartBeat(), bActive ); Sprite* pBottomCap = GetHoldBottomCapSprite( hn.GetStartBeat(), bIsBeingHeld );
// draw manually in small segments // draw manually in small segments
RageSpriteVertex *v = &queue[0]; RageSpriteVertex *v = &queue[0];
@@ -723,12 +723,12 @@ void NoteDisplay::DrawHoldBottomCap( const HoldNote& hn, const bool bActive, flo
DISPLAY->DrawQuads( queue, v-queue ); DISPLAY->DrawQuads( queue, v-queue );
} }
void NoteDisplay::DrawHoldTail( const HoldNote& hn, bool bActive, float fYTail, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow ) void NoteDisplay::DrawHoldTail( const HoldNote& hn, bool bIsBeingHeld, float fYTail, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow )
{ {
// //
// Draw the tail // Draw the tail
// //
Actor* pSprTail = GetHoldTailActor( hn.GetStartBeat(), bActive ); Actor* pSprTail = GetHoldTailActor( hn.GetStartBeat(), bIsBeingHeld );
const float fY = fYTail; const float fY = fYTail;
const float fYOffset = ArrowGetYOffsetFromYPos( m_PlayerNumber, iCol, fY, m_fYReverseOffsetPixels ); const float fYOffset = ArrowGetYOffsetFromYPos( m_PlayerNumber, iCol, fY, m_fYReverseOffsetPixels );
@@ -773,12 +773,12 @@ void NoteDisplay::DrawHoldTail( const HoldNote& hn, bool bActive, float fYTail,
} }
} }
void NoteDisplay::DrawHoldHead( const HoldNote& hn, bool bActive, float fYHead, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow ) void NoteDisplay::DrawHoldHead( const HoldNote& hn, bool bIsBeingHeld, float fYHead, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow )
{ {
// //
// Draw the head // Draw the head
// //
Actor* pActor = GetHoldHeadActor( hn.GetStartBeat(), bActive ); Actor* pActor = GetHoldHeadActor( hn.GetStartBeat(), bIsBeingHeld );
// draw with normal Sprite // draw with normal Sprite
const float fY = fYHead; const float fY = fYHead;
@@ -824,16 +824,21 @@ void NoteDisplay::DrawHoldHead( const HoldNote& hn, bool bActive, float fYHead,
} }
} }
void NoteDisplay::DrawHold( const HoldNote& hn, const bool bActive, const float fLife, const float fPercentFadeToFail, bool bDrawGlowOnly, float fReverseOffsetPixels ) void NoteDisplay::DrawHold( const HoldNote& hn, bool bIsBeingHeld, bool bIsActive, float fLife, float fPercentFadeToFail, bool bDrawGlowOnly, float fReverseOffsetPixels )
{ {
// bDrawGlowOnly is a little hacky. We need to draw the diffuse part and the glow part one pass at a time to minimize state changes // bDrawGlowOnly is a little hacky. We need to draw the diffuse part and the glow part one pass at a time to minimize state changes
const int iCol = hn.iTrack; int iCol = hn.iTrack;
const bool bReverse = GAMESTATE->m_CurrentPlayerOptions[m_PlayerNumber].GetReversePercentForColumn(iCol) > 0.5; bool bReverse = GAMESTATE->m_CurrentPlayerOptions[m_PlayerNumber].GetReversePercentForColumn(iCol) > 0.5;
const float fStartYOffset = ArrowGetYOffset( m_PlayerNumber, iCol, hn.GetStartBeat() ); float fStartYOffset = ArrowGetYOffset( m_PlayerNumber, iCol, hn.GetStartBeat() );
const float fStartYPos = ArrowGetYPos( m_PlayerNumber, iCol, fStartYOffset, fReverseOffsetPixels );
const float fEndYOffset = ArrowGetYOffset( m_PlayerNumber, iCol, hn.GetEndBeat() ); // HACK: If active, don't allow the top of the hold to go above the receptor
const float fEndYPos = ArrowGetYPos( m_PlayerNumber, iCol, fEndYOffset, fReverseOffsetPixels ); if( bIsActive )
fStartYOffset = 0;
float fStartYPos = ArrowGetYPos( m_PlayerNumber, iCol, fStartYOffset, fReverseOffsetPixels );
float fEndYOffset = ArrowGetYOffset( m_PlayerNumber, iCol, hn.GetEndBeat() );
float fEndYPos = ArrowGetYPos( m_PlayerNumber, iCol, fEndYOffset, fReverseOffsetPixels );
const float fYHead = bReverse ? fEndYPos : fStartYPos; // the center of the head const float fYHead = bReverse ? fEndYPos : fStartYPos; // the center of the head
const float fYTail = bReverse ? fStartYPos : fEndYPos; // the center the tail const float fYTail = bReverse ? fStartYPos : fEndYPos; // the center the tail
@@ -850,9 +855,9 @@ void NoteDisplay::DrawHold( const HoldNote& hn, const bool bActive, const float
/* The body and caps should have no overlap, so their order doesn't matter. /* The body and caps should have no overlap, so their order doesn't matter.
* Draw the head last, so it appears on top. */ * Draw the head last, so it appears on top. */
if( !cache->m_bHoldHeadIsAboveWavyParts ) if( !cache->m_bHoldHeadIsAboveWavyParts )
DrawHoldHead( hn, bActive, bFlipHeadAndTail ? fYTail : fYHead, iCol, fPercentFadeToFail, fColorScale, bDrawGlowOnly ); DrawHoldHead( hn, bIsBeingHeld, bFlipHeadAndTail ? fYTail : fYHead, iCol, fPercentFadeToFail, fColorScale, bDrawGlowOnly );
if( !cache->m_bHoldTailIsAboveWavyParts ) if( !cache->m_bHoldTailIsAboveWavyParts )
DrawHoldTail( hn, bActive, bFlipHeadAndTail ? fYHead : fYTail, iCol, fPercentFadeToFail, fColorScale, bDrawGlowOnly ); DrawHoldTail( hn, bIsBeingHeld, bFlipHeadAndTail ? fYHead : fYTail, iCol, fPercentFadeToFail, fColorScale, bDrawGlowOnly );
if( bDrawGlowOnly ) if( bDrawGlowOnly )
DISPLAY->SetTextureModeGlow(); DISPLAY->SetTextureModeGlow();
@@ -861,20 +866,20 @@ void NoteDisplay::DrawHold( const HoldNote& hn, const bool bActive, const float
DISPLAY->SetZBuffer( WavyPartsNeedZBuffer ); DISPLAY->SetZBuffer( WavyPartsNeedZBuffer );
if( !bFlipHeadAndTail ) if( !bFlipHeadAndTail )
DrawHoldBottomCap( hn, bActive, fYHead, fYTail, fYStep, iCol, fPercentFadeToFail, fColorScale, bDrawGlowOnly ); DrawHoldBottomCap( hn, bIsBeingHeld, fYHead, fYTail, fYStep, iCol, fPercentFadeToFail, fColorScale, bDrawGlowOnly );
DrawHoldBody( hn, bActive, fYHead, fYTail, fYStep, iCol, fPercentFadeToFail, fColorScale, bDrawGlowOnly ); DrawHoldBody( hn, bIsBeingHeld, fYHead, fYTail, fYStep, iCol, fPercentFadeToFail, fColorScale, bDrawGlowOnly );
if( bFlipHeadAndTail ) if( bFlipHeadAndTail )
DrawHoldTopCap( hn, bActive, fYHead, fYTail, fYStep, iCol, fPercentFadeToFail, fColorScale, bDrawGlowOnly ); DrawHoldTopCap( hn, bIsBeingHeld, fYHead, fYTail, fYStep, iCol, fPercentFadeToFail, fColorScale, bDrawGlowOnly );
/* These set the texture mode themselves. */ /* These set the texture mode themselves. */
if( cache->m_bHoldTailIsAboveWavyParts ) if( cache->m_bHoldTailIsAboveWavyParts )
DrawHoldTail( hn, bActive, bFlipHeadAndTail ? fYHead : fYTail, iCol, fPercentFadeToFail, fColorScale, bDrawGlowOnly ); DrawHoldTail( hn, bIsBeingHeld, bFlipHeadAndTail ? fYHead : fYTail, iCol, fPercentFadeToFail, fColorScale, bDrawGlowOnly );
if( cache->m_bHoldHeadIsAboveWavyParts ) if( cache->m_bHoldHeadIsAboveWavyParts )
DrawHoldHead( hn, bActive, bFlipHeadAndTail ? fYTail : fYHead, iCol, fPercentFadeToFail, fColorScale, bDrawGlowOnly ); DrawHoldHead( hn, bIsBeingHeld, bFlipHeadAndTail ? fYTail : fYHead, iCol, fPercentFadeToFail, fColorScale, bDrawGlowOnly );
// now, draw the glow pass // now, draw the glow pass
if( !bDrawGlowOnly ) if( !bDrawGlowOnly )
DrawHold( hn, bActive, fLife, fPercentFadeToFail, true, fReverseOffsetPixels ); DrawHold( hn, bIsBeingHeld, bIsActive, fLife, fPercentFadeToFail, true, fReverseOffsetPixels );
} }
void NoteDisplay::DrawActor( Actor* pActor, int iCol, float fBeat, float fPercentFadeToFail, float fLife, float fReverseOffsetPixels, bool bUseLighting ) void NoteDisplay::DrawActor( Actor* pActor, int iCol, float fBeat, float fPercentFadeToFail, float fLife, float fReverseOffsetPixels, bool bUseLighting )
+11 -11
View File
@@ -31,24 +31,24 @@ public:
void DrawActor( Actor* pActor, int iCol, float fBeat, float fPercentFadeToFail, float fLife, float fReverseOffsetPixels, bool bUseLighting ); void DrawActor( Actor* pActor, int iCol, float fBeat, float fPercentFadeToFail, float fLife, float fReverseOffsetPixels, bool bUseLighting );
void DrawTap( int iCol, float fBeat, bool bOnSameRowAsHoldStart, bool bIsAddition, bool bIsMine, float fPercentFadeToFail, float fLife, float fReverseOffsetPixels ); void DrawTap( int iCol, float fBeat, bool bOnSameRowAsHoldStart, bool bIsAddition, bool bIsMine, float fPercentFadeToFail, float fLife, float fReverseOffsetPixels );
void DrawHold( const HoldNote& hn, bool bActive, float fLife, float fPercentFadeToFail, bool bDrawGlowOnly, float fReverseOffsetPixels ); void DrawHold( const HoldNote& hn, bool bIsBeingHeld, bool bIsActive, float fLife, float fPercentFadeToFail, bool bDrawGlowOnly, float fReverseOffsetPixels );
protected: protected:
void SetActiveFrame( float fNoteBeat, Actor &actorToSet, float fAnimationLengthInBeats, bool bVivid, bool bNoteColor ); void SetActiveFrame( float fNoteBeat, Actor &actorToSet, float fAnimationLengthInBeats, bool bVivid, bool bNoteColor );
Actor *GetTapNoteActor( float fNoteBeat ); Actor *GetTapNoteActor( float fNoteBeat );
Actor *GetTapAdditionActor( float fNoteBeat ); Actor *GetTapAdditionActor( float fNoteBeat );
Actor *GetTapMineActor( float fNoteBeat ); Actor *GetTapMineActor( float fNoteBeat );
Actor *GetHoldHeadActor( float fNoteBeat, bool bActive ); Actor *GetHoldHeadActor( float fNoteBeat, bool bIsBeingHeld );
Actor* GetHoldTailActor( float fNoteBeat, bool bActive ); Actor* GetHoldTailActor( float fNoteBeat, bool bIsBeingHeld );
Sprite *GetHoldTopCapSprite( float fNoteBeat, bool bActive ); Sprite *GetHoldTopCapSprite( float fNoteBeat, bool bIsBeingHeld );
Sprite *GetHoldBodySprite( float fNoteBeat, bool bActive ); Sprite *GetHoldBodySprite( float fNoteBeat, bool bIsBeingHeld );
Sprite *GetHoldBottomCapSprite( float fNoteBeat, bool bActive ); Sprite *GetHoldBottomCapSprite( float fNoteBeat, bool bIsBeingHeld );
void DrawHoldBottomCap( const HoldNote& hn, const bool bActive, float fYHead, float fYTail, int fYStep, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow ); void DrawHoldBottomCap( const HoldNote& hn, const bool bIsBeingHeld, float fYHead, float fYTail, int fYStep, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow );
void DrawHoldTopCap( const HoldNote& hn, const bool bActive, float fYHead, float fYTail, int fYStep, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow ); void DrawHoldTopCap( const HoldNote& hn, const bool bIsBeingHeld, float fYHead, float fYTail, int fYStep, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow );
void DrawHoldBody( const HoldNote& hn, const bool bActive, float fYHead, float fYTail, int fYStep, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow ); void DrawHoldBody( const HoldNote& hn, const bool bIsBeingHeld, float fYHead, float fYTail, int fYStep, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow );
void DrawHoldTail( const HoldNote& hn, const bool bActive, float fYTail, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow ); void DrawHoldTail( const HoldNote& hn, const bool bIsBeingHeld, float fYTail, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow );
void DrawHoldHead( const HoldNote& hn, const bool bActive, float fYHead, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow ); void DrawHoldHead( const HoldNote& hn, const bool bIsBeingHeld, float fYHead, int iCol, float fPercentFadeToFail, float fColorScale, bool bGlow );
PlayerNumber m_PlayerNumber; // to look up PlayerOptions PlayerNumber m_PlayerNumber; // to look up PlayerOptions
+1 -1
View File
@@ -552,7 +552,7 @@ void NoteField::DrawPrimitives()
NoteDisplayCols *nd = CurDisplay->second; NoteDisplayCols *nd = CurDisplay->second;
nd->display[c].DrawHold( hn, bIsHoldingNote, fLife, bIsInSelectionRange ? fSelectedRangeGlow : m_fPercentFadeToFail, false, m_fYReverseOffsetPixels ); nd->display[c].DrawHold( hn, bIsHoldingNote, bIsActive, fLife, bIsInSelectionRange ? fSelectedRangeGlow : m_fPercentFadeToFail, false, m_fYReverseOffsetPixels );
} }