#include "global.h" #include "ReceptorArrowRow.h" #include "RageUtil.h" #include "GameConstantsAndTypes.h" #include "PrefsManager.h" #include "ArrowEffects.h" #include "GameState.h" #include "PrefsManager.h" #include "NoteFieldPositioning.h" ReceptorArrowRow::ReceptorArrowRow() { m_iNumCols = 0; } void ReceptorArrowRow::Load( PlayerNumber pn, CString NoteSkin, float fYReverseOffset ) { m_PlayerNumber = pn; m_fYReverseOffsetPixels = fYReverseOffset; const Style* pStyle = GAMESTATE->GetCurrentStyle(); m_iNumCols = pStyle->m_iColsPerPlayer; for( int c=0; cm_CurrentPlayerOptions[m_PlayerNumber].m_fDark) ); // set arrow XYZ const float fX = ArrowGetXPos( m_PlayerNumber, c, 0 ); const float fY = ArrowGetYPos( m_PlayerNumber, c, 0, m_fYReverseOffsetPixels ); const float fZ = ArrowGetZPos( m_PlayerNumber, c, 0 ); m_ReceptorArrow[c].SetX( fX ); m_ReceptorArrow[c].SetY( fY ); m_ReceptorArrow[c].SetZ( fZ ); const float fZoom = ArrowGetZoom( m_PlayerNumber ); m_ReceptorArrow[c].SetZoom( fZoom ); } } void ReceptorArrowRow::DrawPrimitives() { for( int c=0; c= 0 && iCol < m_iNumCols ); m_ReceptorArrow[iCol].Step( score ); } void ReceptorArrowRow::SetPressed( int iCol ) { ASSERT( iCol >= 0 && iCol < m_iNumCols ); m_ReceptorArrow[iCol].SetPressed(); } void ReceptorArrowRow::CopyTweening( const ReceptorArrowRow &from ) { for( int c=0; c