From 7238de20aaa6a35d01a106603582941f06a6de09 Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Fri, 12 Sep 2003 02:44:14 +0000 Subject: [PATCH] revert (better idea) --- stepmania/src/NoteDisplay.cpp | 265 ++++++++++++++++------------------ stepmania/src/NoteDisplay.h | 13 ++ 2 files changed, 135 insertions(+), 143 deletions(-) diff --git a/stepmania/src/NoteDisplay.cpp b/stepmania/src/NoteDisplay.cpp index ddd96b9caa..55ce5daea0 100644 --- a/stepmania/src/NoteDisplay.cpp +++ b/stepmania/src/NoteDisplay.cpp @@ -105,50 +105,10 @@ struct NoteMetricCache_t { float m_fHoldNGGrayPercent; bool m_bUseLighting; - Actor* m_pTapNote[NOTE_COLOR_IMAGES]; - Actor* m_pTapAddition; - Actor* m_pTapMine; - Actor* m_pHoldHeadActive[NOTE_COLOR_IMAGES]; - Actor* m_pHoldHeadInactive[NOTE_COLOR_IMAGES]; - Sprite m_sprHoldTopCapActive[NOTE_COLOR_IMAGES]; - Sprite m_sprHoldTopCapInactive[NOTE_COLOR_IMAGES]; - Sprite m_sprHoldBodyActive[NOTE_COLOR_IMAGES]; - Sprite m_sprHoldBodyInactive[NOTE_COLOR_IMAGES]; - Sprite m_sprHoldBottomCapActive[NOTE_COLOR_IMAGES]; - Sprite m_sprHoldBottomCapInactive[NOTE_COLOR_IMAGES]; - Actor* m_pHoldTailActive[NOTE_COLOR_IMAGES]; - Actor* m_pHoldTailInactive[NOTE_COLOR_IMAGES]; - - NoteMetricCache_t(); - ~NoteMetricCache_t(); - void Load( int iColNum, PlayerNumber pn, const CString &name ); + void Load(PlayerNumber pn, const CString &name); } *NoteMetricCache; -NoteMetricCache_t::NoteMetricCache_t() -{ - for( int i=0; iGetPathTo(pn, name, "tap note "+sNoteType[i]) ); - } - else - { - m_pTapNote[0] = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, name, "tap note") ); - } - - m_pTapAddition = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, name, "tap addition") ); - - m_pTapMine = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, name, "tap mine") ); - - if( m_bHoldHeadAnimationIsNoteColor ) - { - for( int i=0; iGetPathTo(pn, name, "hold head active "+sNoteType[i]) ); - m_pHoldHeadInactive[i] = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, name, "hold head inactive "+sNoteType[i]) ); - } - } - else - { - m_pHoldHeadActive[0] = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, name, "hold head active") ); - m_pHoldHeadInactive[0] = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, name, "hold head inactive") ); - } - - if( m_bHoldTopCapAnimationIsNoteColor ) - { - for( int i=0; iGetPathTo(pn, name, "hold topcap active "+sNoteType[i]) ); - m_sprHoldTopCapInactive[i].Load( NOTESKIN->GetPathTo(pn, name, "hold topcap inactive "+sNoteType[i]) ); - } - } - else - { - m_sprHoldTopCapActive[0].Load( NOTESKIN->GetPathTo(pn, name, "hold topcap active") ); - m_sprHoldTopCapInactive[0].Load( NOTESKIN->GetPathTo(pn, name, "hold topcap inactive") ); - } - - if( m_bHoldBodyAnimationIsNoteColor ) - { - for( int i=0; iGetPathTo(pn, name, "hold body active "+sNoteType[i]) ); - m_sprHoldBodyInactive[i].Load( NOTESKIN->GetPathTo(pn, name, "hold body inactive "+sNoteType[i]) ); - } - } - else - { - m_sprHoldBodyActive[0].Load( NOTESKIN->GetPathTo(pn, name, "hold body active") ); - m_sprHoldBodyInactive[0].Load( NOTESKIN->GetPathTo(pn, name, "hold body inactive") ); - } - - if( m_bHoldBottomCapAnimationIsNoteColor ) - { - for( int i=0; iGetPathTo(pn, name, "hold bottomcap active "+sNoteType[i]) ); - m_sprHoldBottomCapInactive[i].Load( NOTESKIN->GetPathTo(pn, name, "hold bottomcap inactive "+sNoteType[i]) ); - } - } - else - { - m_sprHoldBottomCapActive[0].Load( NOTESKIN->GetPathTo(pn, name, "hold bottomcap active") ); - m_sprHoldBottomCapInactive[0].Load( NOTESKIN->GetPathTo(pn, name, "hold bottomcap inactive") ); - } - - if( m_bHoldTailAnimationIsNoteColor ) - { - for( int i=0; iGetPathTo(pn, name, "hold tail active "+sNoteType[i]) ); - m_pHoldTailInactive[i] = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, name, "hold tail inactive "+sNoteType[i]) ); - } - } - else - { - m_pHoldTailActive[0] = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, name, "hold tail active") ); - m_pHoldTailInactive[0] = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, name, "hold tail inactive") ); - } } NoteDisplay::NoteDisplay() { + for( int i=0; iLoad( iColNum, pn, Button ); + cache->Load( pn, Button ); + + // Look up note names once and store them here. + CString sNoteType[ NOTE_COLOR_IMAGES ]; + for( int i=0; im_bTapNoteAnimationIsNoteColor ) + { + for( int i=0; iGetPathTo(pn, Button, "tap note "+sNoteType[i]) ); + } + else + { + m_pTapNote[0] = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, Button, "tap note") ); + } + + m_pTapAddition = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, Button, "tap addition") ); + + m_pTapMine = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, Button, "tap mine") ); + + if( cache->m_bHoldHeadAnimationIsNoteColor ) + { + for( int i=0; iGetPathTo(pn, Button, "hold head active "+sNoteType[i]) ); + m_pHoldHeadInactive[i] = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, Button, "hold head inactive "+sNoteType[i]) ); + } + } + else + { + m_pHoldHeadActive[0] = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, Button, "hold head active") ); + m_pHoldHeadInactive[0] = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, Button, "hold head inactive") ); + } + + if( cache->m_bHoldTopCapAnimationIsNoteColor ) + { + for( int i=0; iGetPathTo(pn, Button, "hold topcap active "+sNoteType[i]) ); + m_sprHoldTopCapInactive[i].Load( NOTESKIN->GetPathTo(pn, Button, "hold topcap inactive "+sNoteType[i]) ); + } + } + else + { + m_sprHoldTopCapActive[0].Load( NOTESKIN->GetPathTo(pn, Button, "hold topcap active") ); + m_sprHoldTopCapInactive[0].Load( NOTESKIN->GetPathTo(pn, Button, "hold topcap inactive") ); + } + + if( cache->m_bHoldBodyAnimationIsNoteColor ) + { + for( int i=0; iGetPathTo(pn, Button, "hold body active "+sNoteType[i]) ); + m_sprHoldBodyInactive[i].Load( NOTESKIN->GetPathTo(pn, Button, "hold body inactive "+sNoteType[i]) ); + } + } + else + { + m_sprHoldBodyActive[0].Load( NOTESKIN->GetPathTo(pn, Button, "hold body active") ); + m_sprHoldBodyInactive[0].Load( NOTESKIN->GetPathTo(pn, Button, "hold body inactive") ); + } + + if( cache->m_bHoldBottomCapAnimationIsNoteColor ) + { + for( int i=0; iGetPathTo(pn, Button, "hold bottomcap active "+sNoteType[i]) ); + m_sprHoldBottomCapInactive[i].Load( NOTESKIN->GetPathTo(pn, Button, "hold bottomcap inactive "+sNoteType[i]) ); + } + } + else + { + m_sprHoldBottomCapActive[0].Load( NOTESKIN->GetPathTo(pn, Button, "hold bottomcap active") ); + m_sprHoldBottomCapInactive[0].Load( NOTESKIN->GetPathTo(pn, Button, "hold bottomcap inactive") ); + } + + if( cache->m_bHoldTailAnimationIsNoteColor ) + { + for( int i=0; iGetPathTo(pn, Button, "hold tail active "+sNoteType[i]) ); + m_pHoldTailInactive[i] = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, Button, "hold tail inactive "+sNoteType[i]) ); + } + } + else + { + m_pHoldTailActive[0] = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, Button, "hold tail active") ); + m_pHoldTailInactive[0] = MakeModelOrSprite( NOTESKIN->GetPathTo(pn, Button, "hold tail inactive") ); + } } @@ -320,7 +299,7 @@ Actor * NoteDisplay::GetTapNoteActor( float fNoteBeat ) nt = BeatToNoteType( fNoteBeat ); if( nt == NOTE_TYPE_INVALID ) nt = NOTE_TYPE_32ND; - Actor *pActorOut = cache->m_pTapNote[nt]; + Actor *pActorOut = m_pTapNote[nt]; SetActiveFrame( fNoteBeat, @@ -336,24 +315,24 @@ Actor * NoteDisplay::GetTapAdditionActor( float fNoteBeat ) { SetActiveFrame( fNoteBeat, - *cache->m_pTapAddition, + *m_pTapAddition, cache->m_fTapAdditionAnimationLengthInBeats, cache->m_bTapAdditionAnimationIsVivid, false ); - return cache->m_pTapAddition; + return m_pTapAddition; } Actor * NoteDisplay::GetTapMineActor( float fNoteBeat ) { SetActiveFrame( fNoteBeat, - *cache->m_pTapMine, + *m_pTapMine, cache->m_fTapMineAnimationLengthInBeats, cache->m_bTapMineAnimationIsVivid, false ); - return cache->m_pTapMine; + return m_pTapMine; } Sprite * NoteDisplay::GetHoldTopCapSprite( float fNoteBeat, bool bActive ) @@ -364,7 +343,7 @@ Sprite * NoteDisplay::GetHoldTopCapSprite( float fNoteBeat, bool bActive ) if( nt == NOTE_TYPE_INVALID ) nt = NOTE_TYPE_32ND; - Sprite *pSpriteOut = bActive ? &cache->m_sprHoldTopCapActive[nt] : &cache->m_sprHoldTopCapInactive[nt]; + Sprite *pSpriteOut = bActive ? &m_sprHoldTopCapActive[nt] : &m_sprHoldTopCapInactive[nt]; SetActiveFrame( fNoteBeat, @@ -384,7 +363,7 @@ Sprite * NoteDisplay::GetHoldBottomCapSprite( float fNoteBeat, bool bActive ) if( nt == NOTE_TYPE_INVALID ) nt = NOTE_TYPE_32ND; - Sprite *pSpriteOut = bActive ? &cache->m_sprHoldBottomCapActive[nt] : &cache->m_sprHoldBottomCapInactive[nt]; + Sprite *pSpriteOut = bActive ? &m_sprHoldBottomCapActive[nt] : &m_sprHoldBottomCapInactive[nt]; SetActiveFrame( fNoteBeat, @@ -405,7 +384,7 @@ Actor* NoteDisplay::GetHoldHeadActor( float fNoteBeat, bool bActive ) if( nt == NOTE_TYPE_INVALID ) nt = NOTE_TYPE_32ND; - Actor *pActorOut = bActive ? cache->m_pHoldHeadActive[nt] : cache->m_pHoldHeadInactive[nt]; + Actor *pActorOut = bActive ? m_pHoldHeadActive[nt] : m_pHoldHeadInactive[nt]; SetActiveFrame( fNoteBeat, @@ -425,7 +404,7 @@ Sprite *NoteDisplay::GetHoldBodySprite( float fNoteBeat, bool bActive ) if( nt == NOTE_TYPE_INVALID ) nt = NOTE_TYPE_32ND; - Sprite *pSpriteOut = bActive ? &cache->m_sprHoldBodyActive[nt] : &cache->m_sprHoldBodyInactive[nt]; + Sprite *pSpriteOut = bActive ? &m_sprHoldBodyActive[nt] : &m_sprHoldBodyInactive[nt]; SetActiveFrame( fNoteBeat, @@ -445,7 +424,7 @@ Actor* NoteDisplay::GetHoldTailActor( float fNoteBeat, bool bActive ) if( nt == NOTE_TYPE_INVALID ) nt = NOTE_TYPE_32ND; - Actor *pActorOut = bActive ? cache->m_pHoldTailActive[nt] : cache->m_pHoldTailInactive[nt]; + Actor *pActorOut = bActive ? m_pHoldTailActive[nt] : m_pHoldTailInactive[nt]; SetActiveFrame( fNoteBeat, diff --git a/stepmania/src/NoteDisplay.h b/stepmania/src/NoteDisplay.h index 388e49d186..ddecf2b13d 100644 --- a/stepmania/src/NoteDisplay.h +++ b/stepmania/src/NoteDisplay.h @@ -55,6 +55,19 @@ protected: #define NOTE_COLOR_IMAGES 6 + Actor* m_pTapNote[NOTE_COLOR_IMAGES]; + Actor* m_pTapAddition; + Actor* m_pTapMine; + Actor* m_pHoldHeadActive[NOTE_COLOR_IMAGES]; + Actor* m_pHoldHeadInactive[NOTE_COLOR_IMAGES]; + Sprite m_sprHoldTopCapActive[NOTE_COLOR_IMAGES]; + Sprite m_sprHoldTopCapInactive[NOTE_COLOR_IMAGES]; + Sprite m_sprHoldBodyActive[NOTE_COLOR_IMAGES]; + Sprite m_sprHoldBodyInactive[NOTE_COLOR_IMAGES]; + Sprite m_sprHoldBottomCapActive[NOTE_COLOR_IMAGES]; + Sprite m_sprHoldBottomCapInactive[NOTE_COLOR_IMAGES]; + Actor* m_pHoldTailActive[NOTE_COLOR_IMAGES]; + Actor* m_pHoldTailInactive[NOTE_COLOR_IMAGES]; float m_fYReverseOffsetPixels; };