From 26dc376eeb029ce2cc2bf380ae9ca00bbbfabd4f Mon Sep 17 00:00:00 2001 From: Steve Checkoway Date: Wed, 2 Jan 2008 10:40:37 +0000 Subject: [PATCH] Make InitState() reset Sprite state. Make movies skip the first update. Fixes background movies play too quickly at first. --- stepmania/src/Sprite.cpp | 10 +++++++++- stepmania/src/Sprite.h | 2 ++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/stepmania/src/Sprite.cpp b/stepmania/src/Sprite.cpp index 4d2c738fd5..c76602b59e 100644 --- a/stepmania/src/Sprite.cpp +++ b/stepmania/src/Sprite.cpp @@ -23,7 +23,7 @@ Sprite::Sprite() m_iCurState = 0; m_fSecsIntoState = 0.0f; m_bUsingCustomTexCoords = false; - m_bSkipNextUpdate = false; + m_bSkipNextUpdate = true; m_EffectMode = EffectMode_Normal; m_fRememberedClipWidth = -1; @@ -62,6 +62,14 @@ Sprite::Sprite( const Sprite &cpy ): m_pTexture = NULL; } +void Sprite::InitState() +{ + Actor::InitState(); + m_iCurState = 0; + m_fSecsIntoState = 0.0f; + m_bSkipNextUpdate = true; +} + RageTextureID Sprite::SongBGTexture( RageTextureID ID ) { ID.bMipMaps = true; diff --git a/stepmania/src/Sprite.h b/stepmania/src/Sprite.h index eaffdc321a..c1de45404e 100644 --- a/stepmania/src/Sprite.h +++ b/stepmania/src/Sprite.h @@ -14,6 +14,8 @@ public: Sprite(); Sprite( const Sprite &cpy ); virtual ~Sprite(); + + virtual void InitState(); void LoadFromNode( const XNode* pNode ); virtual Sprite *Copy() const;