diff --git a/stepmania/src/Sprite.cpp b/stepmania/src/Sprite.cpp index d00ec3ae43..d1a73c37ee 100644 --- a/stepmania/src/Sprite.cpp +++ b/stepmania/src/Sprite.cpp @@ -233,8 +233,7 @@ void Sprite::DrawPrimitives() } else { - unsigned int uFrameNo = m_iStateToFrame[m_iCurState]; - const RectF *pTexCoordRect = m_pTexture->GetTextureCoordRect( uFrameNo ); + const RectF *pTexCoordRect = GetCurrentTextureCoordRect(); v[0].t = RageVector2( pTexCoordRect->left, pTexCoordRect->top ); // top left v[1].t = RageVector2( pTexCoordRect->left, pTexCoordRect->bottom ); // bottom left @@ -354,6 +353,12 @@ void Sprite::SetCustomImageCoords( float fImageCoords[8] ) // order: bottom left SetCustomTextureCoords( fImageCoords ); } +const RectF *Sprite::GetCurrentTextureCoordRect() const +{ + unsigned int uFrameNo = m_iStateToFrame[m_iCurState]; + return m_pTexture->GetTextureCoordRect( uFrameNo ); +} + void Sprite::StopUsingCustomCoords() { m_bUsingCustomTexCoords = false; diff --git a/stepmania/src/Sprite.h b/stepmania/src/Sprite.h index f594aefb55..64d29371a8 100644 --- a/stepmania/src/Sprite.h +++ b/stepmania/src/Sprite.h @@ -64,6 +64,7 @@ public: void SetCustomSourceRect( const RectF &rectSourceCoords ); // in source pixel space void SetCustomImageRect( RectF rectImageCoords ); // in image pixel space void SetCustomImageCoords( float fImageCoords[8] ); + const RectF *GetCurrentTextureCoordRect() const; void StopUsingCustomCoords(); protected: