This commit is contained in:
Glenn Maynard
2004-04-16 05:21:25 +00:00
parent 6043db8dd1
commit a61dccdabf
+81 -83
View File
@@ -26,33 +26,28 @@
#include "NoteFieldPositioning.h" #include "NoteFieldPositioning.h"
#include "ActorUtil.h" #include "ActorUtil.h"
enum part
{
PART_TAP,
PART_ADDITION,
PART_MINE,
PART_HOLD_HEAD,
PART_HOLD_TAIL,
PART_HOLD_TOP_CAP,
PART_HOLD_BODY,
PART_HOLD_BOTTOM_CAP,
NUM_PARTS
};
// cache // cache
struct NoteMetricCache_t struct NoteMetricCache_t
{ {
bool m_bDrawHoldHeadForTapsOnSameRow; bool m_bDrawHoldHeadForTapsOnSameRow;
float m_fTapNoteAnimationLengthInBeats; float m_fAnimationLengthInBeats[NUM_PARTS];
float m_fTapAdditionAnimationLengthInBeats; bool m_bAnimationIsVivid[NUM_PARTS];
float m_fTapMineAnimationLengthInBeats; bool m_bAnimationIsNoteColor[NUM_PARTS];
float m_fHoldHeadAnimationLengthInBeats;
float m_fHoldTopCapAnimationLengthInBeats;
float m_fHoldBodyAnimationLengthInBeats;
float m_fHoldBottomCapAnimationLengthInBeats;
float m_fHoldTailAnimationLengthInBeats;
bool m_bTapNoteAnimationIsVivid;
bool m_bTapAdditionAnimationIsVivid;
bool m_bTapMineAnimationIsVivid;
bool m_bHoldHeadAnimationIsVivid;
bool m_bHoldTopCapAnimationIsVivid;
bool m_bHoldBodyAnimationIsVivid;
bool m_bHoldBottomCapAnimationIsVivid;
bool m_bHoldTailAnimationIsVivid;
bool m_bTapNoteAnimationIsNoteColor;
bool m_bTapAdditionAnimationIsNoteColor;
bool m_bHoldHeadAnimationIsNoteColor;
bool m_bHoldTopCapAnimationIsNoteColor;
bool m_bHoldBodyAnimationIsNoteColor;
bool m_bHoldBottomCapAnimationIsNoteColor;
bool m_bHoldTailAnimationIsNoteColor;
bool m_bHoldHeadIsAboveWavyParts; bool m_bHoldHeadIsAboveWavyParts;
bool m_bHoldTailIsAboveWavyParts; bool m_bHoldTailIsAboveWavyParts;
int m_iStartDrawingHoldBodyOffsetFromHead; int m_iStartDrawingHoldBodyOffsetFromHead;
@@ -71,29 +66,32 @@ struct NoteMetricCache_t
void NoteMetricCache_t::Load(CString skin, const CString &name) void NoteMetricCache_t::Load(CString skin, const CString &name)
{ {
m_bDrawHoldHeadForTapsOnSameRow = NOTESKIN->GetMetricB(skin,name,"DrawHoldHeadForTapsOnSameRow"); m_bDrawHoldHeadForTapsOnSameRow = NOTESKIN->GetMetricB(skin,name,"DrawHoldHeadForTapsOnSameRow");
m_fTapNoteAnimationLengthInBeats = NOTESKIN->GetMetricF(skin,name,"TapNoteAnimationLengthInBeats"); m_fAnimationLengthInBeats[PART_TAP] = NOTESKIN->GetMetricF(skin,name,"TapNoteAnimationLengthInBeats");
m_fTapAdditionAnimationLengthInBeats = NOTESKIN->GetMetricF(skin,name,"TapAdditionAnimationLengthInBeats"); m_fAnimationLengthInBeats[PART_ADDITION] = NOTESKIN->GetMetricF(skin,name,"TapAdditionAnimationLengthInBeats");
m_fTapMineAnimationLengthInBeats = NOTESKIN->GetMetricF(skin,name,"TapMineAnimationLengthInBeats"); m_fAnimationLengthInBeats[PART_MINE] = NOTESKIN->GetMetricF(skin,name,"TapMineAnimationLengthInBeats");
m_fHoldHeadAnimationLengthInBeats = NOTESKIN->GetMetricF(skin,name,"HoldHeadAnimationLengthInBeats"); m_fAnimationLengthInBeats[PART_HOLD_HEAD] = NOTESKIN->GetMetricF(skin,name,"HoldHeadAnimationLengthInBeats");
m_fHoldTopCapAnimationLengthInBeats = NOTESKIN->GetMetricF(skin,name,"HoldTopCapAnimationLengthInBeats"); m_fAnimationLengthInBeats[PART_HOLD_TOP_CAP] = NOTESKIN->GetMetricF(skin,name,"HoldTopCapAnimationLengthInBeats");
m_fHoldBodyAnimationLengthInBeats = NOTESKIN->GetMetricF(skin,name,"HoldBodyAnimationLengthInBeats"); m_fAnimationLengthInBeats[PART_HOLD_BODY] = NOTESKIN->GetMetricF(skin,name,"HoldBodyAnimationLengthInBeats");
m_fHoldBottomCapAnimationLengthInBeats = NOTESKIN->GetMetricF(skin,name,"HoldBottomCapAnimationLengthInBeats"); m_fAnimationLengthInBeats[PART_HOLD_BOTTOM_CAP] = NOTESKIN->GetMetricF(skin,name,"HoldBottomCapAnimationLengthInBeats");
m_fHoldTailAnimationLengthInBeats = NOTESKIN->GetMetricF(skin,name,"HoldTailAnimationLengthInBeats"); m_fAnimationLengthInBeats[PART_HOLD_TAIL] = NOTESKIN->GetMetricF(skin,name,"HoldTailAnimationLengthInBeats");
m_bTapNoteAnimationIsVivid = NOTESKIN->GetMetricB(skin,name,"TapNoteAnimationIsVivid"); m_bAnimationIsVivid[PART_TAP] = NOTESKIN->GetMetricB(skin,name,"TapNoteAnimationIsVivid");
m_bTapAdditionAnimationIsVivid = NOTESKIN->GetMetricB(skin,name,"TapAdditionAnimationIsVivid"); m_bAnimationIsVivid[PART_ADDITION] = NOTESKIN->GetMetricB(skin,name,"TapAdditionAnimationIsVivid");
m_bTapMineAnimationIsVivid = NOTESKIN->GetMetricB(skin,name,"TapMineAnimationIsVivid"); m_bAnimationIsVivid[PART_MINE] = NOTESKIN->GetMetricB(skin,name,"TapMineAnimationIsVivid");
m_bHoldHeadAnimationIsVivid = NOTESKIN->GetMetricB(skin,name,"HoldHeadAnimationIsVivid"); m_bAnimationIsVivid[PART_HOLD_HEAD] = NOTESKIN->GetMetricB(skin,name,"HoldHeadAnimationIsVivid");
m_bHoldTopCapAnimationIsVivid = NOTESKIN->GetMetricB(skin,name,"HoldTopCapAnimationIsVivid"); m_bAnimationIsVivid[PART_HOLD_TOP_CAP] = NOTESKIN->GetMetricB(skin,name,"HoldTopCapAnimationIsVivid");
m_bHoldBodyAnimationIsVivid = NOTESKIN->GetMetricB(skin,name,"HoldBodyAnimationIsVivid"); m_bAnimationIsVivid[PART_HOLD_BODY] = NOTESKIN->GetMetricB(skin,name,"HoldBodyAnimationIsVivid");
m_bHoldBottomCapAnimationIsVivid = NOTESKIN->GetMetricB(skin,name,"HoldBottomCapAnimationIsVivid"); m_bAnimationIsVivid[PART_HOLD_BOTTOM_CAP] = NOTESKIN->GetMetricB(skin,name,"HoldBottomCapAnimationIsVivid");
m_bHoldTailAnimationIsVivid = NOTESKIN->GetMetricB(skin,name,"HoldTailAnimationIsVivid"); m_bAnimationIsVivid[PART_HOLD_TAIL] = NOTESKIN->GetMetricB(skin,name,"HoldTailAnimationIsVivid");
m_bTapNoteAnimationIsNoteColor = NOTESKIN->GetMetricB(skin,name,"TapNoteAnimationIsNoteColor");
m_bTapAdditionAnimationIsNoteColor = NOTESKIN->GetMetricB(skin,name,"TapAdditionAnimationIsNoteColor"); m_bAnimationIsNoteColor[PART_TAP] = NOTESKIN->GetMetricB(skin,name,"TapNoteAnimationIsNoteColor");
m_bHoldHeadAnimationIsNoteColor = NOTESKIN->GetMetricB(skin,name,"HoldHeadAnimationIsNoteColor"); m_bAnimationIsNoteColor[PART_ADDITION] = NOTESKIN->GetMetricB(skin,name,"TapAdditionAnimationIsNoteColor");
m_bHoldTopCapAnimationIsNoteColor = NOTESKIN->GetMetricB(skin,name,"HoldTopCapAnimationIsNoteColor"); // m_bAnimationIsNoteColor[PART_MINE] = NOTESKIN->GetMetricB(skin,name,"TapMineAnimationIsNoteColor");
m_bHoldBodyAnimationIsNoteColor = NOTESKIN->GetMetricB(skin,name,"HoldBodyAnimationIsNoteColor"); m_bAnimationIsNoteColor[PART_HOLD_HEAD] = NOTESKIN->GetMetricB(skin,name,"HoldHeadAnimationIsNoteColor");
m_bHoldBottomCapAnimationIsNoteColor = NOTESKIN->GetMetricB(skin,name,"HoldBottomCapAnimationIsNoteColor"); m_bAnimationIsNoteColor[PART_HOLD_TOP_CAP] =NOTESKIN->GetMetricB(skin,name,"HoldTopCapAnimationIsNoteColor");
m_bHoldTailAnimationIsNoteColor = NOTESKIN->GetMetricB(skin,name,"HoldTailAnimationIsNoteColor"); m_bAnimationIsNoteColor[PART_HOLD_BODY] = NOTESKIN->GetMetricB(skin,name,"HoldBodyAnimationIsNoteColor");
m_bAnimationIsNoteColor[PART_HOLD_BOTTOM_CAP] = NOTESKIN->GetMetricB(skin,name,"HoldBottomCapAnimationIsNoteColor");
m_bAnimationIsNoteColor[PART_HOLD_TAIL] = NOTESKIN->GetMetricB(skin,name,"HoldTailAnimationIsNoteColor");
m_bHoldHeadIsAboveWavyParts = NOTESKIN->GetMetricB(skin,name,"HoldHeadIsAboveWavyParts"); m_bHoldHeadIsAboveWavyParts = NOTESKIN->GetMetricB(skin,name,"HoldHeadIsAboveWavyParts");
m_bHoldTailIsAboveWavyParts = NOTESKIN->GetMetricB(skin,name,"HoldTailIsAboveWavyParts"); m_bHoldTailIsAboveWavyParts = NOTESKIN->GetMetricB(skin,name,"HoldTailIsAboveWavyParts");
m_iStartDrawingHoldBodyOffsetFromHead = NOTESKIN->GetMetricI(skin,name,"StartDrawingHoldBodyOffsetFromHead"); m_iStartDrawingHoldBodyOffsetFromHead = NOTESKIN->GetMetricI(skin,name,"StartDrawingHoldBodyOffsetFromHead");
@@ -157,7 +155,7 @@ void NoteDisplay::Load( int iColNum, PlayerNumber pn, CString NoteSkin, float fY
sNoteType[i] = NoteTypeToString( (NoteType)i ); sNoteType[i] = NoteTypeToString( (NoteType)i );
if( cache->m_bTapNoteAnimationIsNoteColor ) if( cache->m_bAnimationIsNoteColor[PART_TAP] )
{ {
for( int i=0; i<NOTE_COLOR_IMAGES; i++ ) for( int i=0; i<NOTE_COLOR_IMAGES; i++ )
m_pTapNote[i] = MakeActor( NOTESKIN->GetPathToFromNoteSkinAndButton(NoteSkin, Button, "tap note "+sNoteType[i]) ); m_pTapNote[i] = MakeActor( NOTESKIN->GetPathToFromNoteSkinAndButton(NoteSkin, Button, "tap note "+sNoteType[i]) );
@@ -167,7 +165,7 @@ void NoteDisplay::Load( int iColNum, PlayerNumber pn, CString NoteSkin, float fY
m_pTapNote[0] = MakeActor( NOTESKIN->GetPathToFromNoteSkinAndButton(NoteSkin, Button, "tap note") ); m_pTapNote[0] = MakeActor( NOTESKIN->GetPathToFromNoteSkinAndButton(NoteSkin, Button, "tap note") );
} }
if( cache->m_bTapAdditionAnimationIsNoteColor ) if( cache->m_bAnimationIsNoteColor[PART_ADDITION] )
{ {
for( int i=0; i<NOTE_COLOR_IMAGES; i++ ) for( int i=0; i<NOTE_COLOR_IMAGES; i++ )
m_pTapAddition[i] = MakeActor( NOTESKIN->GetPathToFromNoteSkinAndButton(NoteSkin, Button, "tap addition "+sNoteType[i]) ); m_pTapAddition[i] = MakeActor( NOTESKIN->GetPathToFromNoteSkinAndButton(NoteSkin, Button, "tap addition "+sNoteType[i]) );
@@ -179,7 +177,7 @@ void NoteDisplay::Load( int iColNum, PlayerNumber pn, CString NoteSkin, float fY
m_pTapMine = MakeActor( NOTESKIN->GetPathToFromNoteSkinAndButton(NoteSkin, Button, "tap mine") ); m_pTapMine = MakeActor( NOTESKIN->GetPathToFromNoteSkinAndButton(NoteSkin, Button, "tap mine") );
if( cache->m_bHoldHeadAnimationIsNoteColor ) if( cache->m_bAnimationIsNoteColor[PART_HOLD_HEAD] )
{ {
for( int i=0; i<NOTE_COLOR_IMAGES; i++ ) for( int i=0; i<NOTE_COLOR_IMAGES; i++ )
{ {
@@ -193,7 +191,7 @@ void NoteDisplay::Load( int iColNum, PlayerNumber pn, CString NoteSkin, float fY
m_pHoldHeadInactive[0] = MakeActor( NOTESKIN->GetPathToFromNoteSkinAndButton(NoteSkin, Button, "hold head inactive") ); m_pHoldHeadInactive[0] = MakeActor( NOTESKIN->GetPathToFromNoteSkinAndButton(NoteSkin, Button, "hold head inactive") );
} }
if( cache->m_bHoldTopCapAnimationIsNoteColor ) if( cache->m_bAnimationIsNoteColor[PART_HOLD_TOP_CAP] )
{ {
for( int i=0; i<NOTE_COLOR_IMAGES; i++ ) for( int i=0; i<NOTE_COLOR_IMAGES; i++ )
{ {
@@ -207,7 +205,7 @@ void NoteDisplay::Load( int iColNum, PlayerNumber pn, CString NoteSkin, float fY
m_sprHoldTopCapInactive[0].Load( NOTESKIN->GetPathToFromNoteSkinAndButton(NoteSkin, Button, "hold topcap inactive") ); m_sprHoldTopCapInactive[0].Load( NOTESKIN->GetPathToFromNoteSkinAndButton(NoteSkin, Button, "hold topcap inactive") );
} }
if( cache->m_bHoldBodyAnimationIsNoteColor ) if( cache->m_bAnimationIsNoteColor[PART_HOLD_BODY] )
{ {
for( int i=0; i<NOTE_COLOR_IMAGES; i++ ) for( int i=0; i<NOTE_COLOR_IMAGES; i++ )
{ {
@@ -221,7 +219,7 @@ void NoteDisplay::Load( int iColNum, PlayerNumber pn, CString NoteSkin, float fY
m_sprHoldBodyInactive[0].Load( NOTESKIN->GetPathToFromNoteSkinAndButton(NoteSkin, Button, "hold body inactive") ); m_sprHoldBodyInactive[0].Load( NOTESKIN->GetPathToFromNoteSkinAndButton(NoteSkin, Button, "hold body inactive") );
} }
if( cache->m_bHoldBottomCapAnimationIsNoteColor ) if( cache->m_bAnimationIsNoteColor[PART_HOLD_BOTTOM_CAP] )
{ {
for( int i=0; i<NOTE_COLOR_IMAGES; i++ ) for( int i=0; i<NOTE_COLOR_IMAGES; i++ )
{ {
@@ -235,7 +233,7 @@ void NoteDisplay::Load( int iColNum, PlayerNumber pn, CString NoteSkin, float fY
m_sprHoldBottomCapInactive[0].Load( NOTESKIN->GetPathToFromNoteSkinAndButton(NoteSkin, Button, "hold bottomcap inactive") ); m_sprHoldBottomCapInactive[0].Load( NOTESKIN->GetPathToFromNoteSkinAndButton(NoteSkin, Button, "hold bottomcap inactive") );
} }
if( cache->m_bHoldTailAnimationIsNoteColor ) if( cache->m_bAnimationIsNoteColor[PART_HOLD_TAIL] )
{ {
for( int i=0; i<NOTE_COLOR_IMAGES; i++ ) for( int i=0; i<NOTE_COLOR_IMAGES; i++ )
{ {
@@ -295,7 +293,7 @@ void NoteDisplay::SetActiveFrame( float fNoteBeat, Actor &actorToSet, float fAni
Actor * NoteDisplay::GetTapNoteActor( float fNoteBeat ) Actor * NoteDisplay::GetTapNoteActor( float fNoteBeat )
{ {
NoteType nt = NoteType(0); NoteType nt = NoteType(0);
if( cache->m_bTapNoteAnimationIsNoteColor ) if( cache->m_bAnimationIsNoteColor[PART_TAP] )
nt = BeatToNoteType( fNoteBeat ); nt = BeatToNoteType( fNoteBeat );
// NOTE_TYPE_INVALID is 192nds at this point. // NOTE_TYPE_INVALID is 192nds at this point.
if( nt == NOTE_TYPE_INVALID ) if( nt == NOTE_TYPE_INVALID )
@@ -307,9 +305,9 @@ Actor * NoteDisplay::GetTapNoteActor( float fNoteBeat )
SetActiveFrame( SetActiveFrame(
fNoteBeat, fNoteBeat,
*pActorOut, *pActorOut,
cache->m_fTapNoteAnimationLengthInBeats, cache->m_fAnimationLengthInBeats[PART_TAP],
cache->m_bTapNoteAnimationIsVivid, cache->m_bAnimationIsVivid[PART_TAP],
cache->m_bTapNoteAnimationIsNoteColor ); cache->m_bAnimationIsNoteColor[PART_TAP] );
return pActorOut; return pActorOut;
} }
@@ -317,7 +315,7 @@ Actor * NoteDisplay::GetTapNoteActor( float fNoteBeat )
Actor * NoteDisplay::GetTapAdditionActor( float fNoteBeat ) Actor * NoteDisplay::GetTapAdditionActor( float fNoteBeat )
{ {
NoteType nt = NoteType(0); NoteType nt = NoteType(0);
if( cache->m_bTapAdditionAnimationIsNoteColor ) if( cache->m_bAnimationIsNoteColor[PART_ADDITION] )
nt = BeatToNoteType( fNoteBeat ); nt = BeatToNoteType( fNoteBeat );
// NOTE_TYPE_INVALID is 192nds at this point. // NOTE_TYPE_INVALID is 192nds at this point.
if( nt == NOTE_TYPE_INVALID ) if( nt == NOTE_TYPE_INVALID )
@@ -329,9 +327,9 @@ Actor * NoteDisplay::GetTapAdditionActor( float fNoteBeat )
SetActiveFrame( SetActiveFrame(
fNoteBeat, fNoteBeat,
*pActorOut, *pActorOut,
cache->m_fTapAdditionAnimationLengthInBeats, cache->m_fAnimationLengthInBeats[PART_ADDITION],
cache->m_bTapAdditionAnimationIsVivid, cache->m_bAnimationIsVivid[PART_ADDITION],
cache->m_bTapAdditionAnimationIsNoteColor ); cache->m_bAnimationIsNoteColor[PART_ADDITION] );
return pActorOut; return pActorOut;
} }
@@ -341,8 +339,8 @@ Actor * NoteDisplay::GetTapMineActor( float fNoteBeat )
SetActiveFrame( SetActiveFrame(
fNoteBeat, fNoteBeat,
*m_pTapMine, *m_pTapMine,
cache->m_fTapMineAnimationLengthInBeats, cache->m_fAnimationLengthInBeats[PART_MINE],
cache->m_bTapMineAnimationIsVivid, cache->m_bAnimationIsVivid[PART_MINE],
false ); false );
return m_pTapMine; return m_pTapMine;
@@ -351,7 +349,7 @@ Actor * NoteDisplay::GetTapMineActor( float fNoteBeat )
Sprite * NoteDisplay::GetHoldTopCapSprite( float fNoteBeat, bool bIsBeingHeld ) Sprite * NoteDisplay::GetHoldTopCapSprite( float fNoteBeat, bool bIsBeingHeld )
{ {
NoteType nt = NoteType(0); NoteType nt = NoteType(0);
if( cache->m_bHoldTopCapAnimationIsNoteColor ) if( cache->m_bAnimationIsNoteColor[PART_HOLD_TOP_CAP] )
nt = BeatToNoteType( fNoteBeat ); nt = BeatToNoteType( fNoteBeat );
// NOTE_TYPE_INVALID is 192nds at this point. // NOTE_TYPE_INVALID is 192nds at this point.
if( nt == NOTE_TYPE_INVALID ) if( nt == NOTE_TYPE_INVALID )
@@ -363,9 +361,9 @@ Sprite * NoteDisplay::GetHoldTopCapSprite( float fNoteBeat, bool bIsBeingHeld )
SetActiveFrame( SetActiveFrame(
fNoteBeat, fNoteBeat,
*pSpriteOut, *pSpriteOut,
cache->m_fHoldTopCapAnimationLengthInBeats, cache->m_fAnimationLengthInBeats[PART_HOLD_TOP_CAP],
cache->m_bHoldTopCapAnimationIsVivid, cache->m_bAnimationIsVivid[PART_HOLD_TOP_CAP],
cache->m_bHoldTopCapAnimationIsNoteColor ); cache->m_bAnimationIsNoteColor[PART_HOLD_TOP_CAP] );
return pSpriteOut; return pSpriteOut;
} }
@@ -373,7 +371,7 @@ Sprite * NoteDisplay::GetHoldTopCapSprite( float fNoteBeat, bool bIsBeingHeld )
Sprite * NoteDisplay::GetHoldBottomCapSprite( float fNoteBeat, bool bIsBeingHeld ) Sprite * NoteDisplay::GetHoldBottomCapSprite( float fNoteBeat, bool bIsBeingHeld )
{ {
NoteType nt = NoteType(0); NoteType nt = NoteType(0);
if( cache->m_bHoldBottomCapAnimationIsNoteColor ) if( cache->m_bAnimationIsNoteColor[PART_HOLD_BOTTOM_CAP] )
nt = BeatToNoteType( fNoteBeat ); nt = BeatToNoteType( fNoteBeat );
// NOTE_TYPE_INVALID is 192nds at this point. // NOTE_TYPE_INVALID is 192nds at this point.
if( nt == NOTE_TYPE_INVALID ) if( nt == NOTE_TYPE_INVALID )
@@ -385,9 +383,9 @@ Sprite * NoteDisplay::GetHoldBottomCapSprite( float fNoteBeat, bool bIsBeingHeld
SetActiveFrame( SetActiveFrame(
fNoteBeat, fNoteBeat,
*pSpriteOut, *pSpriteOut,
cache->m_fHoldBottomCapAnimationLengthInBeats, cache->m_fAnimationLengthInBeats[PART_HOLD_BOTTOM_CAP],
cache->m_bHoldBottomCapAnimationIsVivid, cache->m_bAnimationIsVivid[PART_HOLD_BOTTOM_CAP],
cache->m_bHoldBottomCapAnimationIsNoteColor ); cache->m_bAnimationIsNoteColor[PART_HOLD_BOTTOM_CAP] );
return pSpriteOut; return pSpriteOut;
} }
@@ -396,7 +394,7 @@ Sprite * NoteDisplay::GetHoldBottomCapSprite( float fNoteBeat, bool bIsBeingHeld
Actor* NoteDisplay::GetHoldHeadActor( float fNoteBeat, bool bIsBeingHeld ) Actor* NoteDisplay::GetHoldHeadActor( float fNoteBeat, bool bIsBeingHeld )
{ {
NoteType nt = NoteType(0); NoteType nt = NoteType(0);
if( cache->m_bHoldHeadAnimationIsNoteColor ) if( cache->m_bAnimationIsNoteColor[PART_HOLD_HEAD] )
nt = BeatToNoteType( fNoteBeat ); nt = BeatToNoteType( fNoteBeat );
// NOTE_TYPE_INVALID is 192nds at this point. // NOTE_TYPE_INVALID is 192nds at this point.
if( nt == NOTE_TYPE_INVALID ) if( nt == NOTE_TYPE_INVALID )
@@ -408,9 +406,9 @@ Actor* NoteDisplay::GetHoldHeadActor( float fNoteBeat, bool bIsBeingHeld )
SetActiveFrame( SetActiveFrame(
fNoteBeat, fNoteBeat,
*pActorOut, *pActorOut,
cache->m_fHoldHeadAnimationLengthInBeats, cache->m_fAnimationLengthInBeats[PART_HOLD_HEAD],
cache->m_bHoldHeadAnimationIsVivid, cache->m_bAnimationIsVivid[PART_HOLD_HEAD],
cache->m_bHoldHeadAnimationIsNoteColor ); cache->m_bAnimationIsNoteColor[PART_HOLD_HEAD] );
return pActorOut; return pActorOut;
} }
@@ -418,7 +416,7 @@ Actor* NoteDisplay::GetHoldHeadActor( float fNoteBeat, bool bIsBeingHeld )
Sprite *NoteDisplay::GetHoldBodySprite( float fNoteBeat, bool bIsBeingHeld ) Sprite *NoteDisplay::GetHoldBodySprite( float fNoteBeat, bool bIsBeingHeld )
{ {
NoteType nt = NoteType(0); NoteType nt = NoteType(0);
if( cache->m_bHoldBodyAnimationIsNoteColor ) if( cache->m_bAnimationIsNoteColor[PART_HOLD_BODY] )
nt = BeatToNoteType( fNoteBeat ); nt = BeatToNoteType( fNoteBeat );
// NOTE_TYPE_INVALID is 192nds at this point. // NOTE_TYPE_INVALID is 192nds at this point.
if( nt == NOTE_TYPE_INVALID ) if( nt == NOTE_TYPE_INVALID )
@@ -430,9 +428,9 @@ Sprite *NoteDisplay::GetHoldBodySprite( float fNoteBeat, bool bIsBeingHeld )
SetActiveFrame( SetActiveFrame(
fNoteBeat, fNoteBeat,
*pSpriteOut, *pSpriteOut,
cache->m_fHoldBodyAnimationLengthInBeats, cache->m_fAnimationLengthInBeats[PART_HOLD_BODY],
cache->m_bHoldBodyAnimationIsVivid, cache->m_bAnimationIsVivid[PART_HOLD_BODY],
cache->m_bHoldBodyAnimationIsNoteColor ); cache->m_bAnimationIsNoteColor[PART_HOLD_BODY] );
return pSpriteOut; return pSpriteOut;
} }
@@ -440,7 +438,7 @@ Sprite *NoteDisplay::GetHoldBodySprite( float fNoteBeat, bool bIsBeingHeld )
Actor* NoteDisplay::GetHoldTailActor( float fNoteBeat, bool bIsBeingHeld ) Actor* NoteDisplay::GetHoldTailActor( float fNoteBeat, bool bIsBeingHeld )
{ {
NoteType nt = NoteType(0); NoteType nt = NoteType(0);
if( cache->m_bHoldTailAnimationIsNoteColor ) if( cache->m_bAnimationIsNoteColor[PART_HOLD_TAIL] )
nt = BeatToNoteType( fNoteBeat ); nt = BeatToNoteType( fNoteBeat );
// NOTE_TYPE_INVALID is 192nds at this point. // NOTE_TYPE_INVALID is 192nds at this point.
if( nt == NOTE_TYPE_INVALID ) if( nt == NOTE_TYPE_INVALID )
@@ -452,9 +450,9 @@ Actor* NoteDisplay::GetHoldTailActor( float fNoteBeat, bool bIsBeingHeld )
SetActiveFrame( SetActiveFrame(
fNoteBeat, fNoteBeat,
*pActorOut, *pActorOut,
cache->m_fHoldTailAnimationLengthInBeats, cache->m_fAnimationLengthInBeats[PART_HOLD_TAIL],
cache->m_bHoldTailAnimationIsVivid, cache->m_bAnimationIsVivid[PART_HOLD_TAIL],
cache->m_bHoldTailAnimationIsNoteColor ); cache->m_bAnimationIsNoteColor[PART_HOLD_TAIL] );
return pActorOut; return pActorOut;
} }